Versions Compared

Key

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

...

Code Block
languagexml
titleTempSensorModel with reference to Zone
linenumberstrue
<ThingModel<ThingFacet Name="TempFacetSerial">
            <String Name="TempSensor"TempValue" update="auto" CombinesKnownBy="TempSensorFacetNSSerialReadAction"/>    
  <Sid          <String Name="sensorId"Unit" default="Celsius"/>
            <String Name="Peripheral"/>
            <String Name="InterfacePort"/>
            <String Name="Interface"/>
            <String Name="UniqueId" default="56789"/>
            <String Name="Baudrate"/>
            <String Name="Format" default="ascii"/>
            <String Name="Operation"/>
            <String Name="Payload"/>
            <Action Name="SerialReadAction">
                <Workflow Limit="1" Live="1" Timeout="-1">
                    <Task name="Main" while="true">
                        <Event name="Argument" as="ActionArgument" />
                        <Invoke name="InvokeSerialRead" waitFor="Argument" get="perif://">
                            <Message>
                                <Value>
                                    <InterfacePort>"[%:Event.Argument.interfacePort.Value:%]"</InterfacePort>
                                    <Baudrate>"[%:Event.Argument.baudrate.Value:%]"</Baudrate>
                                    <Interface>"[%:Event.Argument.interface.Value:%]"</Interface>
                                    <UniqueId>"[%:Event.Argument.uniqueId.Value:%]"</UniqueId>
                                    <Operation>"[%:Event.Argument.operation.Value:%]"</Operation>
                                    <format>"[%:Event.Argument.format.Value:%]"</format>
                                    <Payload>"[%:Event.Argument.payload.Value:%]"</Payload>
                                    <Peripheral>"[%:Event.Argument.peripheral.Value:%]"</Peripheral>
                                </Value>
                            </Message>
                        </Invoke>
                        <Output name="Result" as="ActionResult">
                            <Value>
                                <tempValue>[%:Invoke.InvokeSerialRead.Message.Value/number(substring-before(substring-after
                                    ("[%:Invoke.InvokeSerialRead.Message.Value.received:%]",'#TCB:'), '#')):%]
                                </tempValue>
                            </Value>
                        </Output>
                    </Task>
                </Workflow>
            </Action>
</ThingFacet>
<ThingModel Name="TempSensor" combines="TempFacetSerial">
    <Sid Name="sensorId"/>
    <Reference Name="ZoneID" Type="Zone" Cardinality="1"/>
</ThingModel>

...