Upload
sonycsl
View
164
Download
0
Embed Size (px)
Citation preview
株式会社ソニーコンピュータサイエンス研究所
GotAPI×Kadecot Plugin Technical Manual
大和田茂
株式会社ソニーコンピュータサイエンス研究所
×
株式会社ソニーコンピュータサイエンス研究所
概要
• GotAPIとKadecotの乗り入れを可能にするプラグインの解説 – GotAPI:OMA準拠のIoT向けWebAPIプロトコル仕様
– GotAPI⇒Kadecotと、Kadecot⇒GotAPIの相互呼び出しが可能になる予定 (現在は前者のみ)
• GotAPI対応機器はウェアラブル機器が中心、Kadecotは家電中心なので、組み合わせることで 対応機器の網羅度が一気に広がる (2015/7現在)
GotAPI : http://device-webapi.org/ Kadecot : http://kadecot.net/
株式会社ソニーコンピュータサイエンス研究所
インストール
• GotAPIのサーバーアプリとKadecotを、同一のAndroid端末内にインストールする (どちらもGoogle Playで取得可能) – GotAPIサーバの例 : GClue社「 Device Web API Manager 」
https://play.google.com/store/apps/details?id=org.deviceconnect.android.manager
– Kadecotはこちら: https://play.google.com/store/apps/details?id=com.sonycsl.Kadecot
• Kadecotで機器発見を行い、右上ボタンの設定から「開発者モードを有効にする」にチェックを入れる
http://kadecot.net/install/
株式会社ソニーコンピュータサイエンス研究所
GotAPI ⇒ Kadecot
GotAPIを使ってKadecotの機能を呼び出す 方法についての解説
株式会社ソニーコンピュータサイエンス研究所
まずKadecot JSONP APIの理解を
• Kadecotでは、機器ごとに通し番号(deviceId)を割り当てている。
• Kadecotのプラグインの種類に応じて、protocolがいろいろある。(eg. echonetlite, sonytv, iremoconなど)
– プロトコル=プラグイン という理解でほぼ合っている
– 機器制御用のパラメータの形式は、JSONだということ以外は特に決めておらず、プロトコルごとに自由に決めている
• 各プラグインは、おおまかな機能のまとまりとして、procedureというものを提供している。
– 例えばECHONET Liteであればsetやget
• 機能の呼び出しは、deviceId + procedure + パラメータで行う
– プロトコルは明示的に呼び出しには出てこないが、存在しないprocedureを呼び出すとエラーが返される。
http://kadecot.net/blog/2750/ http://app.kadecot.net/docs/ProcTopic/
株式会社ソニーコンピュータサイエンス研究所
GotAPIとの対応
• Profile名 は 「kadecot」
• ServiceId = deviceId ※WebAPIからは、末尾にプラグインを表すハッシュ値が付与される
• Interface = protocol (省略可能)
• Attribute = procedure
• param = パラメータ (HTTPの引数)
株式会社ソニーコンピュータサイエンス研究所
Kadecotプロトコル情報
• KadecotのProcedureは実際には長い文字列。 – 例:com.sonycsl.kadecot.echonetlite.procedure.set – ピリオドで区切られている。
• 最後の単語がGotAPIで用いるprocedure • 最後から3番目の単語がGotAPIで用いるinterface
• ArgumentsKwが、GotAPIでのparamパラメータそのものとなる
• ECHONET Liteの表
(http://app.kadecot.net/docs/ProcTopic/echo_devices.html)にある「DEVICE_NAME」は、GotAPIの呼び出しには使わない。
http://app.kadecot.net/docs/ProcTopic/の表の中から、「Procedure」と「 ArgumentsKw 」を探す。
株式会社ソニーコンピュータサイエンス研究所
呼び出し例
• 照明をON
• エアコンを25℃に設定
※[ServerIP], [ServiceID]は適宜読み替えてください。 ※API使用前にサービスごと(Kadecotが発見している機器ごと)の認証が必要です。 https://github.com/DeviceConnect/DeviceConnect-JS などを参照してください。
http://[ServerIP]:4035/gotapi/kadecot/echonetlite/set/ ?params={“propertyName”:”OperationStatus”,”propertyValue”:[48]} &serviceId=[ServiceID]
http://[ServerIP]:4035/gotapi/kadecot/echonetlite/set/ ?params={“propertyName”:” SetTemperatureValue” ,”propertyValue”:[25]} &serviceId=[ServiceID]
株式会社ソニーコンピュータサイエンス研究所
Kadecot ⇒ GotAPI
まだ不完全である
株式会社ソニーコンピュータサイエンス研究所
現状
• GotAPIのサーバーが起動しているときには「GotAPI」という機器が機器一覧に表示される。
– GotAPIのプラグイン認証に同意することが必要
• GotAPI配下のサービス(機器)が存在しているときも、Kadecot上では機器として表示される。
• それぞれ、Plug-in settingsからGotAPIのメイン画面を表示することができる。
• しかし、個別サービスへのコマンド送信はまだできない
株式会社ソニーコンピュータサイエンス研究所
その他開発情報
株式会社ソニーコンピュータサイエンス研究所
情報
• プラグインのソースはMITライセンスにてGitHubから公開済
• Kadecot JSONP API情報
• Kadecot Procedureリスト
• DevicePlugin Manual
https://github.com/SonyCSL/GotAPIPlugin
http://app.kadecot.net/docs/ProcTopic/
http://kadecot.net/blog/2750/
https://github.com/DeviceConnect/DeviceConnect-Android/wiki/1.2.2.DevicePlugin-Manual
株式会社ソニーコンピュータサイエンス研究所
参考:ECHONET Liteとは
株式会社ソニーコンピュータサイエンス研究所
概要
• 国内白物家電の最も一般的なプロトコル – エアコン・照明・エコキュート・分電盤はじめ100種類以上の機器オブジェクトが規定されている。センサーも充実。最近は黒物家電も登場。
– メーカーをまたいだ相互接続性も実用的なレベル – OSI5層以上の規定だが、トランスポート(4層)のガイドラインは決まっており、IPv4のUDP実装が最も普及
• スマートメーター関連でも使用することが決定
– IPv6, Wi-SUNを用いる – デマンドレスポンス(ユーザーによる電力制御)関連オブジェクトも最近決定
• KadecotではすべてのECHONET Lite対応機器が扱える
エコーネットコンソーシアム http://www.echonet.gr.jp
株式会社ソニーコンピュータサイエンス研究所
ECHONET Lite機器オブジェクト
ECHONET 機器オブジェクト詳細規定 Release Gより (2015年5月29日)
全103機器が規定済
※コンソ会員企業からのリクエストに応じて増やしている
※規定があっても作っているメーカーがあるとはらない
株式会社ソニーコンピュータサイエンス研究所
ECHONET Lite機器オブジェクト
ECHONET 機器オブジェクト詳細規定 Release Gより (2015年5月29日)
センサー44種
株式会社ソニーコンピュータサイエンス研究所
ECHONET Lite機器オブジェクト
ECHONET 機器オブジェクト詳細規定 Release Gより (2015年5月29日)
空調機器10種
株式会社ソニーコンピュータサイエンス研究所
ECHONET Lite機器オブジェクト
ECHONET 機器オブジェクト詳細規定 Release Gより (2015年5月29日)
住設機器31種
株式会社ソニーコンピュータサイエンス研究所
ECHONET Lite機器オブジェクト
ECHONET 機器オブジェクト詳細規定 Release Gより (2015年5月29日)
調理・家事関連 機器10種
株式会社ソニーコンピュータサイエンス研究所
ECHONET Lite機器オブジェクト
ECHONET 機器オブジェクト詳細規定 Release Gより (2015年5月29日)
健康関連機器1種
株式会社ソニーコンピュータサイエンス研究所
ECHONET Lite機器オブジェクト
ECHONET 機器オブジェクト詳細規定 Release Gより (2015年5月29日)
DR・コントローラ 機器 3種
株式会社ソニーコンピュータサイエンス研究所
ECHONET Lite機器オブジェクト
ECHONET 機器オブジェクト詳細規定 Release Gより (2015年5月29日)
AV機器4種
株式会社ソニーコンピュータサイエンス研究所
Thank you