You can manage the Tally lights with NDI signals with MLive(MFLive) and MRenderer (MFRenderer) objects to control whether a signal should be on a preview or on a program.
The properties to control it are "ndi_on_program" and "ndi_on_preview". By specifying them on a receiver side the settings are updated on the source side so an operator gets a signal about whether she is on air.
You can set the properties for a receiver MLive (MFLive) object like
MPlatform
myLive.PropsSet("device::ndi_on_program", "true");
myLive.PropsSet("device::ndi_on_preview", "false");
MFormats
myLive.PropsSet("ndi_on_program", "true");
myLive.PropsSet("ndi_on_preview", "false");
And to get the properties on a source MRenderer (MFRenderer) object with a statistics:
string strOnProgram, strOnPreview;
myRenderer.PropsGet("stat::ndi_on_program", out strOnProgram);
myRenderer.PropsGet("stat::ndi_on_preview", out strOnPreview);
The code is valid for both SDKs.