You might be able to trigger a GPI call into DashBoard when your buffer gets cleared but I'll admit that I'm not an expert on what XPression is able to send to DashBoard via RossTalk.
If you can, have XPression send DashBoard a GPI trigger with a state when the buffer is cleared. DashBoard has a global GPI listener you can enable under Window->Preferences and we typically use port 7788 (though it can be configured if that port is already in use).
<abs contexttype="opengear" id="_top" style="">
<meta>
<params>
<param access="1" constrainttype="INT_CHOICE" name="BUTTON_PARAMETER_OID" oid="BUTTON_PARAMETER_OID" precision="0" type="INT32" value="0" widget="toggle">
<constraint key="0">OFF</constraint>
<constraint key="1">ON</constraint>
</param>
</params>
</meta>
<param expand="true" gpi="100" height="111" left="134" oid="BUTTON_PARAMETER_OID" style="style:toggleButton;" top="130" width="210">
<task tasktype="ogscript">if (event && event.getState && event.getState() != null) //IF MY PARAMETER WAS TRIGGERED VIA GPI 100:0 or GPI 100:1
{
if (params.getValue('BUTTON_PARAMETER_OID', 0) != parseInt(event.getState())) //IF THE STATE VALUE (0 or 1) IS DIFFERENT FROM THE PARAMETER VALUE
{
params.setValue('BUTTON_PARAMETER_OID', 0, parseInt(event.getState())); //SET THE PARAMETER VALUE
}
return;
}
//DO MY REGULAR TASK HERE</task>
</param>
<simplegrid height="75" left="115" rows="1" top="277" width="349">
<button buttontype="push" name="OFF">
<task tasktype="ogscript">
/*! block id=1001 !*/
ogscript.fireGPI(100, 0, false);
/*!!
<block id="1001" type="ogscript_gpio" x="10" y="100" w="243" GPI="100" STATE="0" GLOBAL="false" />
!!*/
/*!!<checksum>8a6c736f64d72caf2a76a56f09383411</checksum>!!*/</task>
</button>
<button buttontype="push" name="ON">
<task tasktype="ogscript">
/*! block id=1002 !*/
ogscript.fireGPI(100, 1, false);
/*!!
<block id="1002" type="ogscript_gpio" x="10" y="100" w="243" GPI="100" STATE="1" GLOBAL="false" />
!!*/
/*!!<checksum>e857dee00635fbc7f1826683996d66a1</checksum>!!*/</task>
</button>
</simplegrid>
</abs>
The important part being this:
<param expand="true" gpi="100" height="111" left="134" oid="BUTTON_PARAMETER_OID" style="style:toggleButton;" top="130" width="210">
<task tasktype="ogscript">if (event && event.getState && event.getState() != null) //IF MY PARAMETER WAS TRIGGERED VIA GPI 100:0 or GPI 100:1
{
if (params.getValue('BUTTON_PARAMETER_OID', 0) != parseInt(event.getState())) //IF THE STATE VALUE (0 or 1) IS DIFFERENT FROM THE PARAMETER VALUE
{
params.setValue('BUTTON_PARAMETER_OID', 0, parseInt(event.getState())); //SET THE PARAMETER VALUE
}
return;
}
//DO MY REGULAR TASK HERE</task>
</param>
#DashBoard