Pushing custom application config parameters to device

Hello all,

I’m a little confused about how I should send custom configuration data through AirVantage to target devices (MangOH red in this case).

From the sending side, we register a callback to handle database changes that devices need to know about (e.g change to the photoSchedule node needs to be pushed to device). I’ve been using the AirVantage REST API and Node library for system detail lookup and was planning on using it for this purpose. A call to the settings API seems appropriate but it seems you need to provide a specific application revision. How would this work in terms of updating apps on the target device? Would this need to be redefined each time we update an app on the target or am I miss interpreting something?

It also seems a data model is required for creating and editing settings? I explored the AirVantage web app for a bit trying to find a place to define this, but honestly I got pretty lost trying to untangle this.

From the receiving perspective, how do I get at this data? Does one of the AirVantage services running on the device pull it down and stash it somewhere, or do I need to use the DataRouter app to pull this down myself? I was expecting this to be somewhere in le_avdata or le_avc but was unable to find anything appropriate.

I know this is a pretty huge problem space, so please let me know if any additional details would be useful.

Thanks in advance!

To send setting data I use Template in AirVantage portal.

I use AssetData « setting » type in my apps.

If you want a example I can write a small tuto in this topic.

1 Like

Hey Francis,

This would be very useful and much appreciated :clap:t3:.

Thanks!

I will do that in the day nick.

1 Like

I m out of office for the moment.
I will try on Saturday.

Hello all,

I think I’ve found a suitable solution for our use case. I followed along with the data exchange tutorial and got things working. It took me a while to figure out that devices required an asset path using / seperators while the back end requires . seperators prefixed with the app name (e.g /camera1/hours/1 becomes appname.camera1.hours.1).

Thanks for the help @Francis.duhaut. I’m sure your tutorial would be a valuable contribution if you have the bandwidth to share, but please know we are unblocked on this issue at the moment.

Hello nick

Sorry for my late answer but I was not able to take data from my server due to travel.

You’re right for the . instead of / with legato 17.11 .

Have a look to NameSpace if you have pb with data path

Francis