OpenBlocks IoT BX1とインテルEdison Kitでnode.jsを使用してリアルタイムデータ送受信を行うためにMQTTを使用します。 MQTTを使用することでデータ送信側がpublisher(パブリッシャ)、データ受信側がsubscriber(サブスクライバ)となり、データはTopic(トピック)として送受信されます。 publisherはデータをTopicを指定して送信します。subscriberは自信が受信したいデータのTopicを予めsubscribe(サブスクライブ)しておくことで、送信されたタイミングでリアルタイムで受信できます。 データ本体のPayloadのフォーマットはMQTTでは規定されていませんが、データ量を最適化するためにはバイナリでデータ送信が出来るMessagePackを使用します。MessagePackは様々な言語・デバイスで動作できるようにここ
![node.jsによるデータ送受信](https://cdn-ak-scissors.b.st-hatena.com/image/square/940dc483529db03e541f99c2bc3010917cf0d227/height=288;version=1;width=512/https%3A%2F%2Fsynoninc.files.wordpress.com%2F2015%2F01%2Fscreenshot_1470.png)