Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagexml
titleTempSensorModel with reference to Zone
linenumberstrue
<ThingFacet<Def Name="TempFacetSerialPeripheralParams">
      <String Name="Peripheral"/>
      <String Name="TempValue" update="auto" KnownBy="SerialReadAction"InterfacePort"/>
         <String Name="Interface"/>
      <String Name="UnitUniqueId" default="Celsius56789"/>
      <String Name="Baudrate"/>
      <String Name="PeripheralFormat" default="ascii"/>
      <String Name="Operation"/>
      <String Name="InterfacePortPayload"/>
    </Def>

      <String<ThingFacet Name="InterfaceTempFacetSerial"/>
            <String Name<String Name="UniqueIdInitSubscribers" default="56789false"/>
            <String Name="Baudrate KnownBy="InitSubAction"/>
   
        <String Name="FormatSensorData" defaultupdate="asciiauto"/>
            <String Name="Operation KnownBy="SensorDataReadAction"/>
            <String<PeripheralParams Name="PayloadPerifParams"/>
 
          <Action Name="SerialReadActionSensorDataReadAction">
       
        <Workflow Limit="1" Live="1" Timeout="-1">
         
          <Task name="Main" while="true">
          
             <Event name="Argument" as="ActionArgument" />
  
                     <Invoke name="InvokeSerialRead" waitFor="Argument" get="perif://">
                         get="perif://">
   <Message>           <Message>
                <Value>
    <Value>                <InterfacePort>
                    <InterfacePort>"[%:Event.Argument.interfacePortPerifParams.InterfacePort.Value:%]"</InterfacePort>
                  </InterfacePort>
                 <Baudrate>"[%:Event.Argument.baudrate.Value:%]"</Baudrate> <Baudrate>
                                    <Interface>"[%:Event.Argument.PerifParams.interfaceBaudrate.Value:%]"</Interface>
             
                   </Baudrate>
  <UniqueId>"[%:Event.Argument.uniqueId.Value:%]"</UniqueId>                <Interface>
                    <Operation>"[%:Event.Argument.operationPerifParams.Interface.Value:%]"</Operation>
                  </Interface>
                 <format>"[%:Event.Argument.format.Value:%]"</format>  <UniqueId>
                    "[%:Event.Argument.PerifParams.UniqueId.Value:%]"
             <Payload>"[%:Event.Argument.payload.Value:%]"</Payload>     </UniqueId>
                  <Operation>
                    <Peripheral>"[%:Event.Argument.peripheralPerifParams.Operation.Value:%]"</Peripheral>
                  </Operation>
                 </Value> <Peripheral>
                    "[%:Event.Argument.PerifParams.Peripheral.Value:%]"
      </Message>            </Peripheral>
            </Invoke>      <Payload>
                  <Output name="Result" as="ActionResult">"[%:Event.Argument.PerifParams.Payload.Value:%]"
                  </Payload>
         <Value>         <Format>
                       <tempValue>"[%:InvokeEvent.Argument.InvokeSerialReadPerifParams.MessageFormat.Value/number(substring-before(substring-after:%]"
                  </Format>
                </Value>
              </Message>
     ("[%:Invoke.InvokeSerialRead.Message.Value.received:%]",'#TCB:'), '#')):%]       </Invoke>
            <Output Name="Result" As="ActionResult">
             </tempValue> <Value>
                <SensorData>
          </Value>        [%:Invoke.InvokeSerialRead.Message.Value/normalize-space(received):%]
                </Output>SensorData>
              </Value>
      </Task>      </Output>
          </Workflow>Task>
        </Workflow>
      </Action>
    </ThingFacet>    
<ThingModel Name="TempSensor" combines="TempFacetSerial">
    <Sid Name="sensorId"/>
    <Reference Name="ZoneID" Type="Zone" Cardinality="1"/>
</ThingModel>

...