Advertisement
Guest User

Untitled

a guest
Jul 6th, 2016
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.21 KB | None | 0 0
  1. require 'mqtt'
  2. require 'json'
  3.  
  4. # 環境変数 mqtt_host
  5. mqtt_host = 'org-id.messaging.internetofthings.ibmcloud.com'
  6.  
  7. # 環境変数 mqtt_u|s_port
  8. mqtt_port = 1883
  9.  
  10. # IoT Platform 組織ID
  11. org_id = 'org-id'
  12.  
  13. # IoT Platform デバイス・タイプ
  14. device_type = 'rpi'
  15.  
  16. # IoT Platfrom デバイスID
  17. device_id = 'HeyaNoSumi'
  18.  
  19. # IoT Platform 認証トークン
  20. device_token = 'your-device-token'
  21.  
  22. # IoT Platform へ接続
  23. client = MQTT::Client.connect(
  24. :host => mqtt_host,
  25. :port => mqtt_port,
  26. :username => 'use-token-auth', # auth type
  27. :password => device_token,
  28. :client_id = 'd:' + org_id + ':' + device_type + ':' + device_id) # d:org-id:device-type:device-id
  29.  
  30. # センサデータの取得等の処理を行う…今回は割愛。
  31. # テストデータとして t = 10 のデータを送信する。
  32.  
  33. # パブリッシュするテストJSON の構成
  34. msg = JSON.generate({
  35. "d" => {
  36. "t" => 10
  37. }
  38. })
  39.  
  40. # パブリッシュするトピック
  41. # イベントID (ユーザが定義)
  42. event_id = 'status'
  43.  
  44. # データフォーマット (パブリッシュ内容により定義)
  45. format = 'json'
  46.  
  47. # パブリッシュ
  48. client.publish(
  49. 'iot-2/evt/' + event_id + '/fmt/' + format, # topic
  50. msg)
  51.  
  52. # 接続終了
  53. client.disconnect
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement