<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.mios.com/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://wiki.mios.com/index.php?action=history&amp;feed=atom&amp;title=Luup_Protocol</id>
		<title>Luup Protocol - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.mios.com/index.php?action=history&amp;feed=atom&amp;title=Luup_Protocol"/>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php?title=Luup_Protocol&amp;action=history"/>
		<updated>2026-05-04T13:59:40Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.19.8</generator>

	<entry>
		<id>http://wiki.mios.com/index.php?title=Luup_Protocol&amp;diff=7379&amp;oldid=prev</id>
		<title>Mcvflorin at 08:24, 23 August 2013</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php?title=Luup_Protocol&amp;diff=7379&amp;oldid=prev"/>
				<updated>2013-08-23T08:24:08Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Older revision&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Revision as of 08:24, 23 August 2013&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 34:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 34:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* For a full reference on XML please see http://www.w3.org/TR/REC-xml/&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* For a full reference on XML please see http://www.w3.org/TR/REC-xml/&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;== Locating the MiOS engine ==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;== Locating the MiOS engine ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* To initiate communications with the MiOS engine, a HTTP GET request needs to be made to &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;http&lt;/del&gt;://sta1.mios.com/locator_json.php?username=&amp;lt;username&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* To initiate communications with the MiOS engine, a HTTP GET request needs to be made to &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;https&lt;/ins&gt;://sta1.mios.com/locator_json.php?username=&amp;lt;username&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* username is the user-supplied username for accessing MyMiOS services&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* username is the user-supplied username for accessing MyMiOS services&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* Return data&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* Return data&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;!-- diff cache key micasaverde_wiki:diff:version:1.11a:oldid:3178:newid:7379 --&gt;
