This repository provides examples demonstrating how to use the Oracle Internet of Things Platform.
The examples and tutorials in this repository assume you have already provisioned an IoT Domain Group and an IoT Domain. The IoT from scratch example can be used to setup a complete environment from the command line.
The samples below show you how to send messages from the command line or using programming
languages.
If you want to send test messages using a GUI, you can use any MQTT-compliant client,
such as the following (Oracle has no preference or affiliation with any of these products):
- MQTT Explorer
- MQTTX
- ...
Note: The OCI IoT Platform is not an MQTT broker; you will not be able to listen for messages from your devices.
Similarly, to test the REST APIs (for example, sending telemetry or querying telemetry via ORDS endpoints), you can use:
There are several options to view telemetry:
- The APEX IoT Platform Explorer (see below): this is the easiest way to get an overview of your telemetry data.
- The APEX SQL Workshop to browse the database.
- Connect directly to the database with SQLcl or SQL Developer (see below).
- Query the database using the ORDS endpoints (see below).
Sample APEX application that allows you to browse your IoT devices as well as the messages received.
Description | Command Line | Python |
---|---|---|
IoT from scratch (Setup IoT environment from command line) | Sample | |
Manage Digital Twins (Create, query, delete). The Python sample demonstrates the use of the OCI Python SDK and the IoT Platform Data API | Sample | Sample |
Publish telemetry (HTTPS - REST API) | Sample | Sample |
Publish telemetry (MQTTS - Secure MQTT) | Sample | |
Publish telemetry (WSS - Secure MQTT over WebSocket) | Sample | |
Raw command-response scenario | Sample | |
Direct database connection — query telemetry | Sample | Sample |
You can find the online documentation for the Oracle Internet of Things Platform at docs.cloud.oracle.com.
See CONTRIBUTING.
Please consult the security guide for our responsible security vulnerability disclosure process.
See LICENSE.
Oracle and its affiliates do not provide any warranty whatsoever, express or implied, for any software, material or content of any kind contained or produced within this repository, and in particular specifically disclaim any and all implied warranties of title, non-infringement, merchantability, and fitness for a particular purpose. Furthermore, Oracle and its affiliates do not represent that any customary security review has been performed with respect to any software, material or content contained or produced within this repository. In addition, and without limiting the foregoing, third parties may have posted software, material or content to this repository without any review. Use at your own risk.