Subversion Repositories HomeAutomation

Rev

Rev 1326 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | SVN | RSS feed

  1. <?xml version="1.0" standalone="yes"?>
  2. <protocol>
  3.     <information biosversion="1339" version="1" updated="2009-08-03 16:43:40"/>
  4.     <datatypes>
  5.         <!-- Always a total of 29 bits in length -->
  6.         <datatype type="unsigned integer" name="moduleType" lenght="13"/>
  7.         <datatype type="unsigned integer" name="moduleId" lenght="8"/>
  8.         <datatype type="unsigned integer" name="messageId" length="8"/>
  9.  
  10.         <!-- Used to send responses, depends on the number of codes -->
  11.         <datatype type="response" name="responseCode">
  12.             <code name="ok"/>
  13.             <code name="error"/>
  14.             <code name="warning"/>
  15.         </datatype>
  16.  
  17.         <!-- Always 1 bit in length -->
  18.         <datatype type="boolean" name="boolean"/>
  19.  
  20.         <!-- Dynamic string, no length specified, uses all the bits that are left -->
  21.         <datatype type="string" name="string"/>
  22.  
  23.         <!-- Example standard datatypes -->
  24.         <datatype type="unsigned integer" name="uint10" length="10"/>
  25.         <datatype type="integer" name="int10" length="10"/>
  26.         <datatype type="string" name="string16" lenght="16"/>
  27.  
  28.         <!-- Example decimal, scaling is multiplied on sending and cast to int, and divided by on reception  -->
  29.         <datatype type="decimal" name="decimal10" length="10" scaling="1024"/>
  30.  
  31.         <!-- Example enum, length depends on the number of labels -->
  32.         <datatype type="enum" name="enumTest">
  33.             <label name="label1"/>
  34.             <label name="label2"/>
  35.             <label name="label3"/>
  36.         </datatype>
  37.     </datatypes>
  38.     <header>
  39.         <variable datatype="moduleType" name="moduleType" required="true"/>
  40.         <variable datatype="moduleId" name="moduleId" required="true"/>
  41.         <variable datatype="messageId" name="messageId" required="true"/>
  42.     </header>
  43.     <messagetypes>
  44.         <messagetype name="response">
  45.             <variable datatype="messageId" name="messageId" required="true"/>
  46.             <variable datatype="responseCode" name="code" required="true"/>
  47.         </messagetype>
  48.         <messagetype name="temperature">
  49.             <variable datatype="decimal10" name="temperature" required="true" unit="celcius"/>
  50.             <variable datatype="int10" name="id" required="true"/>
  51.            
  52. <!--        // Kanske flytta dessa ner till in-messages under modulerna -->
  53.             <response code="ok"/>
  54.             <response code="error"/>
  55.         </messagetype>
  56.     </messagetypes>
  57.     <modules>
  58.         <module name="irTranceiver">
  59.             <in>
  60.                 <message name="getTemperature"/>
  61.             </in>
  62.             <out>
  63.                 <message name="setTemperature"/>
  64.             </out>
  65.         </module>
  66.     </modules>
  67. </protocol>
  68.