IoTDM
Welcome to IoTDM
Introduction
The IoT Data Management (IoTDM) project is an open source implementation of oneM2M running on OpenDayLight. It is about developing a data-centric middleware that will act as a oneM2M compliant IoT Data Broker and enable authorized applications to retrieve IoT data uploaded by any device.
Project Facts
Project Creation Date: December 9th, 2014
Lifecycle State: Lithium Release
Primary Contact: Lionel Florit (lflorit@cisco.com), John Burns (johnburn@cisco.com)
Project Lead: John Burns (johnburn@cisco.com)
Committers:
lflorit@cisco.com Lionel Florit, ODL userID lflorit
johnburn@cisco.com John Burns, ODL userID jburns
jmedved@cisco.com Jan Medved
feel free to join our slack: https://join-iotdm.herokuapp.com/
Mailing List: iotdm-dev@lists.opendaylight.org
Archives: mailing list archives
Meetings: See Community Meetings
Repository: git clone https://git.opendaylight.org/gerrit/iotdm
Jenkins: jenkins silo
Gerrit Patches: code patches/reviews
Bugs:
Documentation
Getting started for users
There are several ways to use IoTDM. You may want to just send CRUD to it, you may want to install it locally and CRUD to it, or you may want to access the code and develop modules for it.
If you just want to exercise the APIs and don't want to touch the code, then follow the following procedure:
1. create a local directory and download the tar file distribution from tar.gz file here or zip file zip file here
2. rename your file to “onem2mall-karaf-1.0.0-SNAPSHOT.tar.gz” or “onem2mall-karaf-1.0.0-SNAPSHOT.zip” (if you download a zip file)
3. cd to that directory and type
tar –xvf onem2mall-karaf-1.0.0-SNAPSHOT.tar.gz
or
unzip onem2mall-karaf-1.0.0-SNAPSHOT.zip
(if you download a zip file)
4 cd into onem2mall-karaf-1.0.0-SNAPSHOT/bin
cd onem2mall-karaf-1.0.0-SNAPSHOT/bin
5. Launch IoTDM
./karaf
6. Prompt changes to opendaylight-user@root>
7. Wait for the karaf features to load
8. Verify oneM2M modules are "active"
opendaylight-user@root>list | grep onem2m
256 | Active | 80 | 0.0.1.SNAPSHOT | onem2m-api
257 | Active | 80 | 0.0.1.SNAPSHOT | onem2m-core
259 | Active | 80 | 0.0.1.SNAPSHOT | onem2m-notifier
261 | Active | 80 | 0.0.1.SNAPSHOT | onem2m-protocol-coap
262 | Active | 80 | 0.0.1.SNAPSHOT | onem2m-protocol-http
9. IoTDM is now running on port 8181 and 8282
10. Initialize the resource tree (if prompted for a username/password type admin/admin).
Send a POST to :
localhost:8181/restconf/operations/onem2m:onem2m-cse-provisioning
Headers
Content-Type application/json Accept application/json Authorization Basic YWRtaW46YWRtaW4=
Authorization is used for (user:admin, password:admin)
JSON Body
{ "input": { "onem2m-primitive": [ { "name": "CSE_ID", "value": "InCSE1" }, { "name": "CSE_TYPE", "value": "IN-CSE" } ] } }
This will create a tree called ODL-oneM2M-Cse. You are ready to exercise the CRUDs. See API examples here
A more convenient tool is Postman, we create a collection for you to try iotdm, just click the link and import the collection. https://www.getpostman.com/collections/ff0b20ed5f4d574f6fb5
Video tutorial: https://www.youtube.com/watch?v=FXjkJgw01Yo