In most cases the change is related to the view that is shown on the monitor, but unfortunately the view ID being given in data.FQID.ObjectId is not so easy to relate to anything.
However, the data.FQID.ParentId is the ID of the monitor and you can then quite easily compare that to the IDs of the monitors.
Indeed,
private object VideoWallMessageCommunicationHandler(VideoOS.Platform.Messaging.Message message, FQID destination, FQID sender)
{
var data = message.Data as VideoWallIndicationData;
var action = data.ActionId;
var itemFQID = data.FQID;
string itemKind = null;
if (itemFQID.Kind == Kind.VideoWall)
itemKind = "Smart wall";
else if (itemFQID.Kind == Kind.VideoWallMonitor)
itemKind = "Smart wall monitor";
else if (itemFQID.Kind == Kind.View)
itemKind = "View";
try
{
Item Monitor = VideoOS.Platform.Configuration.Instance.GetItem(itemFQID.ParentId, Kind.VideoWallMonitor);
}
catch (Exception ex)
{
EnvironmentManager.Instance.Log(true, "StackOnEventManagerBackgroundPlugin", ex.Message);
}
return null;
}