XML Data Handler Plug-in
From LinuxMCE
Contents
About
The XML Data Handler Plugin is used by the Tivo and the Moxi Orbiter. We are currently investigating further possible uses.
Preparations
You need to install the "Basic XML Data Source Plug-in". It will also install a related device, the "XML Data Handler Plug-in". We assume device id 262 for the latter in this document.
Supported Datagrids
The following datagrids are supported:
- "Devices"
- "CommandGroups"
Using MessageSend to fetch data
We use MessageSend to talk to the XML Data Handler Plugin. The DCE command is 869, as can be seen in the Command Table:
| 869 | Request XML Data |
We request all CommandGroups:
/usr/pluto/bin/MessageSend localhost -o 0 262 1 869 15 "CommandGroups" 109 "" 202 ""
We request all Devices:
/usr/pluto/bin/MessageSend localhost -o 0 262 1 869 15 "Devices" 109 "" 202 ""
Example output
Example output (CommandGroups):
0:OK 109:<?xml version="1.0" encoding="UTF-8"?> <PlutoXmlData> <CommandGroupList><CommandGroup PK_CommandGroup="7" PK_Array="4">Active Calls<Room PK_Room="1"></Room></CommandGroup><CommandGroup PK_CommandGroup="8" PK_Array="4">Speed Dial<Room PK_Room="1"></Room></CommandGroup><CommandGroup PK_CommandGroup="9" PK_Array="4">Dial Direct<Room PK_Room="1"></Room></CommandGroup><CommandGroup PK_CommandGroup="10" PK_Array="4">Phone Book<Room PK_Room="1"></Room></CommandGroup><CommandGroup PK_CommandGroup="11" PK_Array="4">Intercom<Room PK_Room="1"></Room></CommandGroup><CommandGroup PK_CommandGroup="12" PK_Array="4">hari<Room PK_Room="1"></Room></CommandGroup><CommandGroup PK_CommandGroup="13" PK_Array="3">Security<Room PK_Room="1"></Room></CommandGroup><CommandGroup PK_CommandGroup="24" PK_Array="4">Active Calls<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="25" PK_Array="4">Speed Dial<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="26" PK_Array="4">Dial Direct<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="27" PK_Array="4">Phone Book<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="28" PK_Array="4">Intercom<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="29" PK_Array="4">hari<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="30" PK_Array="3">Security<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="31" PK_Array="1">Sleep<Room PK_Room="3"></Room></CommandGroup><CommandGroup PK_CommandGroup="32" PK_Array="1">Wakeup<Room PK_Room="3"></Room></CommandGroup><CommandGroup PK_CommandGroup="33" PK_Array="1">House to sleep mode<Room PK_Room="3"></Room></CommandGroup><CommandGroup PK_CommandGroup="34" PK_Array="4">Active Calls<Room PK_Room="3"></Room></CommandGroup><CommandGroup PK_CommandGroup="35" PK_Array="4">Speed Dial<Room PK_Room="3"></Room></CommandGroup><CommandGroup PK_CommandGroup="36" PK_Array="4">Dial Direct<Room PK_Room="3"></Room></CommandGroup><CommandGroup PK_CommandGroup="37" PK_Array="4">Phone Book<Room PK_Room="3"></Room></CommandGroup><CommandGroup PK_CommandGroup="38" PK_Array="4">Intercom<Room PK_Room="3"></Room></CommandGroup><CommandGroup PK_CommandGroup="39" PK_Array="4">hari<Room PK_Room="3"></Room></CommandGroup><CommandGroup PK_CommandGroup="40" PK_Array="3">Security<Room PK_Room="3"></Room></CommandGroup><CommandGroup PK_CommandGroup="58" PK_Array="3">DCS-5300G<Room PK_Room="1"></Room></CommandGroup><CommandGroup PK_CommandGroup="59" PK_Array="3">DCS-5300G<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="60" PK_Array="3">DCS-5300G<Room PK_Room="3"></Room></CommandGroup><CommandGroup PK_CommandGroup="77" PK_Array="3">DCS-5300G<Room PK_Room="1"></Room></CommandGroup><CommandGroup PK_CommandGroup="78" PK_Array="3">DCS-5300G<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="79" PK_Array="3">DCS-5300G<Room PK_Room="3"></Room></CommandGroup><CommandGroup PK_CommandGroup="109" PK_Array="1">TV<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="110" PK_Array="1">Soft<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="117" PK_Array="3">4<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="119" PK_Array="1">On<Room PK_Room="1"></Room></CommandGroup><CommandGroup PK_CommandGroup="120" PK_Array="1">Off<Room PK_Room="1"></Room></CommandGroup><CommandGroup PK_CommandGroup="121" PK_Array="1">On<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="122" PK_Array="1">Off<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="123" PK_Array="1">On<Room PK_Room="3"></Room></CommandGroup><CommandGroup PK_CommandGroup="124" PK_Array="1">Off<Room PK_Room="3"></Room></CommandGroup><CommandGroup PK_CommandGroup="125" PK_Array="2">Day<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="126" PK_Array="2">Night<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="127" PK_Array="1">All On<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="128" PK_Array="1">All Off<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="129" PK_Array="1">Bed<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="132" PK_Array="1">Showtime<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="137" PK_Array="1">All On<Room PK_Room="1"></Room></CommandGroup><CommandGroup PK_CommandGroup="138" PK_Array="1">All Off<Room PK_Room="1"></Room></CommandGroup><CommandGroup PK_CommandGroup="139" PK_Array="1">Red<Room PK_Room="1"></Room></CommandGroup><CommandGroup PK_CommandGroup="140" PK_Array="1">Green<Room PK_Room="1"></Room></CommandGroup><CommandGroup PK_CommandGroup="141" PK_Array="1">Blue<Room PK_Room="1"></Room></CommandGroup><CommandGroup PK_CommandGroup="142" PK_Array="1">RGB Off<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="143" PK_Array="1">RGB Red<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="144" PK_Array="1">RGB Green<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="145" PK_Array="1">RGB Blue<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="146" PK_Array="1">Soft Blue<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="147" PK_Array="3">Axis IP Camera<Room PK_Room="1"></Room></CommandGroup><CommandGroup PK_CommandGroup="148" PK_Array="3">Axis IP Camera<Room PK_Room="2"></Room></CommandGroup><CommandGroup PK_CommandGroup="149" PK_Array="3">Axis IP Camera<Room PK_Room="3"></Room></CommandGroup></CommandGroupList> <RoomList><Room PK_Room="1">Flur</Room><Room PK_Room="2">Wohnzimmer</Room><Room PK_Room="3">Schlafzimmer</Room></RoomList> <ArrayList><Array PK_Array="1">Lighting Scenarios</Array><Array PK_Array="2">Climate Scenarios</Array><Array PK_Array="3">Security Scenarios</Array><Array PK_Array="4">Communication Scenarios</Array></ArrayList> </PlutoXmlData>
Example output (Devices):
<?xml version="1.0" encoding="UTF-8"?> <PlutoXmlData> <DeviceList><Device PK_Device="1" PK_Room="2" PK_DeviceTemplate="7" PK_DeviceCategory="7">CORE</Device><Device PK_Device="2" PK_Room="2" PK_DeviceTemplate="1" PK_DeviceCategory="1">DCERouter</Device><Device PK_Device="3" PK_Room="2" PK_DeviceTemplate="10" PK_DeviceCategory="14">File Grids Plug-in</Device><Device PK_Device="4" PK_Room="2" PK_DeviceTemplate="27" PK_DeviceCategory="61">General Info Plug-in</Device><Device PK_Device="5" PK_Room="2" PK_DeviceTemplate="31" PK_DeviceCategory="68">Climate Plug-in</Device><Device PK_Device="6" PK_Room="2" PK_DeviceTemplate="9" PK_DeviceCategory="66">Datagrid Plug-in</Device><Device PK_Device="7" PK_Room="2" PK_DeviceTemplate="39" PK_DeviceCategory="78">Infrared Plug-in</Device><Device PK_Device="8" PK_Room="2" PK_DeviceTemplate="32" PK_DeviceCategory="67">Lighting Plug-in</Device><Device PK_Device="9" PK_Room="2" PK_DeviceTemplate="12" PK_DeviceCategory="56">Orbiter Plug-in</Device><Device PK_Device="10" PK_Room="2" PK_DeviceTemplate="2" PK_DeviceCategory="15">Media Plug-in</Device><Device PK_Device="11" PK_Room="2" PK_DeviceTemplate="34" PK_DeviceCategory="69">Telecom Plug-in</Device><Device PK_Device="12" PK_Room="2" PK_DeviceTemplate="52" PK_DeviceCategory="99">Event Plug-in</Device><Device PK_Device="13" PK_Room="2" PK_DeviceTemplate="33" PK_DeviceCategory="70">Security Plug-in</Device><Device PK_Device="14" PK_Room="2" PK_DeviceTemplate="1809" PK_DeviceCategory="159">Plug And Play Plug-in</Device><Device PK_Device="15" PK_Room="2" PK_DeviceTemplate="26" PK_DeviceCategory="65">App Server</Device><Device PK_Device="16" PK_Room="2" PK_DeviceTemplate="1808" PK_DeviceCategory="156">HAL</Device><Device PK_Device="17" PK_Room="2" PK_DeviceTemplate="1977" PK_DeviceCategory="60">UPnP Server</Device><Device PK_Device="18" PK_Room="2" PK_DeviceTemplate="45" PK_DeviceCategory="88">Asterisk</Device><Device PK_Device="19" PK_Room="2" PK_DeviceTemplate="57" PK_DeviceCategory="101">Text To Speech</Device><Device PK_Device="20" PK_Room="2" PK_DeviceTemplate="28" PK_DeviceCategory="8">The core/hybrid</Device><Device PK_Device="21" PK_Room="2" PK_DeviceTemplate="62" PK_DeviceCategory="3">OnScreen Orbiter</Device><Device PK_Device="22" PK_Room="2" PK_DeviceTemplate="1759" PK_DeviceCategory="91">Orbiter Embedded Phone</Device><Device PK_Device="23" PK_Room="2" PK_DeviceTemplate="5" PK_DeviceCategory="13">Xine Player</Device><Device PK_Device="24" PK_Room="2" PK_DeviceTemplate="6" PK_DeviceCategory="11">Xine Plug-in</Device><Device PK_Device="25" PK_Room="2" PK_DeviceTemplate="1825" PK_DeviceCategory="163">Photo Screen Saver</Device><Device PK_Device="26" PK_Room="2" PK_DeviceTemplate="1901" PK_DeviceCategory="13">MPlayer Player</Device><Device PK_Device="27" PK_Room="2" PK_DeviceTemplate="11" PK_DeviceCategory="59">Disk Drive</Device><Device PK_Device="28" PK_Room="2" PK_DeviceTemplate="1701" PK_DeviceCategory="115">External Media Identifier</Device><Device PK_Device="29" PK_Room="2" PK_DeviceTemplate="1862" PK_DeviceCategory="133">mce_usb2</Device><Device PK_Device="30" PK_Room="2" PK_DeviceTemplate="1911" PK_DeviceCategory="114">LIRC Embedded Transmit</Device><Device PK_Device="31" PK_Room="2" PK_DeviceTemplate="1622" PK_DeviceCategory="118">Windows XP MC Remote</Device><Device PK_Device="32" PK_Room="2" PK_DeviceTemplate="36" PK_DeviceCategory="11">MythTV Plug-In</Device><Device PK_Device="33" PK_Room="2" PK_DeviceTemplate="35" PK_DeviceCategory="13">MythTV Player</Device><Device PK_Device="34" PK_Room="4" PK_DeviceTemplate="28" PK_DeviceCategory="8">Omaura-ION</Device><Device PK_Device="35" PK_Room="4" PK_DeviceTemplate="26" PK_DeviceCategory="65">App Server</Device><Device PK_Device="36" PK_Room="4" PK_DeviceTemplate="62" PK_DeviceCategory="3">OnScreen Orbiter</Device><Device PK_Device="37" PK_Room="4" PK_DeviceTemplate="1759" PK_DeviceCategory="91">Orbiter Embedded Phone</Device><Device PK_Device="38" PK_Room="4" PK_DeviceTemplate="1808" PK_DeviceCategory="156">HAL</Device><Device PK_Device="39" PK_Room="4" PK_DeviceTemplate="5" PK_DeviceCategory="13">Xine Player</Device><Device PK_Device="40" PK_Room="4" PK_DeviceTemplate="1825" PK_DeviceCategory="163">Photo Screen Saver</Device><Device PK_Device="41" PK_Room="4" PK_DeviceTemplate="1901" PK_DeviceCategory="13">MPlayer Player</Device><Device PK_Device="42" PK_Room="4" PK_DeviceTemplate="35" PK_DeviceCategory="13">MythTV Player</Device><Device PK_Device="43" PK_Room="4" PK_DeviceTemplate="1862" PK_DeviceCategory="133">mce_usb2</Device><Device PK_Device="44" PK_Room="4" PK_DeviceTemplate="1911" PK_DeviceCategory="114">LIRC Embedded Transmit</Device><Device PK_Device="45" PK_Room="4" PK_DeviceTemplate="1622" PK_DeviceCategory="118">Windows XP MC Remote</Device><Device PK_Device="46" PK_Room="2" PK_DeviceTemplate="13" PK_DeviceCategory="110">Bluetooth Dongle</Device><Device PK_Device="47" PK_Room="1" PK_DeviceTemplate="8" PK_DeviceCategory="3">Orbiter</Device><Device PK_Device="48" PK_DeviceTemplate="1868" PK_DeviceCategory="169">XML Data Handler Plug-in</Device><Device PK_Device="49" PK_DeviceTemplate="1869" PK_DeviceCategory="170">Basic XML Data Source Plug-in</Device><Device PK_Device="51" PK_DeviceTemplate="1748" PK_DeviceCategory="57">Generic Web Device</Device><Device PK_Device="52" PK_DeviceTemplate="1749" PK_DeviceCategory="3">Generic Proxy Orbiter</Device></DeviceList> <RoomList><Room PK_Room="1">Sovrum</Room><Room PK_Room="2">Pumprum</Room><Room PK_Room="4">TV-rum nere</Room></RoomList> <DeviceTemplateList><DeviceTemplate PK_DeviceTemplate="1">DCERouter</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="2">Media Plug-in</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="5">Xine Player</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="6">Xine Plug-in</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="7">Generic PC as Core</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="8">Orbiter</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="9">Datagrid Plug-in</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="10">File Grids Plug-in</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="11">Disk Drive</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="12">Orbiter Plug-in</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="13">Bluetooth Dongle</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="26">App Server</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="27">General Info Plug-in</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="28">Generic PC as MD</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="31">Climate Plug-in</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="32">Lighting Plug-in</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="33">Security Plug-in</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="34">Telecom Plug-in</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="35">MythTV Player</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="36">MythTV Plug-In</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="39">Infrared Plug-in</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="45">Asterisk</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="52">Event Plug-in</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="57">Text To Speech</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="62">OnScreen Orbiter</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="1622">Windows XP MC Remote</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="1701">External Media Identifier</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="1748">Generic Web Device</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="1749">Generic Proxy Orbiter</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="1759">Orbiter Embedded Phone</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="1808">HAL</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="1809">Plug And Play Plug-in</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="1825">Photo Screen Saver</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="1862">mce_usb2</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="1868">XML Data Handler Plug-in</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="1869">Basic XML Data Source Plug-in</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="1901">MPlayer Player</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="1911">LIRC Embedded Transmit</DeviceTemplate><DeviceTemplate PK_DeviceTemplate="1977">UPnP Server</DeviceTemplate></DeviceTemplateList> <DeviceCategoryList><DeviceCategory PK_DeviceCategory="1">DCE Router</DeviceCategory><DeviceCategory PK_DeviceCategory="3">Standard Orbiter</DeviceCategory><DeviceCategory PK_DeviceCategory="7">Core</DeviceCategory><DeviceCategory PK_DeviceCategory="8">Media Director</DeviceCategory><DeviceCategory PK_DeviceCategory="11">Media Player Plugins</DeviceCategory><DeviceCategory PK_DeviceCategory="13">Media Players</DeviceCategory><DeviceCategory PK_DeviceCategory="14">Datagrids</DeviceCategory><DeviceCategory PK_DeviceCategory="15">Media Plug-ins</DeviceCategory><DeviceCategory PK_DeviceCategory="56">Orbiter Plug-ins</DeviceCategory><DeviceCategory PK_DeviceCategory="57">Peripherals</DeviceCategory><DeviceCategory PK_DeviceCategory="59">Disc Drives</DeviceCategory><DeviceCategory PK_DeviceCategory="60">Utilities</DeviceCategory><DeviceCategory PK_DeviceCategory="61">General Info Plug-ins</DeviceCategory><DeviceCategory PK_DeviceCategory="65">App Server</DeviceCategory><DeviceCategory PK_DeviceCategory="66">Datagrid Plug-ins</DeviceCategory><DeviceCategory PK_DeviceCategory="67">Lighting Plug-ins</DeviceCategory><DeviceCategory PK_DeviceCategory="68">Climate Plug-ins</DeviceCategory><DeviceCategory PK_DeviceCategory="69">Telecom Plug-ins</DeviceCategory><DeviceCategory PK_DeviceCategory="70">Security Plug-ins</DeviceCategory><DeviceCategory PK_DeviceCategory="78">Infrared Plug-ins</DeviceCategory><DeviceCategory PK_DeviceCategory="88">Telecom Handlers</DeviceCategory><DeviceCategory PK_DeviceCategory="91">Soft Phones</DeviceCategory><DeviceCategory PK_DeviceCategory="99">Event Plug-ins</DeviceCategory><DeviceCategory PK_DeviceCategory="101">Text To Speech</DeviceCategory><DeviceCategory PK_DeviceCategory="110">Bluetooth Dongles</DeviceCategory><DeviceCategory PK_DeviceCategory="114">Infrared Interface</DeviceCategory><DeviceCategory PK_DeviceCategory="115">Media Identifiers</DeviceCategory><DeviceCategory PK_DeviceCategory="118">LIRC Remote Controls</DeviceCategory><DeviceCategory PK_DeviceCategory="133">LIRC Drivers</DeviceCategory><DeviceCategory PK_DeviceCategory="156">Plug and Play</DeviceCategory><DeviceCategory PK_DeviceCategory="159">Plug and Play Plugins</DeviceCategory><DeviceCategory PK_DeviceCategory="163">Screen Savers</DeviceCategory><DeviceCategory PK_DeviceCategory="169">XML Data Handler Plug-ins</DeviceCategory><DeviceCategory PK_DeviceCategory="170">XML Data Source Plug-ins</DeviceCategory></DeviceCategoryList> </PlutoXmlData>