• 検索結果がありません。

ステップ 1: IoT Connect Gateway を設定する ここでは パソコンのブラウザ上で Swagger を利用して API コマンドを利用する場合を例としてご説 明します Arcstar Universal One モバイル SIM を利用しての通信となります 1. Swagger に

N/A
N/A
Protected

Academic year: 2022

シェア "ステップ 1: IoT Connect Gateway を設定する ここでは パソコンのブラウザ上で Swagger を利用して API コマンドを利用する場合を例としてご説 明します Arcstar Universal One モバイル SIM を利用しての通信となります 1. Swagger に"

Copied!
14
0
0

読み込み中.... (全文を見る)

全文

(1)

ステップ 1: IoT Connect Gateway を設定する

ここでは、パソコンのブラウザ上で「Swagger」を利用してAPIコマンドを利用する場合を例としてご説 明します。Arcstar Universal OneモバイルSIMを利用しての通信となります。

1. Swagger にアクセスする

○ Swagger URL: https://api.icgw.ntt.com/api/index.html

2. 認証 Token を作成する

○ [POST] /api/v1/users/credentials を開く

○ [Try it out] を押す

○ Request body欄に以下を追加

(2)

{ "userName": "お客様のユーザ名", "password": "お客様のパスワード"

}

○ [Execute] を押すとtokenが作成される

※curlで送信したいユーザは、 [Execute] 押下後curl欄に表示されるコマンドをご使用くだ さい。

(3)

3. 作成した Token を使用し、 Authorize を実施する

○ [Authorize] を押す

○ Value欄に「Bearer(半角スペース)」を入力して2で作成したtokenを貼り付け、

[Authorize] を押す

以降、Swagger上でAPIを送信するとtoken情報が付与される

(4)

プロトコル変換設定( MQTT/Things IoT の場合)

上記のAuthorizeを実施したあと、下記手順をSwagger上で実施して設定を行います。

(設定を実施する際にはToken情報が付加されている必要があります。)

1. SIM に Things Cloud の MQTT Client ID を登録する

○ [PUT] /api/v1/sims/{imsi} を開き、[Try it out] を押す

○ [imsi] に使用しているSIMのimsiを入力する

○ Request body欄に以下を追加し、 [Execute] を押す

*は必須項目

項目 説明

mqttClientId * Things CloudのMQTT Client ID

Request例:

{ "mqttClientId": "mqtt-explorer-4f0ca284"

}

更新が成功する場合、レスポンスコード200 OKが返されます。

(5)

2. 新規グループを作成し、 SIM をグループへ追加する

○ [POST] /api/v1/groups を開き、 [Try it out] を押す

○ Request body欄に以下を追加し、 [Execute] を押す

*は必須項目

項目 説明

name * 任意のグループ名

sims * 本グループに追加するSIMのIMSI番号

Request例:

{ "name": "グループ1",

"sims": [ "44010123456789"]

}

Response例:

{ "id": "5fd19167c653f932439cc9ca", "name": "グループ1",

"userId": "5fd19166c653f932439cc9c9", "sims": ["44010123456789"],

"protocolConversion": []

}

→ 作成したグループの ”id” を取得

(6)

3. Things IoT の認証情報を作成する

○ [POST] /api/v1/authentications/{type} を開き、 [Try it out] を押す

○ [type] に以下を入力

項目 説明

type things-iot-credentials

○ Request body欄に以下を追加し、 [Execute] を押す

*は必須項目

項目 説明

name 任意の認証情報名

description 任意の設定概要

userName * Things CloudのユーザーID

(7)

password * Things Cloudのパスワード tenantId * Things CloudのテナントID

tenantIDはこちらから確認可能です。

Request例:

{ "name": "Things IoT Auth", "description": "testing",

"userName": "tc000.je1.thingscloud.ntt.com", "password": "password",

"tenantId": "t11111111"

}

Response例:

