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>