Iotellect SDK
The open-source Iotellect Software Development Kit (SDK) provides the ability to extend Iotellect Platform and integrate it with the other enterprise systems. Iotellect SDK is a set of open-source modules that provide compatibility with different operating systems. The modules are implemented in Java programming language. There are two different version of Iotellect Java SDK available:
Iotellect Java SDK for Java SE
Iotellect Java SDK for Android (Dalvik JVM)
Iotellect SDK includes the following components:
Iotellect Server Application Programming Interface (API) for managing Iotellect Server and connected hardware from the other applications via secure network connection
Iotellect Server Driver Development Kit (DDK) for connecting new hardware devices to the system using custom Device Drivers
Iotellect Server Plugin SDK for extending Iotellect Server with new data processing and presentation modules
Agent SDK for implementing Agents running on PC-based controllers
![]() | Driver vs Agent We're often asked what is the difference between Device Driver and Java-based Agent, so here is the brief explanation:
|
Iotellect SDK Distribution Package
The Iotellect SDK is available as a ZIP archive that contains:
Source code for the SDK (
/agggregate-api/srcfolder)Several demos of SDK usage:
/demo-apifolder/demo-agentfolder/demo-driverfolder/demo-pluginfolder/context-demo-web-appfolder
Functional and Unit tests for the demos (
/<demo name>/src/testfolders)Javadocs (
/docsfolder), including documentation for all demos.Pre-built Java Archive (JAR) with SDK classes (
/libs/aggregate-api.jar)Necessary third-party libraries (
/libs/aggregate-api-libs.jar)
Iotellect SDK Quick Start
How to get started programmatically interacting with Iotellect server instances.
Download and Configure Environment
Download and unpack the SDK distribution zip archive. The Iotellect SDK is available through the same distribution channels as the Iotellect server.
Ensure that Java Development Kit (JDK) is installed and available through either the
PATHorJAVA_HOMEenvironmental variable of the machine that will be running the solutions built with the SDK.Set up a running instance of Iotellect server. By default, all the examples are configured to interact with a server on
localhost:8080using credentials login:adminand password:admin. The final example below explains how to change this configuration to access remote servers with different credentials.
List Examples
Navigate to the directory where the SDK was extracted and run the
gradlewbinary with argument:demo-api:tasks.For Unix-like systems:
./gradlew :demo-api:tasksFor Windows:
gradlew.bat :demo-api:tasks
The output should indicate the available examples:
Playground tasks
----------------
ExecuteAction
GetServerVersion
ManageDevices
ManageUsersRunning Example Tasks
Tasks can be run using the
gradlewbinary and the argument:demo-api:<task name>. To run theGetServerVersionexample, run the following:For Unix-like systems:
./gradlew :demo-api:GetServerVersionWindows:
gradlew.bat :demo-api:GetServerVersion
The output should be something similar to the following:
> Task :demo-api:GetServerVersion
15:51:34,979 INFO ag.test Server version: 6.31.00Further Development
To see how the tasks are structured and experiment with editing them, open any of the
demo-api/src/main/java/examples/api/<task name>.javafiles in a text editor or IDE.Any changes to the file can be tested by saving the file and running the task using the
gradlewbinary.For example, by updating the following line in any of the tasks, it is possible to change the server address and connection credentials in order to connect to a remote server, or connect with a different user.
// Provide correct server address/port and name/password of server user to log in as
RemoteServer rls = new RemoteServer("localhost", RemoteServer.DEFAULT_PORT, "admin", "admin");
The included examples show a variety of use cases for interacting with an Iotellect server, and should be helpful in developing solutions for custom use cases.
Using the SDK in Java Applications
To use the Iotellect SDK for an application, you have to add the following java archives (JARs) from the /libs folder of the Distribution Package to the classpath of your Java application:
aggregate-api.jar
aggregate-api-libs.jar
The first archive contains Iotellect-specific code, while the second one contains the third-party libraries used by the SDK.
Further Information for Javadocs and Sources
For detailed information on specific classes and interfaces included in the SDK refer to:
Javadocs located in the
/docsfolder of SDK distribution packageSource code located in the
/aggregate-api/srcfolder of SDK distribution package
Java Version
Most Iotellect Server and Iotellect Client distributions include a bundled JVM. Any Java VMs installed in the OS are not used by default. Thus, any custom modules should be compiled for the version of Java used by server/client. This version can be found in system requirements (server requirements, client requirements).
Was this page helpful?