{ "description": "testing",

"userName": "tc000.je1.thingscloud.ntt.com", "password": "password",

"tenantId": "t11111111",

"id": "7a1dc7ad-f395-498a-9d84-a3916449d4a9", "name": "Things IoT Auth",

"type": "things-iot-credentials"

}

→ 作成した認証情報の “id” を取得

(8)

4. グループに対してプロトコル変換設定を追加する

○ [POST] /api/v1/groups/{groupId}/event/{serviceType} を開き、 [Try it out] を押す

○ groupId、serviceTypeに以下を入力

項目 説明

groupId 「1. 新規グループを作成し、SIMをグループへ追加す

る」で取得したGroup ID

pconvType mqtt

serviceType things-iot

○ Examplesプルダウンで「Things IoT」を選択し、

Request body欄に以下を追加し [Execute] を押す

(9)

*は必須項目

項目 説明

name * 任意のプロトコル変換設定名

enabled trueまたはfalse(デフォルト:true)

プロトコル変換設定を有効化する場合はtrueを設定する

path * 本GWの送信先パスとして任意に設定可能。

serviceType * things-iot

authenticationId * 「2. Things IoTの認証情報を作成する」で取得した Authentication ID

host * Things Cloudのホスト名

template * 使用するTemplate番号

topicImsi trueまたはfalse(デフォルト:true)

接続した端末のIMSI情報を送信する場合はtrueを設定す る(※1)

topicImei trueまたはfalse(デフォルト:false)

接続した端末のIMEI情報を送信する場合はtrueを設定す る

(※1)

■ (※1)追加メタデータをONにしているグループの CONNECTパケットを送信時

に同時にInventory Template(デバイスのモバイルプロパティ/111)にメタデータ情

報を入れて送信する。

Request例:

{ "name": "Things IoT MQTT", "enabled": true,

"destination": {

"serviceType": "things-iot",

"authenticationId": "ece20936-6928-4baa-9110- e458f9717657",

(10)

"host": "tc000.je1.thingscloud.ntt.com", "template": "301"

},

"options": {

"topicImsi": true, "topicImei": true }

}

Response例:

{ "destination": {

"serviceType": "things-iot",

"authenticationId": "ece20936-6928-4baa-9110- e458f9717657",

"host": "tc000.je1.thingscloud.ntt.com", "template": "301"

},

"options": {

"topicImsi": true, "topicImei": true },

"id": "b1b8e993-023c-459f-ac27-9086634a7716", "type": "mqtt",

"name": "Things IoT MQTT", "enabled": true

}

(11)

ステップ 2: IoT Connect Gateway を使用して Things IoT にデータを送信する

1. Things Cloud でデバイスを登録

Things Cloudに送信するには、デバイスを登録しなければなりません。すでに登録した場合はステ

ップ2に進んでください。

1. デバイスを登録するには、Things CloudのREST APIを利用します。以下のCURLコマン ドでデバイスを登録してください:

# curl -v -u <Things CloudのUsername>:<Things Cloudのパスワード

> \

-H 'Accept:

application/vnd.com.nsn.cumulocity.managedobject+json;

charset=UTF-8; ver=0.9' \ -H 'Content-type:

application/vnd.com.nsn.cumulocity.managedobject+json;

charset=UTF-8; ver=0.9' \ -X POST \

-d '{"c8y_IsDevice":{},"name":"<MQTT Client ID>"}' \ http://<Things Cloudのtenant-

ID>.je1.thingscloud.ntt.com/inventory/managedObjects

例:

# curl -v -u tc000.je1.thingscloud.ntt.com:password \ -H 'Accept:

application/vnd.com.nsn.cumulocity.managedobject+json;

charset=UTF-8; ver=0.9' \ -H 'Content-type:

application/vnd.com.nsn.cumulocity.managedobject+json;

charset=UTF-8; ver=0.9' \ -X POST \

-d '{"c8y_IsDevice":{},"name":"mqtt-explorer-4f0ca284"}' \ http://t11111111.je1.thingscloud.ntt.com/inventory/managedObjec ts

2. 成功するとThings Cloudは以下のレスポンスを返します。

