The Tinkerforge Apache Camel Component for a simple access for use the Tinkerforge Daemon, Bricks and Bricklets.
<dependency>
<groupId>org.atomspace.camel</groupId>
<artifactId>camel-tinkerforge</artifactId>
<version>2.15.2</version>
</dependency>
-
Support 100% of all Bricks and Bricklets
-
Support Selection over all Callbacks from every Bricklet
-
Support Configuration over Path-Variables
-
Support Configuration over Header-Variables inside Exchange
-
Support Request Reply Route like the Command Messages Pattern
-
Based on the model of the Tinkerforge-Generators
camel-tinkerforge-Version | Apache-Camel-Version | Tinkerforge-SDK-Version |
---|---|---|
2.14.0 | 2.14.0 | 2.1.2 |
2.15.2 | 2.15.2 | 2.1.5 |
2.15.3 | 2.15.3 | 2.1.5 |
2.17.0 | 2.17.0 | 2.1.8 |
tinkerforgegen:[host[:port]/]deviceType?[uid=uid&options...]
Name | Default Value | Description |
---|---|---|
host | localhost | Hostname / IP-Address |
port | 4223 | Port |
secret | Secret String for authenticate | |
autoReconnect | true | reconnection on broken connection |
timeout | 2500 | Timeout |
deviceType | Temperatur, Line, IO-4, Color, MotionDetector, ... | |
uid | UID of the Bricklet | |
callback | add Device Listener to ConsumerEndpoint for receive values, if callback is null all Listeners will be registrate | |
function | execute Device Function, can use for configure a ConsumerEndpoint and ProducerEndpoint or use dynamic in header for producerEndpoints |
Header | Description |
---|---|
uid | Device UID |
connectedUid | Connected UID |
deviceIdentifier | Identifier of Device |
position | Device Postiontion on Brick |
Typically connection where the daemon running on same system
<route>
<from uri="timer://foo?period=10000"/>
<to uri="tinkerforgegen:temperture?uid=ABC&function=getTemperature" />
<to uri="log:temperature?level=INFO&showHeaders=true"/>
</route>
Use remote temperatur sensor inside an Request Reply Route
<route>
<from uri="jetty:0.0.0.0:8044/bathroom" />
<to uri="tinkerforgegen:192.168.4.17:1433/temperature?uid=ABC&function=getTemperature" />
</route>
Temperatur consumer from remote masterbrick
<route>
<from uri="tinkerforgegen:192.168.4.17:1433/temperature?uid=ABC&init=setTemperatureCallbackPeriod&period=5000" />
<to uri="bean:save"/>
</route>