&lt;/table&gt;</summary>
		<author><name>Mcvflorin</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php?title=Luup_Protocol&amp;diff=3178&amp;oldid=prev</id>
		<title>Henk at 06:47, 27 May 2011</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php?title=Luup_Protocol&amp;diff=3178&amp;oldid=prev"/>
				<updated>2011-05-27T06:47:27Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Older revision&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Revision as of 06:47, 27 May 2011&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;[[Category:Development]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;==Luup Request API==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;==Luup Request API==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;LuaUPnP's functionality is available through the Luup request api available here:[[Luup Requests]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;LuaUPnP's functionality is available through the Luup request api available here:[[Luup Requests]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;!-- diff cache key micasaverde_wiki:diff:version:1.11a:oldid:2745:newid:3178 --&gt;
&lt;/table&gt;</summary>
		<author><name>Henk</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php?title=Luup_Protocol&amp;diff=2745&amp;oldid=prev</id>
		<title>Automator.app: show ssl option when connecting to forward servers</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php?title=Luup_Protocol&amp;diff=2745&amp;oldid=prev"/>
				<updated>2011-03-03T01:34:32Z</updated>
		
		<summary type="html">&lt;p&gt;show ssl option when connecting to forward servers&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Older revision&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Revision as of 01:34, 3 March 2011&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 65:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 65:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* Remote access &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* Remote access &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;** When accessing the MiOS engine through the MiOS forward servers, the prefix takes the form:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;** When accessing the MiOS engine through the MiOS forward servers, the prefix takes the form:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; http://&amp;lt;fwd_server&amp;gt;/&amp;lt;username&amp;gt;/&amp;lt;password&amp;gt;/&amp;lt;serial&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; http&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;[s]&lt;/ins&gt;://&amp;lt;fwd_server&amp;gt;/&amp;lt;username&amp;gt;/&amp;lt;password&amp;gt;/&amp;lt;serial&amp;gt; &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* fwd_server&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* fwd_server&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;** one of the servers specified in the forwardServers array&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;** one of the servers specified in the forwardServers array&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 75:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 75:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;** one of the serial numbers returned from locator_json&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;** one of the serial numbers returned from locator_json&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* If local access is available (if the ipAddress field exists for the specified unit and is not null), it should be attempted first. Otherwise, remote access with the primary forward server and then other forward servers should be attempted.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* If local access is available (if the ipAddress field exists for the specified unit and is not null), it should be attempted first. Otherwise, remote access with the primary forward server and then other forward servers should be attempted.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;* Using HTTPS/SSL as the transport when using the MiOS forward servers is advisable as the user credentials are contained within the URL, and using SSL will ensure the entire HTTP request is secure and cannot be intercepted easily by third parties.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;!-- diff cache key micasaverde_wiki:diff:version:1.11a:oldid:2741:newid:2745 --&gt;
&lt;/table&gt;</summary>
		<author><name>Automator.app</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php?title=Luup_Protocol&amp;diff=2741&amp;oldid=prev</id>
		<title>Micasaverde: New page: ==Luup Request API== LuaUPnP's functionality is available through the Luup request api available here:Luup Requests ==lu_sdata formatting== One of the most important requests is lu_sda...</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php?title=Luup_Protocol&amp;diff=2741&amp;oldid=prev"/>
				<updated>2011-03-01T23:36:48Z</updated>
		
		<summary type="html">&lt;p&gt;New page: ==Luup Request API== LuaUPnP&amp;#039;s functionality is available through the Luup request api available here:&lt;a href=&quot;/index.php/Luup_Requests&quot; title=&quot;Luup Requests&quot;&gt;Luup Requests&lt;/a&gt; ==lu_sdata formatting== One of the most important requests is lu_sda...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Luup Request API==&lt;br /&gt;
LuaUPnP's functionality is available through the Luup request api available here:[[Luup Requests]]&lt;br /&gt;
==lu_sdata formatting==&lt;br /&gt;
One of the most important requests is lu_sdata, which is explained in detail here:[[Luup Sdata]]&lt;br /&gt;
==HTTP GET overview==&lt;br /&gt;
* Arguments&lt;br /&gt;
** Arguments to LuaUPnP API calls are formatted as Query strings and passed to the engine either on a LAN on port 3480 or through the MiOS forward servers. Requests take the form:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;prefix&amp;gt;/data_request?id=&amp;lt;request&amp;gt;&amp;amp;field1=value1&amp;amp;field2=value2&amp;amp;...&amp;amp;fieldN=valueN&lt;br /&gt;
&lt;br /&gt;
* URL Encoding&lt;br /&gt;
** Anyone implementing automatic calls to the LuaUPnP( Herafter referred to as Luup ) API must take caution that all reserved characters are properly replaced with their percent-encoded counterparts per RFC 3986&lt;br /&gt;
== JSON overview ==&lt;br /&gt;
*The standard format for data returned by Luup Request is Java script object notation, or JSON.&lt;br /&gt;
* This is only meant to be a brief review of json. A full specification is available at http://www.json.org &lt;br /&gt;
* Objects&lt;br /&gt;
**An Object is an ordered set of name/value pairs.&lt;br /&gt;
** Objects begin with the left curly brace or { character, and end with the } or right curly brace character.&lt;br /&gt;
** the name/value pairs of objects are separated by commas.&lt;br /&gt;
** names in objects are always JSON Strings(see section 1.2.6) array.&lt;br /&gt;
* Arrays&lt;br /&gt;
** An array is an ordered collection of values.&lt;br /&gt;
** An array begins with [ (left bracket) and ends with ] (right bracket). Values are separated by , (comma).&lt;br /&gt;
* Values&lt;br /&gt;
** A value can be a string in double quotes, or a number, or true or false or null, or an object or an array. These structures can be nested.&lt;br /&gt;
* Numbers&lt;br /&gt;
** Any valid decimal number is a valid json number&lt;br /&gt;
* Strings&lt;br /&gt;
** Strings are sequences of characters wrapped in double quotes.&lt;br /&gt;
** All characters are valid in strings except the “ and \ characters&lt;br /&gt;
== XML Overview ==&lt;br /&gt;
* All data request can optionally return in XML format instead of JSON.&lt;br /&gt;
* For a full reference on XML please see http://www.w3.org/TR/REC-xml/&lt;br /&gt;
== Locating the MiOS engine ==&lt;br /&gt;
* To initiate communications with the MiOS engine, a HTTP GET request needs to be made to http://sta1.mios.com/locator_json.php?username=&amp;lt;username&amp;gt;&lt;br /&gt;
* username is the user-supplied username for accessing MyMiOS services&lt;br /&gt;
* Return data&lt;br /&gt;
** A JSON object with one key/value pair, &lt;br /&gt;
** key: units&lt;br /&gt;
** value: a JSON array containing a list of the units accessible from your ip address with the supplied username.&lt;br /&gt;
** each unit has the following fields&lt;br /&gt;
***  serialNumber&lt;br /&gt;
**** a json string with the unique serial number of the unit.&lt;br /&gt;
*** FirmwareVersion&lt;br /&gt;
**** a json string with the build version of the MiOS software on the unit.&lt;br /&gt;
*** ipAddress&lt;br /&gt;
**** an optional paramater. If present, implies that the MiOS engine is on the same LAN as the client software and the client software should attempt local access before remote access.&lt;br /&gt;
*** name&lt;br /&gt;
**** A json string with a user-specified name for the unit&lt;br /&gt;
*** users&lt;br /&gt;
**** A json array containing json strings specifying the valid users for the unit&lt;br /&gt;
*** active_server&lt;br /&gt;
**** a json string containing the forward server that should be tried first to communicate with the unit&lt;br /&gt;
*** forwardServers&lt;br /&gt;
**** a json array containing json objects containing the following key/value pairs&lt;br /&gt;
***** hostName&lt;br /&gt;
****** a json string with the url of a valid forward server for communicating with this unit&lt;br /&gt;
***** primary&lt;br /&gt;
****** a json value containing either true or false. If true, this server is the primary server for communicating with the unit&lt;br /&gt;
== Prefix ==&lt;br /&gt;
* Local access&lt;br /&gt;
** When accessing a MiOS engine on the same subnet as the client application, the prefix takes the form:&lt;br /&gt;
  http://&amp;lt;ip_address&amp;gt;:3480&lt;br /&gt;
*** ip_address is the ip address of the MiOS engine&lt;br /&gt;
* Remote access &lt;br /&gt;
** When accessing the MiOS engine through the MiOS forward servers, the prefix takes the form:&lt;br /&gt;
  http://&amp;lt;fwd_server&amp;gt;/&amp;lt;username&amp;gt;/&amp;lt;password&amp;gt;/&amp;lt;serial&amp;gt;&lt;br /&gt;
* fwd_server&lt;br /&gt;
** one of the servers specified in the forwardServers array&lt;br /&gt;
* username&lt;br /&gt;
** a user-specified MyMiOS username&lt;br /&gt;
* password&lt;br /&gt;
** user-specified password for the MyMiOS username&lt;br /&gt;
* serial&lt;br /&gt;
** one of the serial numbers returned from locator_json&lt;br /&gt;
* If local access is available (if the ipAddress field exists for the specified unit and is not null), it should be attempted first. Otherwise, remote access with the primary forward server and then other forward servers should be attempted.&lt;/div&gt;</summary>
		<author><name>Micasaverde</name></author>	</entry>

	</feed>