{ "additionParents": { "self":

"https://t11111111.je1.thingscloud.ntt.com/inventory/managedObj ects/556236/additionParents",

"references": []

},

"owner": "tc000.je1.thingscloud.ntt.com", "childDevices": {

"self":

"https://t11111111.je1.thingscloud.ntt.com/inventory/managedObj ects/556236/childDevices",

(12)

"references": []

},

"childAssets": { "self":

"https://t11111111.je1.thingscloud.ntt.com/inventory/managedObj ects/556236/childAssets",

"references": []

},

"creationTime": "2021-08-19T12:11:43.261+09:00", "lastUpdated": "2021-08-19T12:11:43.261+09:00", "childAdditions": {

"self":

"https://t11111111.je1.thingscloud.ntt.com/inventory/managedObj ects/556236/childAdditions",

"references": []

},

"name": "mqtt-explorer-4f0ca284", "assetParents": {

"self":

"https://t11111111.je1.thingscloud.ntt.com/inventory/managedObj ects/556236/assetParents",

"references": []

},

"deviceParents": { "self":

"https://t11111111.je1.thingscloud.ntt.comm/inventory/managedOb jects/556236/deviceParents",

"references": []

}, "self":

"https://t11111111.je1.thingscloud.ntt.com/inventory/managedObj ects/556236",

"id": "556236", "c8y_IsDevice": {}

}

デバイス登録の詳しい情報は、こちらを参考してください:

https://developer.ntt.com/iot/docs/device-sdk/rest/

2. デバイスの準備

当ガイドでは、Mosquittoのクライアントを利用します。Raspbianであれば、下記コマンドでイン ストール可能です。

※当ガイドでは、Mosquitto v1を使用

sudo apt-get install mosquitto-clients

(13)

3. デバイスからデータを送信する

○ デバイスからのデータは、以下のトピックに送信する i. s/us

○ 送信先:an1.icgw.ntt.com 送信例:

pi@raspberrypi:~ $ mosquitto_pub -d -h an1.icgw.ntt.com -q 1 -t

"s/us" -m 'gpio_critical,Test Alarm Hello World!!! 123456' -i

"myDevice"

Client myDevice sending CONNECT Client myDevice received CONNACK (0)

Client myDevice sending PUBLISH (d0, q1, r0, m1, 's/us', ... (46 bytes))

Client myDevice received PUBACK (Mid: 100, RC:0) Client myDevice received PUBACK (Mid: 1, RC:0) Client myDevice sending DISCONNECT

4. Things Cloud で送信を確認する

○ Things Cloudにログインし、[デバイス]→[すべてのデバイス]を選択し、右のデバイスリス トから先ほど登録したデバイスを選択してください。

○ 情報画面の[発生中のクリティカルアラーム]では、送信されたアラームメッセージを確認で

きます(Template 301はアラーム送信の場合)。

○ 「4.グループに対してプロトコル変換設定を追加する」でIMSI、IMEI、MSISDNを付加し た場合、こちらに表示されます。

(14)

参照

関連したドキュメント

センチュリー・システムズ株式会社(以下、「当社」といいます。)は、WarpLink

パソコン パソコン パソコン パソコンの の の の設定 設定 設定 設定

ゕクセス方法としては、ブラウザを利用する方法、OS 標準のメール機能を利用する方法、ゕプ リケーションを利用する方法があります。

・Apple iOS について、OS 標準のメール機能またはブラウザ(Safari)を利用してください。

図 1 INIS シソーラスの 167byte 固定長のデータ(一部抜粋) 3 システムの実装 SBMサービスとして「はてなブックマーク」

Linux (Ubuntu)基礎 Linux ではアプリのアイコンをクリックして起動する以外に、 ターミナル ターミナル ターミナル ターミナル(Terminal, 端末 端末

り、ネットワーク インフラストラクチャ全体にアプリケーション ポリシーを導入し、 実行することができます。

あらかじめ、 USB ドライバをパソコンにイン ストールしておく必要があります。 ここでは、