1

Notifications on parameter value change when values are missing

Topic: Notifications on parameter value change when values are missing

When creating a notification which triggers on a value change in a message parameter, we are finding that the notification is triggered in cases where data is not available/reported by the device.

For example:
09:00:00 Ignition Off
09:00:05 Ignition Off
09:00:10 Ignition On
09:00:15 Ignition On
09:00:20 (no ignition status reported by device, but other parameter values are reported)
09:00:25 Ignition On
09:00:30 Ignition Off

What we expect is that two notifications will be triggered at 09:00:10 (ignition was off and is now on) and at 09:00:30 (ignition was on and is now off.)

What we get though is four notifications - the two described above, plus one at 09:00:20 and 09:00:25.  The point is that the ignition status did not change - the ignition status simply wasn't reported at 09:00:20.

Has anyone else run into similar issues?  Any idea if changing the "Last message only" setting of the engine ignition sensor of the unit would affect these notifications?  If not, then should it use this to setting to use the value from the last message containing such value when checking notification triggers?

2

Notifications on parameter value change when values are missing

Re: Notifications on parameter value change when values are missing

Hi Marc, MarcW
This is a really interesting topic that you have raised.

I have noticed that you ask other partners that work with Wialon whether they experience the same problem and maybe there will still be someone who will share their experience in the future (there is the topic with the same problem here in the forum, but it is in Russian), but I would also like to comment on your post.

The issue you described is a known one. More than a year ago we analyzed this situation and figured out that we can guarantee we know the value of a parameter in the current message, but to understand whether there was a change of status we need to compare it with the previously received value of a parameter. If this value is stored in the previous message, the logic is easy and works perfectly, but if there is no value in the previous message we need a) select more than one previous message for analysis and "search" for this value not in one message, but in N messages - 5, 10, 100, etc, until we find it OR b) consider the absence of a value in the message as a change of status. I think it is clear that now we have the second option implemented.

It is hard to say why it is the second option that we have chosen for development, but I just assume it is because this "search" of the previous value can overload the processing of notifications (or we need to limit it to some number of messages we analyze and this limit will not allow us to solve the problem). Besides what you report is not a rare situation that's why we might not have considered it as a business case to handle. 

We will collect other cases of this issue and I believe that will make a positive decision regarding the necessity of such an enhancement.

Marc, could you please say whether you notice this issue often (the parameter value is not received in the message)? Can it be somehow connected with the hardware you use? Maybe you have other ideas why this happens? I would appreciate you sharing.

Maria Starikova,
Wialon Hosting Product manager, Gurtam
3

Notifications on parameter value change when values are missing

Re: Notifications on parameter value change when values are missing

Maria,

This is definitely connected to the hardware we use.  Some of the telematics devices send certain values only occasionally, not with every unit message.  For example, an engine coolant temperature might be sent only once every few minutes, but location messages may be sent every few seconds.  In my original example in this post, a unit may send ignition status values only occasionally, not with every unit message.

I understand it may be "expensive" to find last value to perform such notifications.  It is possible to see last sensor values in the monitoring panel of Wialon in the hover tooltip for units, and sometimes these take a long time to load, especially if the last values are in messages from hours or days ago.  The solution to both of these seems to be to maintain a "current values" state of all unit sensors for each unit, updated with each incoming unit message.  These "current values" can be retrieved quickly without needing to search an unknown number of previous unit messages.

4

Notifications on parameter value change when values are missing

Re: Notifications on parameter value change when values are missing

Hi, Marc! MarcW

Thank you for feedback.

MarcW wrote:

he solution to both of these seems to be to maintain a "current values" state of all unit sensors for each unit

Yes, you are totally right, this is a good solution which we have also been thinking about. Actually, this can be implemented using our events system. Sensor values already work on events and it should not be difficult to keep the current value via events as well.

The complex part here is the value in the message parameter, where the logic of "finding" the last known value will be different as long as parameter values do not work on the events. Let's see, maybe we can start with sensor values as long as it is quicker.

Maria Starikova,
Wialon Hosting Product manager, Gurtam