Hi Simon
We added a feature to help with internationalization of custom panels that will also work for what you're trying to do. You can use a standard Java properties file (key=value) to populate a lookup table in DashBoard.
Panel:
<abs contexttype="opengear">
<meta>
<lookup id="hosts" src="hosts.properties"/>
</meta>
<button buttontype="push" height="132" left="30" name="Send To Device 1" top="32" width="183">
<task tasktype="rosstalk">rosstalk.sendMessage(ogscript.getPrivateString('hosts', 'My_Device.host'), parseInt(ogscript.getPrivateString('hosts', 'My_Device.port')), 'SEQI 12:1');</task>
</button>
<button buttontype="push" height="132" left="225" name="Send To Device 2" top="31" width="183">
<task tasktype="rosstalk">rosstalk.sendMessage(ogscript.getPrivateString('hosts', 'My_Other_Device.host'), parseInt(ogscript.getPrivateString('hosts', 'My_Other_Device.port')), 'SEQO 4');</task>
</button>
</abs>
Properties ("hosts.properties"):
My_Device.host=blah
My_Device.port=1234
My_Other_Device.host=BLAHBLAH
My_Other_Device.port=4321
Cheers
James
#DashBoard