[enebular][Node-RED][IoT][Treasure Data] Node-REDで簡単アプリケーション開発

By |10月 13, 2014|enebular, IoT, Javascript, Node-RED, Node.js, OSS, Treasure Data, twitter, |


Dreamforce開始直前で(しかも休日に)全く関係ないネタを。

弊社は最近IoT地味てまして私もしこしこMQTT Meetupなんかに参加しているわけですが、そこでMQTTの仕様を固めた中心的な存在であるIBMさんがデモをした時にNode-REDという画面がチラっと見えたんですね。

色々ググるとIBMのNick O’Leary氏がNode-REDで「モノのインターネット」をデモと今年の6月に日本語記事もあったり、なんとオープンソースだったりしたもんですから早速触ってみた訳です。

Node-REDに書いている通りIoTのデバイスにこいつを仕込んでキャプチャのようなVisual Flow的な画面でデバイスへのデータのI/Oを設定する、そんなアプリケーションなので弊社で年内にリリース予定の「enebular」という以下のような画面のIoT/M2M向けサービスに組み込んでいるところでした。

ご覧のようにIoTだけじゃなくてTwitterのストリーミングAPIから取得したデータをTreasureDataへ保存したりなんかもできます。

普通のLinuxサーバ上でソーシャルデータ収集アプリとかTwitter botくらいなら数分で構築可能です(Nodeはプラガブルに自分で作成可能なのでTreasure Dataにログ投入するNodeを独自に作っちゃいました!)

※2014/10/21 追記: 上記TreasureData Nodeをnpmに登録しました

これをデバイス同士のI/Oに置き換えれば無数に存在するデバイス同士のデータ連携がすごく楽になる、というのがNode-REDの狙いでオープンソースたる所以かと思います。

しかし、更なる日本語記事が本家IBMから数日前に公開されました。Node-RED を使用してリアルタイムのチャット・アプリケーションを 5 分で作成するを見てNode-REDを少し触ってた私も衝撃を受けました。

正直、SocialとかStorage系のNodeしか試してなくてHttpやWebSocketのプロトコル系とかfunction系は使い方が想像できるので後回しにしていたわけですよ。

そしたらfunction系にあるTemplate Nodeに指定したURIにWebページを表示するような使い方があったなんて!

つまりNode-REDでNodeを組み合わせるだけでWebアプリケーションも作れるという内容なんです。

Node-REDはIBMのBluemixというHerokuのようなPaaSで即試せます。上記チャットアプリケーションは既にひな形があってソレをインポートすれば5分もかかりません(本家のflowsに他にも色々ひな形あります)

これは非常にポテンシャルを感じます。

先にも述べました通り弊社サービスにも組み込みましたし、当面Node-REDを追いかけて色々なソリューションへ発展できればと考えています。

では!このブログを書き終えたらDreamforceへ参加するためサンフランシスコ行ってきます!