summaryrefslogtreecommitdiffstats
path: root/external/meta-iot-cloud/recipes-ibm
diff options
context:
space:
mode:
Diffstat (limited to 'external/meta-iot-cloud/recipes-ibm')
-rw-r--r--external/meta-iot-cloud/recipes-ibm/ibm-iotf-embeddedc/files/Add-additional-options-to-sample-apps.patch77
-rw-r--r--external/meta-iot-cloud/recipes-ibm/ibm-iotf-embeddedc/files/Fix-cjson-library.patch36
-rw-r--r--external/meta-iot-cloud/recipes-ibm/ibm-iotf-embeddedc/files/Fix-dependencies.patch121
-rw-r--r--external/meta-iot-cloud/recipes-ibm/ibm-iotf-embeddedc/files/Remove-host-library-paths.patch27
-rw-r--r--external/meta-iot-cloud/recipes-ibm/ibm-iotf-embeddedc/ibm-iotf-embeddedc_1.0.bb88
-rw-r--r--external/meta-iot-cloud/recipes-ibm/node-red-contrib-ibm-watson-iot/node-red-contrib-ibm-watson-iot/npm-shrinkwrap.json684
-rw-r--r--external/meta-iot-cloud/recipes-ibm/node-red-contrib-ibm-watson-iot/node-red-contrib-ibm-watson-iot_0.2.8.bb21
-rw-r--r--external/meta-iot-cloud/recipes-ibm/python/python-ibmiotf.inc30
-rw-r--r--external/meta-iot-cloud/recipes-ibm/python/python3-ibmiotf_0.3.4.bb2
9 files changed, 1086 insertions, 0 deletions
diff --git a/external/meta-iot-cloud/recipes-ibm/ibm-iotf-embeddedc/files/Add-additional-options-to-sample-apps.patch b/external/meta-iot-cloud/recipes-ibm/ibm-iotf-embeddedc/files/Add-additional-options-to-sample-apps.patch
new file mode 100644
index 00000000..de0522bf
--- /dev/null
+++ b/external/meta-iot-cloud/recipes-ibm/ibm-iotf-embeddedc/files/Add-additional-options-to-sample-apps.patch
@@ -0,0 +1,77 @@
+From 796c934b3294871cb8ccb566ff6a9ae78d3ea4df Mon Sep 17 00:00:00 2001
+From: Vivek Chandra <vivek.chandrax.amancha@intel.com>
+Date: Wed, 21 Mar 2018 19:45:48 +0530
+Subject: [PATCH] Add additional options to sample apps
+
+---
+ samples/sampleDevice.c | 15 +++++++++------
+ samples/sampleGateway.c | 14 ++++++++++----
+ 2 files changed, 19 insertions(+), 10 deletions(-)
+
+diff --git a/samples/sampleDevice.c b/samples/sampleDevice.c
+index e1d78ea..5af14a2 100644
+--- a/samples/sampleDevice.c
++++ b/samples/sampleDevice.c
+@@ -40,7 +40,6 @@ int main(int argc, char const *argv[])
+ int rc = -1;
+
+ iotfclient client;
+-
+ //catch interrupt signal
+ signal(SIGINT, sigHandler);
+ signal(SIGTERM, sigHandler);
+@@ -48,16 +47,20 @@ int main(int argc, char const *argv[])
+ char* configFilePath;
+
+ if(isEMBDCHomeDefined()){
+-
+ getSamplesPath(&configFilePath);
+ configFilePath = realloc(configFilePath,strlen(configFilePath)+15);
+ strcat(configFilePath,"device.cfg");
+ }
+- else{
+- printf("IOT_EMBDC_HOME is not defined\n");
+- printf("Define IOT_EMBDC_HOME to client library path to execute samples\n");
++ //to handle if EMBDCHome not defined
++ else if(argc > 1) {
++ configFilePath = (char*)malloc(sizeof(char)*(strlen(argv[1])+3));
++ strcpy(configFilePath,argv[1]);
++ }
++ else {
++ printf("Pass the absolute path of the config file as command line argument ex: ./sampleDevice <path-to-config>/<config-file-name> or ");
++ printf("Please define IOT_EMBDC_HOME\n");
+ return -1;
+- }
++ }
+
+ rc = initialize_configfile(&client, configFilePath,0);
+ free(configFilePath);
+diff --git a/samples/sampleGateway.c b/samples/sampleGateway.c
+index 0d98f53..202ad45 100644
+--- a/samples/sampleGateway.c
++++ b/samples/sampleGateway.c
+@@ -55,11 +55,17 @@ int main(int argc, char const *argv[])
+ configFilePath = realloc(configFilePath,strlen(configFilePath)+15);
+ strcat(configFilePath,"gateway.cfg");
+ }
+- else{
+- printf("IOT_EMBDC_HOME is not defined\n");
+- printf("Define IOT_EMBDC_HOME to client library path to execute samples\n");
++ //to handle if EMBDCHome not defined
++ else if(argc > 1) {
++ configFilePath = (char*)malloc(sizeof(char)*(strlen(argv[1])+3));
++ strcpy(configFilePath,argv[1]);
++ }
++ else {
++ printf("Pass the absolute path of the config file as command line argument ex: ./sampleGateway <path-to-config>/<config-file-name> or ");
++ printf("Define IOT_EMBDC_HOME to client library path to execute samples\n");
+ return -1;
+- }
++ }
++
+
+ rc = initialize_configfile(&client, configFilePath,1);
+ free(configFilePath);
+--
+2.7.4
+
diff --git a/external/meta-iot-cloud/recipes-ibm/ibm-iotf-embeddedc/files/Fix-cjson-library.patch b/external/meta-iot-cloud/recipes-ibm/ibm-iotf-embeddedc/files/Fix-cjson-library.patch
new file mode 100644
index 00000000..f6312990
--- /dev/null
+++ b/external/meta-iot-cloud/recipes-ibm/ibm-iotf-embeddedc/files/Fix-cjson-library.patch
@@ -0,0 +1,36 @@
+From af7f5b885d5807b46bdcdb91f78a9dff689b6af8 Mon Sep 17 00:00:00 2001
+From: Scott Ware <scott.r.ware@intel.com>
+Date: Thu, 13 Apr 2017 22:51:10 +0100
+Subject: [PATCH 2/3] Fix cjson library
+
+---
+ src/CMakeLists.txt | 2 +-
+ src/devicemanagementclient.c | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 43a52cc..d0e4184 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -11,4 +11,4 @@ add_library(iotfdevicemgmt SHARED devicemanagementclient.c)
+ TARGET_LINK_LIBRARIES (iotf_network_tls_wrapper mbedcrypto mbedx509 mbedtls )
+ TARGET_LINK_LIBRARIES (iotfdeviceclient iotfclient iotf_utils iotf_network_tls_wrapper iotfmqtt)
+ TARGET_LINK_LIBRARIES (iotfgatewayclient iotfclient iotf_utils iotf_network_tls_wrapper iotfmqtt)
+-TARGET_LINK_LIBRARIES (iotfdevicemgmt iotfclient iotfdeviceclient cJSON iotf_utils iotf_network_tls_wrapper iotfmqtt)
++TARGET_LINK_LIBRARIES (iotfdevicemgmt iotfclient iotfdeviceclient cjson iotf_utils iotf_network_tls_wrapper iotfmqtt)
+diff --git a/src/devicemanagementclient.c b/src/devicemanagementclient.c
+index 2bb8bc5..13f4b07 100644
+--- a/src/devicemanagementclient.c
++++ b/src/devicemanagementclient.c
+@@ -21,7 +21,7 @@
+
+
+ #include "devicemanagementclient.h"
+-#include "cJSON.h"
++#include "cjson/cJSON.h"
+
+ //Character strings to hold log header and log message to be dumped.
+ char logHdr[LOG_BUF];
+--
+1.9.1
+
diff --git a/external/meta-iot-cloud/recipes-ibm/ibm-iotf-embeddedc/files/Fix-dependencies.patch b/external/meta-iot-cloud/recipes-ibm/ibm-iotf-embeddedc/files/Fix-dependencies.patch
new file mode 100644
index 00000000..2bc748e4
--- /dev/null
+++ b/external/meta-iot-cloud/recipes-ibm/ibm-iotf-embeddedc/files/Fix-dependencies.patch
@@ -0,0 +1,121 @@
+From 811d81859dd0525a160df4aae83d3f729a7a39ff Mon Sep 17 00:00:00 2001
+From: Scott Ware <scott.r.ware@intel.com>
+Date: Thu, 13 Apr 2017 22:44:45 +0100
+Subject: [PATCH 1/3] Fix dependencies
+
+---
+ lib/CMakeLists.txt | 86 +-----------------------------------------------------
+ src/CMakeLists.txt | 6 ++--
+ 2 files changed, 4 insertions(+), 88 deletions(-)
+
+diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
+index fbb1b76..02a3e7e 100644
+--- a/lib/CMakeLists.txt
++++ b/lib/CMakeLists.txt
+@@ -15,88 +15,4 @@ set(src_mqtt
+ MQTTUnsubscribeClient.c
+ )
+
+-set(src_crypto
+- aes.c
+- aesni.c
+- arc4.c
+- asn1parse.c
+- asn1write.c
+- base64.c
+- bignum.c
+- blowfish.c
+- camellia.c
+- ccm.c
+- cipher.c
+- cipher_wrap.c
+- cmac.c
+- ctr_drbg.c
+- des.c
+- dhm.c
+- ecdh.c
+- ecdsa.c
+- ecjpake.c
+- ecp.c
+- ecp_curves.c
+- entropy.c
+- entropy_poll.c
+- error.c
+- gcm.c
+- havege.c
+- hmac_drbg.c
+- md.c
+- md2.c
+- md4.c
+- md5.c
+- md_wrap.c
+- memory_buffer_alloc.c
+- oid.c
+- padlock.c
+- pem.c
+- pk.c
+- pk_wrap.c
+- pkcs12.c
+- pkcs5.c
+- pkparse.c
+- pkwrite.c
+- platform.c
+- ripemd160.c
+- rsa.c
+- sha1.c
+- sha256.c
+- sha512.c
+- threading.c
+- timing.c
+- version.c
+- version_features.c
+- xtea.c
+-)
+-
+-set(src_x509
+- certs.c
+- pkcs11.c
+- x509.c
+- x509_create.c
+- x509_crl.c
+- x509_crt.c
+- x509_csr.c
+- x509write_crt.c
+- x509write_csr.c
+-)
+-
+-set(src_tls
+- debug.c
+- net_sockets.c
+- ssl_cache.c
+- ssl_ciphersuites.c
+- ssl_cli.c
+- ssl_cookie.c
+- ssl_srv.c
+- ssl_ticket.c
+- ssl_tls.c
+-)
+-
+-add_library(cJSON cJSON.c)
+-add_library(mqttlib ${src_mqtt})
+-add_library(mbedcrypto ${src_crypto})
+-add_library(mbedx509 ${src_x509})
+-add_library(mbedtls ${src_tls})
++add_library(iotfmqtt ${src_mqtt})
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index db75a98..43a52cc 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -9,6 +9,6 @@ add_library(iotfgatewayclient SHARED gatewayclient.c)
+ add_library(iotfdevicemgmt SHARED devicemanagementclient.c)
+
+ TARGET_LINK_LIBRARIES (iotf_network_tls_wrapper mbedcrypto mbedx509 mbedtls )
+-TARGET_LINK_LIBRARIES (iotfdeviceclient iotfclient iotf_utils iotf_network_tls_wrapper mqttlib)
+-TARGET_LINK_LIBRARIES (iotfgatewayclient iotfclient iotf_utils iotf_network_tls_wrapper mqttlib)
+-TARGET_LINK_LIBRARIES (iotfdevicemgmt iotfclient iotfdeviceclient cJSON iotf_utils iotf_network_tls_wrapper mqttlib)
++TARGET_LINK_LIBRARIES (iotfdeviceclient iotfclient iotf_utils iotf_network_tls_wrapper iotfmqtt)
++TARGET_LINK_LIBRARIES (iotfgatewayclient iotfclient iotf_utils iotf_network_tls_wrapper iotfmqtt)
++TARGET_LINK_LIBRARIES (iotfdevicemgmt iotfclient iotfdeviceclient cJSON iotf_utils iotf_network_tls_wrapper iotfmqtt)
+--
+1.9.1
+
diff --git a/external/meta-iot-cloud/recipes-ibm/ibm-iotf-embeddedc/files/Remove-host-library-paths.patch b/external/meta-iot-cloud/recipes-ibm/ibm-iotf-embeddedc/files/Remove-host-library-paths.patch
new file mode 100644
index 00000000..622645e4
--- /dev/null
+++ b/external/meta-iot-cloud/recipes-ibm/ibm-iotf-embeddedc/files/Remove-host-library-paths.patch
@@ -0,0 +1,27 @@
+From ffcc01e562a7c016941e153e1540d13d10ce6b6a Mon Sep 17 00:00:00 2001
+From: Scott Ware <scott.r.ware@intel.com>
+Date: Thu, 13 Apr 2017 23:15:53 +0100
+Subject: [PATCH 3/3] Remove host library paths
+
+---
+ CMakeLists.txt | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 87a2c44..5504c49 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -4,8 +4,8 @@ enable_testing()
+
+ option (run_tests "set run_tests to ON if build tests should be run, set to OFF to skip tests" ON)
+ SET(CMAKE_CXX_FLAGS "-g -O0 -Wall -fprofile-arcs -ftest-coverage -fPIC ${CMAKE_CXX_FLAGS} ")
+-SET(CMAKE_C_FLAGS "-g -O0 -Wall -W -fprofile-arcs -ftest-coverage -fPIC ${CMAKE_C_FLAGS} -I/usr/local/include")
+-SET(CMAKE_EXE_LINKER_FLAGS "-fprofile-arcs -ftest-coverage ${CMAKE_EXE_LINKER_FLAGS} -L/usr/local/lib")
++SET(CMAKE_C_FLAGS "-g -O0 -Wall -W -fprofile-arcs -ftest-coverage -fPIC ${CMAKE_C_FLAGS} ")
++SET(CMAKE_EXE_LINKER_FLAGS "-fprofile-arcs -ftest-coverage ${CMAKE_EXE_LINKER_FLAGS} ")
+
+ if (run_tests)
+ add_subdirectory(test)
+--
+1.9.1
+
diff --git a/external/meta-iot-cloud/recipes-ibm/ibm-iotf-embeddedc/ibm-iotf-embeddedc_1.0.bb b/external/meta-iot-cloud/recipes-ibm/ibm-iotf-embeddedc/ibm-iotf-embeddedc_1.0.bb
new file mode 100644
index 00000000..c1124944
--- /dev/null
+++ b/external/meta-iot-cloud/recipes-ibm/ibm-iotf-embeddedc/ibm-iotf-embeddedc_1.0.bb
@@ -0,0 +1,88 @@
+DESCRIPTION = "Embedded C client for interacting with the IBM Watson Internet of Things Platform"
+HOMEPAGE = "https://github.com/ibm-messaging/iotf-embeddedc"
+LICENSE = "EPL-1.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=30b3836521b3d65bef598bbc358a3afa"
+
+inherit cmake
+
+DEPENDS = "\
+ mbedtls \
+ cjson \
+"
+
+SRC_URI = "\
+ git://github.com/ibm-watson-iot/iot-embeddedc.git \
+ file://Fix-dependencies.patch \
+ file://Fix-cjson-library.patch \
+ file://Remove-host-library-paths.patch \
+ file://Add-additional-options-to-sample-apps.patch \
+"
+SRCREV = "809af3b63294d0c5302cc15e3652c65843907cf2"
+
+# MQTT Library
+SRC_URI += "git://github.com/eclipse/paho.mqtt.embedded-c.git;destsuffix=git-mqtt;name=mqtt"
+SRCREV_mqtt = "5714645c762177ff08086224a7a9ce0b9d541316"
+
+PR = "r1"
+
+S = "${WORKDIR}/git"
+
+PACKAGES = "\
+ ${PN} \
+ ${PN}-dbg \
+ ${PN}-dev \
+ ${PN}-samples \
+"
+
+EXTRA_OECMAKE = "-DBUILD_SHARED_LIBS:BOOL=ON -Drun_tests:BOOL=OFF"
+OECMAKE_C_FLAGS_append = " -lm"
+
+do_configure_prepend() {
+ # Configure MQTT library
+ cp ${WORKDIR}/git-mqtt/MQTTPacket/src/* ${S}/lib/
+ cp ${WORKDIR}/git-mqtt/MQTTClient-C/src/MQTTClient.* ${S}/lib/
+ sed -i 's|""|"iotf_network_tls_wrapper.h"|g' ${S}/lib/MQTTClient.h
+}
+
+do_install() {
+ install -d ${D}${libdir}
+ install -m 0644 ${WORKDIR}/build/lib/*.so ${D}${libdir}
+ install -m 0644 ${WORKDIR}/build/src/*.so ${D}${libdir}
+
+ install -d ${D}${includedir}/ibmiotf
+ install -m 0644 ${S}/src/*.h ${D}${includedir}/ibmiotf
+ install -m 0644 ${S}/lib/*.h ${D}${includedir}/ibmiotf
+
+ # Samples
+ install -d ${D}${datadir}/ibmiotfsdk/samples/c
+ install -m 0755 ${WORKDIR}/build/samples/helloWorld ${D}${datadir}/ibmiotfsdk/samples/c/
+ install -m 0755 ${WORKDIR}/build/samples/sampleDevice ${D}${datadir}/ibmiotfsdk/samples/c/
+ install -m 0755 ${WORKDIR}/build/samples/sampleGateway ${D}${datadir}/ibmiotfsdk/samples/c/
+ install -m 0644 ${S}/samples/device.cfg ${D}${datadir}/ibmiotfsdk/samples/c/
+ install -m 0644 ${S}/samples/gateway.cfg ${D}${datadir}/ibmiotfsdk/samples/c/
+ install -m 0644 ${S}/IoTFoundation.pem ${D}${datadir}/ibmiotfsdk/
+}
+
+FILES_${PN} += "\
+ ${libdir}/* \
+"
+
+FILES_${PN}-dev += "\
+ ${includedir}/* \
+"
+
+FILES_${PN}-dbg += "\
+ ${datadir}/ibmiotfsdk/samples/c/.debug \
+"
+
+FILES_${PN}-samples += "\
+ ${datadir}/ibmiotfsdk/samples/c/helloWorld \
+ ${datadir}/ibmiotfsdk/samples/c/sampleDevice \
+ ${datadir}/ibmiotfsdk/samples/c/sampleGateway \
+ ${datadir}/ibmiotfsdk/samples/c/device.cfg \
+ ${datadir}/ibmiotfsdk/samples/c/gateway.cfg \
+ ${datadir}/ibmiotfsdk/IoTFoundation.pem \
+"
+
+INSANE_SKIP_${PN} += "rpaths"
+INSANE_SKIP_${PN}-samples += "rpaths"
diff --git a/external/meta-iot-cloud/recipes-ibm/node-red-contrib-ibm-watson-iot/node-red-contrib-ibm-watson-iot/npm-shrinkwrap.json b/external/meta-iot-cloud/recipes-ibm/node-red-contrib-ibm-watson-iot/node-red-contrib-ibm-watson-iot/npm-shrinkwrap.json
new file mode 100644
index 00000000..b5b87103
--- /dev/null
+++ b/external/meta-iot-cloud/recipes-ibm/node-red-contrib-ibm-watson-iot/node-red-contrib-ibm-watson-iot/npm-shrinkwrap.json
@@ -0,0 +1,684 @@
+{
+ "name": "node-red-contrib-ibm-watson-iot",
+ "version": "0.2.8",
+ "lockfileVersion": 1,
+ "requires": true,
+ "dependencies": {
+ "async-limiter": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz",
+ "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ=="
+ },
+ "asynckit": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
+ "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
+ },
+ "axios": {
+ "version": "0.5.4",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-0.5.4.tgz",
+ "integrity": "sha1-4G+FIleDgTPmkJTZJcy0Gd6U/fs=",
+ "requires": {
+ "es6-promise": "^2.0.1"
+ }
+ },
+ "balanced-match": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
+ "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c="
+ },
+ "bl": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz",
+ "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==",
+ "requires": {
+ "readable-stream": "^2.3.5",
+ "safe-buffer": "^5.1.1"
+ }
+ },
+ "bluebird": {
+ "version": "2.11.0",
+ "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-2.11.0.tgz",
+ "integrity": "sha1-U0uQM8AiyVecVro7Plpcqvu2UOE="
+ },
+ "brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "requires": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "btoa": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz",
+ "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g=="
+ },
+ "buffer-from": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
+ "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A=="
+ },
+ "callback-stream": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/callback-stream/-/callback-stream-1.1.0.tgz",
+ "integrity": "sha1-RwGlEmbwbgbqpx/BcjOCLYdfSQg=",
+ "requires": {
+ "inherits": "^2.0.1",
+ "readable-stream": "> 1.0.0 < 3.0.0"
+ }
+ },
+ "combined-stream": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
+ "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
+ "requires": {
+ "delayed-stream": "~1.0.0"
+ }
+ },
+ "commist": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/commist/-/commist-1.1.0.tgz",
+ "integrity": "sha512-rraC8NXWOEjhADbZe9QBNzLAN5Q3fsTPQtBV+fEVj6xKIgDgNiEVE6ZNfHpZOqfQ21YUzfVNUXLOEZquYvQPPg==",
+ "requires": {
+ "leven": "^2.1.0",
+ "minimist": "^1.1.0"
+ }
+ },
+ "concat-map": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
+ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
+ },
+ "concat-stream": {
+ "version": "1.6.2",
+ "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
+ "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
+ "requires": {
+ "buffer-from": "^1.0.0",
+ "inherits": "^2.0.3",
+ "readable-stream": "^2.2.2",
+ "typedarray": "^0.0.6"
+ }
+ },
+ "core-util-is": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
+ "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
+ },
+ "d": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz",
+ "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==",
+ "requires": {
+ "es5-ext": "^0.10.50",
+ "type": "^1.0.1"
+ }
+ },
+ "delayed-stream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
+ "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk="
+ },
+ "duplexify": {
+ "version": "3.7.1",
+ "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz",
+ "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==",
+ "requires": {
+ "end-of-stream": "^1.0.0",
+ "inherits": "^2.0.1",
+ "readable-stream": "^2.0.0",
+ "stream-shift": "^1.0.0"
+ }
+ },
+ "end-of-stream": {
+ "version": "1.4.4",
+ "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
+ "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
+ "requires": {
+ "once": "^1.4.0"
+ }
+ },
+ "es5-ext": {
+ "version": "0.10.53",
+ "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz",
+ "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==",
+ "requires": {
+ "es6-iterator": "~2.0.3",
+ "es6-symbol": "~3.1.3",
+ "next-tick": "~1.0.0"
+ }
+ },
+ "es6-iterator": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz",
+ "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=",
+ "requires": {
+ "d": "1",
+ "es5-ext": "^0.10.35",
+ "es6-symbol": "^3.1.1"
+ }
+ },
+ "es6-map": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz",
+ "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=",
+ "requires": {
+ "d": "1",
+ "es5-ext": "~0.10.14",
+ "es6-iterator": "~2.0.1",
+ "es6-set": "~0.1.5",
+ "es6-symbol": "~3.1.1",
+ "event-emitter": "~0.3.5"
+ }
+ },
+ "es6-promise": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-2.3.0.tgz",
+ "integrity": "sha1-lu258v2wGZWCKyY92KratnSBgbw="
+ },
+ "es6-set": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz",
+ "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=",
+ "requires": {
+ "d": "1",
+ "es5-ext": "~0.10.14",
+ "es6-iterator": "~2.0.1",
+ "es6-symbol": "3.1.1",
+ "event-emitter": "~0.3.5"
+ },
+ "dependencies": {
+ "es6-symbol": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz",
+ "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=",
+ "requires": {
+ "d": "1",
+ "es5-ext": "~0.10.14"
+ }
+ }
+ }
+ },
+ "es6-symbol": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz",
+ "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==",
+ "requires": {
+ "d": "^1.0.1",
+ "ext": "^1.1.2"
+ }
+ },
+ "event-emitter": {
+ "version": "0.3.5",
+ "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz",
+ "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=",
+ "requires": {
+ "d": "1",
+ "es5-ext": "~0.10.14"
+ }
+ },
+ "events": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz",
+ "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ="
+ },
+ "ext": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz",
+ "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==",
+ "requires": {
+ "type": "^2.0.0"
+ },
+ "dependencies": {
+ "type": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz",
+ "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow=="
+ }
+ }
+ },
+ "extend": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
+ "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
+ },
+ "form-data": {
+ "version": "2.5.1",
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz",
+ "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==",
+ "requires": {
+ "asynckit": "^0.4.0",
+ "combined-stream": "^1.0.6",
+ "mime-types": "^2.1.12"
+ }
+ },
+ "format": {
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz",
+ "integrity": "sha1-1hcBB+nv3E7TDJ3DkBbflCtctYs="
+ },
+ "fs.realpath": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
+ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
+ },
+ "glob": {
+ "version": "7.1.6",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
+ "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
+ "requires": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.4",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ }
+ },
+ "glob-parent": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
+ "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
+ "requires": {
+ "is-glob": "^3.1.0",
+ "path-dirname": "^1.0.0"
+ }
+ },
+ "glob-stream": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-6.1.0.tgz",
+ "integrity": "sha1-cEXJlBOz65SIjYOrRtC0BMx73eQ=",
+ "requires": {
+ "extend": "^3.0.0",
+ "glob": "^7.1.1",
+ "glob-parent": "^3.1.0",
+ "is-negated-glob": "^1.0.0",
+ "ordered-read-streams": "^1.0.0",
+ "pumpify": "^1.3.5",
+ "readable-stream": "^2.1.5",
+ "remove-trailing-separator": "^1.0.1",
+ "to-absolute-glob": "^2.0.0",
+ "unique-stream": "^2.0.2"
+ }
+ },
+ "help-me": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/help-me/-/help-me-1.1.0.tgz",
+ "integrity": "sha1-jy1QjQYAtKRW2i8IZVbn5cBWo8Y=",
+ "requires": {
+ "callback-stream": "^1.0.2",
+ "glob-stream": "^6.1.0",
+ "through2": "^2.0.1",
+ "xtend": "^4.0.0"
+ }
+ },
+ "ibmiotf": {
+ "version": "0.2.41",
+ "resolved": "https://registry.npmjs.org/ibmiotf/-/ibmiotf-0.2.41.tgz",
+ "integrity": "sha512-oOdGmi19h7x61EMGiE+cDAt9SDbBIQaNyhqhNi31ndtU3Qt6ohiG0ltHvrrmh9UmIyJwa21cq2hFP7aCsYqz/w==",
+ "requires": {
+ "axios": "^0.5.4",
+ "bluebird": "^2.9.34",
+ "btoa": "^1.1.2",
+ "concat-stream": "^1.6.0",
+ "events": "^1.0.2",
+ "form-data": "^2.2.0",
+ "format": "^0.2.1",
+ "loglevel": "^1.4.0",
+ "mqtt": "^2.8.2"
+ }
+ },
+ "inflight": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
+ "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
+ "requires": {
+ "once": "^1.3.0",
+ "wrappy": "1"
+ }
+ },
+ "inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
+ },
+ "is-absolute": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz",
+ "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==",
+ "requires": {
+ "is-relative": "^1.0.0",
+ "is-windows": "^1.0.1"
+ }
+ },
+ "is-extglob": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
+ "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI="
+ },
+ "is-glob": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
+ "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
+ "requires": {
+ "is-extglob": "^2.1.0"
+ }
+ },
+ "is-negated-glob": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz",
+ "integrity": "sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI="
+ },
+ "is-relative": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz",
+ "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==",
+ "requires": {
+ "is-unc-path": "^1.0.0"
+ }
+ },
+ "is-unc-path": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz",
+ "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==",
+ "requires": {
+ "unc-path-regex": "^0.1.2"
+ }
+ },
+ "is-windows": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
+ "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA=="
+ },
+ "isarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+ "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
+ },
+ "json-stable-stringify-without-jsonify": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
+ "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE="
+ },
+ "leven": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz",
+ "integrity": "sha1-wuep93IJTe6dNCAq6KzORoeHVYA="
+ },
+ "loglevel": {
+ "version": "1.6.6",
+ "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.6.tgz",
+ "integrity": "sha512-Sgr5lbboAUBo3eXCSPL4/KoVz3ROKquOjcctxmHIt+vol2DrqTQe3SwkKKuYhEiWB5kYa13YyopJ69deJ1irzQ=="
+ },
+ "mime-db": {
+ "version": "1.43.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz",
+ "integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ=="
+ },
+ "mime-types": {
+ "version": "2.1.26",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz",
+ "integrity": "sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==",
+ "requires": {
+ "mime-db": "1.43.0"
+ }
+ },
+ "minimatch": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+ "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+ "requires": {
+ "brace-expansion": "^1.1.7"
+ }
+ },
+ "minimist": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
+ "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ="
+ },
+ "mqtt": {
+ "version": "2.18.8",
+ "resolved": "https://registry.npmjs.org/mqtt/-/mqtt-2.18.8.tgz",
+ "integrity": "sha512-3h6oHlPY/yWwtC2J3geraYRtVVoRM6wdI+uchF4nvSSafXPZnaKqF8xnX+S22SU/FcgEAgockVIlOaAX3fkMpA==",
+ "requires": {
+ "commist": "^1.0.0",
+ "concat-stream": "^1.6.2",
+ "end-of-stream": "^1.4.1",
+ "es6-map": "^0.1.5",
+ "help-me": "^1.0.1",
+ "inherits": "^2.0.3",
+ "minimist": "^1.2.0",
+ "mqtt-packet": "^5.6.0",
+ "pump": "^3.0.0",
+ "readable-stream": "^2.3.6",
+ "reinterval": "^1.1.0",
+ "split2": "^2.1.1",
+ "websocket-stream": "^5.1.2",
+ "xtend": "^4.0.1"
+ }
+ },
+ "mqtt-packet": {
+ "version": "5.6.1",
+ "resolved": "https://registry.npmjs.org/mqtt-packet/-/mqtt-packet-5.6.1.tgz",
+ "integrity": "sha512-eaF9rO2uFrIYEHomJxziuKTDkbWW5psLBaIGCazQSKqYsTaB3n4SpvJ1PexKaDBiPnMLPIFWBIiTYT3IfEJfww==",
+ "requires": {
+ "bl": "^1.2.1",
+ "inherits": "^2.0.3",
+ "process-nextick-args": "^2.0.0",
+ "safe-buffer": "^5.1.0"
+ }
+ },
+ "next-tick": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz",
+ "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw="
+ },
+ "once": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
+ "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
+ "requires": {
+ "wrappy": "1"
+ }
+ },
+ "ordered-read-streams": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz",
+ "integrity": "sha1-d8DLN8QVJdZBZtmQ/61+xqDhNj4=",
+ "requires": {
+ "readable-stream": "^2.0.1"
+ }
+ },
+ "path-dirname": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz",
+ "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA="
+ },
+ "path-is-absolute": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
+ "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18="
+ },
+ "process-nextick-args": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
+ "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="
+ },
+ "pump": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz",
+ "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==",
+ "requires": {
+ "end-of-stream": "^1.1.0",
+ "once": "^1.3.1"
+ }
+ },
+ "pumpify": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz",
+ "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==",
+ "requires": {
+ "duplexify": "^3.6.0",
+ "inherits": "^2.0.3",
+ "pump": "^2.0.0"
+ },
+ "dependencies": {
+ "pump": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz",
+ "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==",
+ "requires": {
+ "end-of-stream": "^1.1.0",
+ "once": "^1.3.1"
+ }
+ }
+ }
+ },
+ "readable-stream": {
+ "version": "2.3.7",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
+ "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
+ "requires": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.3",
+ "isarray": "~1.0.0",
+ "process-nextick-args": "~2.0.0",
+ "safe-buffer": "~5.1.1",
+ "string_decoder": "~1.1.1",
+ "util-deprecate": "~1.0.1"
+ }
+ },
+ "reinterval": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/reinterval/-/reinterval-1.1.0.tgz",
+ "integrity": "sha1-M2Hs+jymwYKDOA3Qu5VG85D17Oc="
+ },
+ "remove-trailing-separator": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
+ "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8="
+ },
+ "safe-buffer": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
+ },
+ "split2": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/split2/-/split2-2.2.0.tgz",
+ "integrity": "sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw==",
+ "requires": {
+ "through2": "^2.0.2"
+ }
+ },
+ "stream-shift": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz",
+ "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ=="
+ },
+ "string_decoder": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
+ "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
+ "requires": {
+ "safe-buffer": "~5.1.0"
+ }
+ },
+ "through2": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
+ "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
+ "requires": {
+ "readable-stream": "~2.3.6",
+ "xtend": "~4.0.1"
+ }
+ },
+ "through2-filter": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/through2-filter/-/through2-filter-3.0.0.tgz",
+ "integrity": "sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA==",
+ "requires": {
+ "through2": "~2.0.0",
+ "xtend": "~4.0.0"
+ }
+ },
+ "to-absolute-glob": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz",
+ "integrity": "sha1-GGX0PZ50sIItufFFt4z/fQ98hJs=",
+ "requires": {
+ "is-absolute": "^1.0.0",
+ "is-negated-glob": "^1.0.0"
+ }
+ },
+ "type": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz",
+ "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg=="
+ },
+ "typedarray": {
+ "version": "0.0.6",
+ "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
+ "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c="
+ },
+ "ultron": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz",
+ "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og=="
+ },
+ "unc-path-regex": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz",
+ "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo="
+ },
+ "unique-stream": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.3.1.tgz",
+ "integrity": "sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A==",
+ "requires": {
+ "json-stable-stringify-without-jsonify": "^1.0.1",
+ "through2-filter": "^3.0.0"
+ }
+ },
+ "util-deprecate": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
+ "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
+ },
+ "websocket-stream": {
+ "version": "5.5.0",
+ "resolved": "https://registry.npmjs.org/websocket-stream/-/websocket-stream-5.5.0.tgz",
+ "integrity": "sha512-EXy/zXb9kNHI07TIMz1oIUIrPZxQRA8aeJ5XYg5ihV8K4kD1DuA+FY6R96HfdIHzlSzS8HiISAfrm+vVQkZBug==",
+ "requires": {
+ "duplexify": "^3.5.1",
+ "inherits": "^2.0.1",
+ "readable-stream": "^2.3.3",
+ "safe-buffer": "^5.1.2",
+ "ws": "^3.2.0",
+ "xtend": "^4.0.0"
+ }
+ },
+ "wrappy": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
+ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
+ },
+ "ws": {
+ "version": "3.3.3",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz",
+ "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==",
+ "requires": {
+ "async-limiter": "~1.0.0",
+ "safe-buffer": "~5.1.0",
+ "ultron": "~1.1.0"
+ }
+ },
+ "xtend": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
+ "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ=="
+ }
+ }
+}
diff --git a/external/meta-iot-cloud/recipes-ibm/node-red-contrib-ibm-watson-iot/node-red-contrib-ibm-watson-iot_0.2.8.bb b/external/meta-iot-cloud/recipes-ibm/node-red-contrib-ibm-watson-iot/node-red-contrib-ibm-watson-iot_0.2.8.bb
new file mode 100644
index 00000000..34053982
--- /dev/null
+++ b/external/meta-iot-cloud/recipes-ibm/node-red-contrib-ibm-watson-iot/node-red-contrib-ibm-watson-iot_0.2.8.bb
@@ -0,0 +1,21 @@
+DESCRIPTION = "Connect to IBM Watson Internet of Things Plaform as a Device or Gateway"
+AUTHOR = "Nick O'Leary"
+HOMEPAGE = "https://github.com/ibm-watson-iot/node-red-contrib-ibm-watson-iot"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=9812725859172d1c78fb60518d16fe64"
+
+inherit npm
+
+RDEPENDS_${PN} = "\
+ bash \
+ node-red \
+"
+
+SRC_URI = "\
+ npm://registry.npmjs.org;package=${BPN};version=${PV} \
+ npmsw://${THISDIR}/${BPN}/npm-shrinkwrap.json \
+"
+
+PR = "r1"
+
+S = "${WORKDIR}/npm"
diff --git a/external/meta-iot-cloud/recipes-ibm/python/python-ibmiotf.inc b/external/meta-iot-cloud/recipes-ibm/python/python-ibmiotf.inc
new file mode 100644
index 00000000..e5f19f6a
--- /dev/null
+++ b/external/meta-iot-cloud/recipes-ibm/python/python-ibmiotf.inc
@@ -0,0 +1,30 @@
+DESCRIPTION = "Python Client for IBM Watson IoT Platform"
+AUTHOR = "David Parker"
+HOMEPAGE = "https://github.com/ibm-watson-iot/iot-python"
+LICENSE = "EPL-1.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=30b3836521b3d65bef598bbc358a3afa"
+
+PR = "r0"
+
+RDEPENDS_${PN} = "\
+ ${PYTHON_PN}-json \
+ ${PYTHON_PN}-datetime \
+ ${PYTHON_PN}-threading \
+ ${PYTHON_PN}-netclient \
+ ${PYTHON_PN}-setuptools \
+"
+
+RDEPENDS_${PN} += "\
+ ${PYTHON_PN}-iso8601 \
+ ${PYTHON_PN}-paho-mqtt \
+ ${PYTHON_PN}-pytz \
+ ${PYTHON_PN}-requests \
+ ${PYTHON_PN}-requests-toolbelt \
+ ${PYTHON_PN}-dicttoxml \
+ ${PYTHON_PN}-xmltodict \
+"
+
+SRC_URI = "git://github.com/ibm-watson-iot/iot-python.git"
+SRCREV = "d334fe9a61823054ba9c200fdd56e0ee050d5b1e"
+
+S = "${WORKDIR}/git"
diff --git a/external/meta-iot-cloud/recipes-ibm/python/python3-ibmiotf_0.3.4.bb b/external/meta-iot-cloud/recipes-ibm/python/python3-ibmiotf_0.3.4.bb
new file mode 100644
index 00000000..d296ac4d
--- /dev/null
+++ b/external/meta-iot-cloud/recipes-ibm/python/python3-ibmiotf_0.3.4.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-ibmiotf.inc