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

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

N/A
N/A
Protected

Academic year: 2021

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

Copied!
14
0
0

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

全文

(1)

ステップ

1: IoT Connect Gateway を設定する

ここでは、パソコンのブラウザ上で「Swagger」を利用して API コマンドを利用する場合

を例としてご説明します。Arcstar Universal One モバイル SIM を利用しての通信となりま

す。

1. 証明書ファイルの用意

○ AWS IoT Core のモノの設定の際に得られた以下の証明書ファイルを準備 ■ プライベートキー:(ランダム文字列)-private.pem.key

■ このモノの証明書:(ランダム文字列)-certificate.pem.crt ■ AWS IoT のルート CA:Amazon ルート CA1 など

2. Swagger にアクセスする

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

3. 認証 Token を作成する

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

(2)

○ Request body 欄に以下を追加 { "userName": "お客様のユーザ名", "password": "お客様のパスワード" } ○ [Execute] を押すと token が作成される

※curl で送信したいユーザは、 [Execute] 押下後 curl 欄に表示されるコマン

(3)

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

○ [Authorize] を押す

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

(4)

プロトコル変換設定(

MQTT/AWS IoT の場合)

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

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

1. 新規グループを作成し、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",

(5)

"userId": "5fd19166c653f932439cc9c9", "sims": ["44010123456789"], "protocolConversion": [] } → 作成したグループの ”id” を取得

2. AWS IoT の認証情報を作成する

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

(6)

項目 説明

type x.509-credentials

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

*は必須項目 項目 説明 name 任意の認証情報名 description 任意の設定概要 privateKey * (ランダム文字列)-private.pem.key ※下記参照 rootCaCertificate * AmazonRootCA1.pem など ※下記参照 tlsCertificate * (ランダム文字列)-certificate.pem.crt ※下記参照

---BEGIN PRIVATE

KEY---\nxxxxxxxxxxxxxxxxxxxxxxxxxxx\nxxxxxxxxxxxxxxxxxxxxxxxxxxx\nxxx xxxxxxxxxxxxxxxxxxxxxxxx\n---END PRIVATE KEY---

Request 例:

{

"name": "AWS certificate", "description": "testing",

(7)

KEY---\nMIIEo(省略)---END RSA PRIVATE KEY---",

"rootCaCertificate": "---BEGIN CERTIFICATE---\nMIIDW(省 略)---END CERTIFICATE---",

"tlsCertificate": "---BEGIN CERTIFICATE---\nMIIDQ(省略)---END CERTIFICATE---"

}

Response 例:

{

"description": "testing",

"privateKey": "---BEGIN RSA PRIVATE KEY---\nMIIEo(省略)---END RSA PRIVATE KEY---",

"rootCaCertificate": "---BEGIN CERTIFICATE---\nMIIDW(省 略)---END CERTIFICATE---",

"tlsCertificate": "---BEGIN CERTIFICATE---\nMIIDQ(省略)---END CERTIFICATE---",

"id": "7a1dc7ad-f395-498a-9d84-a3916449d4a9", "name": "AWS certificate",

"type": "x.509-credentials" }

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

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

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

(8)

○ groupId、pconvType、serviceType に以下を入力 項目 説明 groupId 「1. 新規グループを作成し、SIM をグループへ追加す る」で取得したGroup ID pconvType mqtt serviceType standard-mqtt ○ Examples プルダウンで「Standard MQTT」を選択し、 Request body 欄に以下を追加し [Execute] を押す

*は必須項目

項目 説明

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

(9)

プロトコル変換設定を有効化する場合はtrue を設定する serviceType * standard-mqtt

protocol * 'mqtts'

host * AWS IoT Core の [設定] >デバイスデータエンドポイント

に記載されているエンドポイント

(ランダム文字列)-xxxxxxxxxxxxx.amazonaws.com

port * 8883

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

customSubfolder 任意の文字列 ※下記参照

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

トピックにIMSI を追加する場合は true を設定する

※下記参照

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

トピックにIMEI を追加する場合は true を設定する

※下記参照

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

トピックにMSISDN を追加する場合は true を設定する

※下記参照

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

トピックにDeviceName を追加する場合は true を設定す る ※下記参照 デバイスから送信するトピックはユーザがcustomSubfolder に入力した任意 の文字列に、true に設定したヘッダが追加され、以下の形で送信される。そ の際、 {} 内は実際の SIM 情報に置き換えられる。 ユーザが送信するトピック: /device/test/

IoT Connect Gateway から送信するトピック:

/device/test/{custom

subfolder}/{IMSI}/{IMEI}/{MSISDN}/{DeviceName}

(10)

