Java for IBM Watson IoT Platform
Overview
- Logging powered by SLF4J
- HTTP API support is provided by swagger-codegen. See com.ibm.wiotp.sdk.swagger
Documentation
https://ibm-watson-iot.github.io/iot-java/
Usage
Add a dependency on com.ibm.wiotp.sdk
to your project's pom.xml
:
<dependency>
<groupId>com.ibm.wiotp</groupId>
<artifactId>com.ibm.wiotp.sdk</artifactId>
<version>0.4.1</version>
</dependency>
Applications
Simple example that initialises an application client from environment variables, connects, sends 1 command to a device, and then disconnects.
import com.google.gson.JsonObject;
import com.ibm.wiotp.sdk.app.ApplicationClient;
import com.ibm.wiotp.sdk.codecs.JsonCodec;
class simpleTest {
public static void main(String[] args) {
ApplicationClient appClient = new ApplicationClient();
appClient.registerCodec(new JsonCodec());
appClient.connect();
JsonObject data = new JsonObject();
data.addProperty("distance", 10);
appClient.publishCommand("myDeviceType", "myDeviceId", "myCommand", data);
appClient.disconnect();
}
}
Devices
Simple example that initialises a device client from environment variables, connects, sends 1 event, and then disconnects.
import com.google.gson.JsonObject;
import com.ibm.wiotp.sdk.device.DeviceClient;
import com.ibm.wiotp.sdk.codecs.JsonCodec;
class simpleTest {
public static void main(String[] args) {
DeviceClient deviceClient = new DeviceClient();
deviceClient.registerCodec(new JsonCodec());
deviceClient.connect();
JsonObject data = new JsonObject();
data.addProperty("distance", 10);
deviceClient.publishEvent("myEvent", data);
deviceClient.disconnect();
}
}