Cloud利用手順

MQTT Broker「Shiftr.io」のユーザ登録、Namespace作成、Token作成

この記事では、MQTT Brokerサービスである「Shiftr.io」を使い始める手順を説明します。

主なステップは、

  • ユーザ登録
  • namespaceの作成
  • tokenの作成

です。

ユーザはnamespaceを複数個持つことができます。namespaceは1つの独立したMQTT Brokerとして機能します。同じトピック名を複数のnamespace内で使用しても、通信データが混じることはありません。

namespaceには複数のtokenを定義できます。tokenはMQTT Brokerにメッセージを読み書きする権限です。「送信、受信の両方ができるtoken」とか「受信だけのtoken」といったように行える操作に制限を設けることができます。tokenにはKey(ID)とSecret(パスワード)とが割り当てられます。

 

 

ユーザ登録

Shiftr.ioのWebページ https://shiftr.io を開き、右上にある「Sign Up」をクリックします。

必要項目を入力し、ロボットでないことのチェックを受け、利用規約に同意して、最後に「Sign Up」ボタンをクリックします。

メールアドレス確認メールが届くので、メール本文にある「Confirm my account」をクリックします。メールが届かない場合は、迷惑メールフォルダに入っていないか確認してください。

Sign Inページが開くので、Sign Upで登録したメールアドレスとパスワードを入力し、「Sign In」ボタンをクリックします。

Namespaceの作成

Sign Inに成功すると次のようなページが表示されます。右上にあるアイコン(ロボットの顔?)の上にマウスカーソルを持って行くとメニューが表示されます。

メニューにある「New Namespace」をクリックしてNamespace作成ページに移動します。メニューを使わずに、ページ本文にある「create a namespace」リンクをクリックしても同じページに移動できます。

namespaceは1つの独立したMQTT Brokerとして機能します。同じトピック名を複数のnamespace内で使用しても、通信データが混じることはありません。

「Create a new Namespace」ページが開いたら、「Name」を記入します。Nameには、アルファベット、数字、ハイフンが使えます。どんな名前でもいいですが、IoTハンズオンの説明資料では「iot-handson」という名前を付けた場合の例を使っています。「Description」は記入しなくても構いません。ここにnamespaceの用途を記入しておくと、Namespace一覧でnamespaceを選択するとき迷わずに済みます。

「private」にチェックを入れ、「Create Namespace」ボタンをクリックします。

namespaceの作成に成功すると、Namespaceページが開きます。左上には

ユーザ名/namespace名

が表示されています。ページの下部にはMQTT BrokerとClientのメッセージ送受の様子がアニメーション表示される領域があります。まだメッセージを送っていないので、中央に円が表示されているだけで、動きはありません。

Tokenの作成

Namespaceページの右上にある「Namespace Settings」をクリックします。

Namespace Settingsの設定項目の1つであるTokensページが表示されます。このページには、このNamespaceで定義されているtokenの一覧が表示されます。Namespaceを作成した直後は、「Graph」という名前のtokenだけが作られています。このtokenはメッセージ送受のアニメーションの作成に必要な情報を取得するのに使用されます。

tokenはMQTT Brokerにメッセージを読み書きする権限です。「送信、受信の両方ができるtoken」とか「受信だけのtoken」といったように行える操作に制限を設けることができます。tokenにはIDとパスワードが割り当てられます。

tokenを追加するために、右上にある「Add Token」ボタンをクリックします。

Add Tokenページが開きます。Key(ID)とSecret(パスワード)にはシステムが割り当てた文字列があらかじめ記入されています。KeyとSecretは自分で値を書き込むこともできます。ただし、Keyはshiftr.ioの他のユーザが作成したKeyと被ってはいけません。システムが割り当てた値を使えば被ることはありません。

 

Descriptionには、Tokenの用途を記入します。ここに記入しなくてもtokenは作れますが、何に使うtokenか分からなくなるので、記入しましょう。
まずBrowserからメッセージを送信するためのtokenを作りたいので、Descriptionは「Browser」にします。

ClientプログラムでKeySecretを使用するので、表示された値を控えておいてください

「Create Token」ボタンをクリックしてtokeを作成します。

Tokensページが表示されます。作成したBrowser tokenが追加されているのがわかります。MQTTのURIも表示されています。URIはkeyとsecretを含んだ構造になっています。

mqtt://key:secret@broker.shiftr.io

同じ手順で、ESP8266というtokenを作成します。こちらのKeySecret控えておいてください

TokensページにESP8266が追加されました。

左上の「iot-handson」をクリックしてiot-handsonのnamespaceページに移動してください。

 

io-thandsonのnamespaceページが表示されました。

以上で、ハンズオン用のshiftr.ioの設定は完了です。

参考:tokenのkeyとsecretを再確認する方法

方法1:DashboardページからTokensページを開く

Tokenページを開くとKeyとSecretを確認できます。DashboardページからTokenページへのページ遷移は次の通りです。

Dashboard → Namespace → Namespace Settings → Token

shiftr.ioにログインするとDashboardページが表示されます。

別のページを開いていてそこからDashboardに移動する場合は、右上のアイコン上にマウスカーソルを置き、表示されたメニューからDashboardを選択します。

Dashboardページには、所有しているnamespaceがアニメーション領域付きで一覧表示されます。namescape名をクリックするとNamespaceページに移動します。

「Namespace Settings」ボタンをクリックするとNamespace Settingsページに移動します。

Namespace Settingsページを開くと、最初はTokensページが表示されます。このページにはそのnamespaceで定義されているtokenのリストが表示されています。token名をクリックするとtoken情報変更ページが開きます。

このページはtoken新規作成ページと同じです。Key、Secret、Permission、Descriptionの確認、変更ができます。

 

方法2:Your ProfileページからTokensページを開く

Your ProfileページからTokensページへのページ遷移は次のとおりです。

Your Profile → Namespace → Namespace Settings → Token

右上のアイコンにマウスカーソルを持っていってメニューを表示させ、メニュー内のYour Profileページを開けます。アイコンをクリックしてもYour Profileページを開けます。

Your Profileページの右側にnamespaceのリストが表されているので、見たいnamespaceをクリックします。

Namespaceページ以降のページ遷移は方法1と同じです。