概要


「Gluin」は、モノと人をWebで繋ぐWoT(Web of Things)のためのツール(プラットフォーム)です。現在開発者向けに公開しております。 組み込み機器やスマートフォンなど(以下、デバイス等)を「Gluin」に繋げることで、Web上でデバイス等の情報を閲覧、制御することができます。 さらに、「Gluin」はデバイス等を他のWebアプリケーションやホームページから利用するためのAPIを提供いたします。 また、「Gluin」は複数のデバイス等の動きを組み合わせオートメーション動作を行う機能を提供いたします。

※アカウントは、ハッカソンなどのイベントを通して作成しております。サイトからの直接のアカウント作成はできませんのでご注意ください。
※Gluinは「グルーイン」と発音します。



Gluinのしくみ


■Gluinの目指すところ

 GluinとはWebを介してスマート家電やセンサー等のモノを繋ぎ合わせます。 例えばスイッチと照明。通常、スイッチと照明は物理的な対応付けがされており、ある照明Aを点けるには対応するスイッチAを押さなくてはいけません。ですから、もし家の外で消し忘れた照明Aに気づいたとき、照明Aを消すには一度家に帰らなければなりません。またベッドの中から照明Aを消そうと思っても、スイッチAのところまで移動しなければなりません。もし、この照明AがWebに繋がると、スマートフォンをスイッチA代わりにして照明AをON/OFFしたり、ベッド横の他のスイッチBと照明Aを組み合わせることで、ベッドの中から照明AのON/OFFが可能になるのです。他にも、温度や湿度、ドアや窓の開閉、はたまた炊飯器の炊き上がりまで様々な情報と制御を組み合わせることができます。
 また組み合わせるのは自分が持っているモノだけではありません。Web上に広がる様々な情報を利用したり、逆にWeb上に自分のモノの情報を提供することで、より多くの人の助けとなることもできます。また面倒な機器(モノ)の操作をアウトソーシングするなど様々な可能性を秘めています。

 Gluinはこれらのモノや情報が相互に繋がり連携する動作をサポートすることを目指しています。


図:それぞれのモノを動的に掛け合わせて価値を作る

■Gluinのアーキテクチャ概要

Gluinは主にインターネット上のクラウドサービスとして動作します。Webに繋がるモノは、一度Gluinサーバに接続され、Gluinサーバ内で組み合わせて動かしたり、そのアクセス権を外部のサービスやアプリケーションに払い出すことができます。


図:Gluinアーキテクチャ

Gluinは、下記のインタフェースを提供しています。

■Gluinに繋がるモノ

Gluinが提供するデバイス用のWebインタフェースに対応すれば実際に物理的なモノである必要ありません。デバイスが満たす要件は次の通りです。


図:Gluinへ繋がるデバイス

この接続を通して、モノはGluinサーバに情報を上げたり、逆にGluinサーバから指示を受けるようになります。

図:Gluinサーバとモノの関係

具体的なつなげ方は、デバイスの作り方をご参照ください。

■モノの組み合わせ(レシピ)

Gluinではつながったモノ(デバイス)を組み合わせて動かすことができます。基本的な考え方は、モノが出力する(Gluinサーバに情報上げる)ものと、モノへの指示(Gluinから指示を出す)の組み合わせです。

例えば、Gluinサーバに情報を上げる人感センサと、GluinサーバからON/OFFできる照明があった場合、これらをGluinで組み合わせることができます。

図:人感センサと照明

これを組み合わせると、下記のように人感センサの出力(ON/OFF)を、照明の入力(ON/OFF)につなげることができます。すると、人が来たら照明が付くというシンプルな動きが実現できます。

図:人感センサと照明の組合せ例

この例では、ON/OFFという二値の入出力ですが、他にも数値や文字列などが入出力として扱えます。また、ただ入力と出力を直結するだけではなく、いくつかの下記のロジックを利用することができます。

図:利用できるロジック

例えばIFを使った例では、温度センサの値によって、ファンの電源をON/OFFしたりすることができます。

図:IFを利用したレシピ例

また、DevideとDelayを利用すると次のような一つの操作で、複数のモノを動かすことができます

図:DivideとDelayを利用したレシピ例

これらの組み合わせ方はGluinサイトをご参照ください。





Gluinサイト利用


Gluinサイトは、Gluinサーバに接続されたデバイスやアプリ、またそれらを組み合わせたレシピを閲覧、編集するためのWebページです。現在Webブラウザ上で次の機能が利用できます。

Gluinサイト詳細ページへ





NEW
Gluinサーバ/サイトの構築


KDDIが提供するGluinサーバ/サイト以外に、各自のサーバにGluinサーバ/サイトを構築することができます。Gluinサイトはnode.js、MySQL、apache/PHPを用いて構築されており、レシピテンプレートなど自由にカスタイマイズして自分専用に用いることができるほか、KDDIサイトで一部設けられているメッセージ数のレート制限などがありません。

Gluinサーバ/サイト構築方法ページへ





Gluinデバイス/アプリ開発


■Gluinデバイス

Gluinデバイスとは、デバイス用のWebインタフェースを利用して接続するデバイス、およびWebアプリケーションを指します。WebSocketを用いてGluinサーバに接続し、常にコネクションを維持しておくことで、リアルタイムの通信を実現しています。

Gluinデバイス詳細へ




■Gluin アプリ/Webページ

Gluinアプリ/Webページとは、Webアプリ用のWebインタフェースを利用して接続するアプリケーション、及びWebページを指します。XHR(XML Http Request)を用いた、RestfulなAPIを使用し、デバイスへアクセスすることができます。また、アクセスへは各アプリごとに払い出されたTokenを使用するため、Webページなどに埋め込むことも可能です。

Gluinアプリ/Webページ詳細へ






ダウンロード


■Gluinデバイス サンプルアプリ

Gluinデバイスを作成するにあたってのサンプルアプリを提供いたします。

Gluinデバイスアプリサンプル

■Gluinアプリ/Webページ サンプル

Gluinアプリ、Webページを作成するにあたってのサンプルを提供いたします。

Gluinアプリ/Webページ サンプル

NEW
■Gluinソースコード

Gluinのソースコードです。各自のサーバにGluinサーバ/サイトを構築することができます

Gluinソースコード