■ データ間は ”/” でつなげる(最大 7 階層) ■ ヘッダの設定が無効化されている場合、パラメータ自体がなくなる /device/test/{custom subfolder}/{IMSI}/{MSISDN}/{DeviceName} ■ ヘッダの設定が有効化されているが、データが存在しない場合、デー タの値をNA とする /device/test/{custom subfolder}/{IMSI}/NA/{MSISDN}/{DeviceName} Request 例: { "name": "AWS HTTP", "entrypoint": { "path": "/aws-test/publish" }, "destination": { "host": "(ランダム文字列)-ats.iot.ap-northeast-1.amazonaws.com", "path": "/topics/test-topic", "authenticationId": "{awsIotAuthenticationId}", "serviceType": "aws-iot" } } Request 例: { "enabled": true, "name": "AWS MQTT", "destination": { "serviceType": "standard-mqtt", "protocol": "mqtts", "host": "(ランダム文字列)-ats.iot.ap-northeast-1.amazonaws.com", "port": 8883, "authenticationId": "7601e778-912a-44a0-9b4c-2bbbb1758080" } } Response 例: { "destination": { "serviceType": "standard-mqtt", "protocol": "mqtts", "host": "(ランダム文字列)-ats.iot.ap-northeast-1.amazonaws.com",

(11)

"port": 8883, "username": null, "password": null, "passthrough": false, "authenticationId": "50de82c6-6977-442f-b991-b2849127f93a" }, "options": { "topicImsi": true, "topicImei": false, "topicMsisdn": true, "topicDeviceName": false }, "id": "8a4790d4-1e60-4a73-81c9-9213b2c9e89f", "type": "mqtt", "name": "AWS MQTT", "enabled": true }

ステップ

2: IoT Connect Gateway を使用して

AWS IoT にデータを送信する

1. サブスクライブ

送信したデータを確認するために、使用するトピックをAWS IoT コンソールの [テ スト] よりサブスクライブしておきます。 ○ ここでは例として”iot/topic/#”というトピックを使用 ※この画面は後ほどデータの確認に使用するので、そのまま開いておく

(12)

2. デバイスの準備

当ガイドでは、Mosquitto のクライアントを利用します。Raspbian であれば、下記

コマンドでインストール可能です。 ※当ガイドでは、Mosquitto v1 を使用

sudo apt-get install mosquitto-clients

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

○ デバイスからクラウドへデータを送信 ○ 送信先:an1.icgw.ntt.com

送信例:

pi@raspberrypi: ~ $ mosquitto_pub -d -h an1.icgw.ntt.com -t "iot/topic" -m "Hello world" -i "myDevice"

Received CONNACK

Sending PUBLISH (d0, q0, r0, m1, 'iot/topic', ... (12 bytes))

上記のコマンドの通り、IoT Connect Gateway の設定を行ったグループに属

するIoT SIM で接続されているデバイスからは、証明書を指定することなく

AWS IoT へデータ送信を行うことができる。

※IoT Connect Gateway を使用しない場合は、以下のように証明書ファイル

(13)

$ mosquitto_pub --cafile rootCA.pem \ --cert cert.pem \

--key thing-private-key.pem \

-h (ランダムな値)--ats.iot.ap-northeast-1.amazonaws.com -p 8883 \

-q 1 -d -t iot/topic -i "myDevice" -m "Hello world"

4. データを確認する

○ 先ほどサブスクライブ設定した画面に戻ると、送信したデータが確認できる

ステップ

3: AWS IoT からのデータを受信する

次に、クラウドからデバイスへデータを送信します。

1. デバイスからサブスクライブ

○ 使用するデバイスからトピックをサブスクライブしておく。ここでは例とし て ”iot/topic” というトピックを使用 ○ 接続先:an1.icgw.ntt.com

pi@raspberrypi: ~$ mosquitto_sub -d -h an1.icgw.ntt.com -i "myDevice" -t "iot/topic"

Client myDevice sending CONNECT Client myDevice received CONNACK

Client myDevice sending SUBSCRIBE (Mid: 1, Topic: iot/topic, QoS: 0)

Client myDevice received SUBACK Subscribed (mid: 1): 0

2. データ送信

○ AWS IoT コンソールの [テスト] > [トピックに公開する] よりメッセージを送

(14)

{

"message": "Hello from AWS IoT" }

デバイスの方にメッセージが届き、下記のように表示される

Client myDevice received PUBLISH (d0, q0, r0, m0, 'iot/topic', ... (37 bytes))

{

"message": "Hello from AWS IoT" }

参照

関連したドキュメント

入札参加者端末でMicrosoft Edge(Chromium版)または Google

納付日の指定を行った場合は、指定した日の前日までに預貯金口座の残

BC107 は、電源を入れて自動的に GPS 信号を受信します。GPS

(※)Microsoft Edge については、2020 年 1 月 15 日以降に Microsoft 社が提供しているメジャーバージョンが 79 以降の Microsoft Edge を対象としています。2020 年 1

本装置は OS のブート方法として、Secure Boot をサポートしています。 Secure Boot とは、UEFI Boot

タップします。 6通知設定が「ON」になっ ているのを確認して「た めしに実行する」ボタン をタップします。.

えて リア 会を設 したのです そして、 リア で 会を開 して、そこに 者を 込 ような仕 けをしました そして 会を必 開 して、オブザーバーにも必 の けをし ます

Bemmann, Die Umstimmung des Tatentschlossenen zu einer schwereren oder leichteren Begehungsweise, Festschrift für Gallas(((((),