ヤフーは2017年4月25日、簡単な操作でWebサービスとIoT機器の連携を可能にする「myThings Developers」の正式版の提供を始めた。2016年9月から「ベータ版」として無償で提供していたものを正式に公開した。
一般に、IoT機器とWebサービスを連携させるには公開API(Application Programming Interface)を探し、提供者ごとに異なる仕様に合わせて連携させるコードを書く必要がある。myThings Developersでは、事業者がAPIを「チャンネル」という形で公開しており、チャンネルを利用することで連携が容易になる。正式版公開時点でmyThings Developersには41種類のチャンネルがあり、簡単に使えるようになっている。
図 myThings Developers正式版公開時点で利用可能になっている「チャンネル」
出所 ヤフー
事業者が公開しているチャンネルは「トリガー」と「アクション」の2種類に分けられる。例えば活動量計「Jawbone UP」と連携するチャンネルには、「○キロカロリー消費したら」や「起床したら」といったトリガーがある。そして「Yahoo!メール」のチャンネルには「メールを送信する」「自分宛てにメールを送信する」というアクションがある。これらのトリガーとアクションをGUIの画面でドラッグアンドドロップで関連付けて、少し設定すれば、Jawbone UPが100キロカロリー消費したと検知したら、Yahoo!メールで自分自身にメールを送信するという具合に連携させることができる。
図 myThings Developersの開発用画面。トリガーとアクションを関連付けることで連携が可能になる
出所 ヤフー
自身で開発したWebサービスやIoT機器に合わせて、トリガーやアクションを自作することもできる。トリガーとアクション関連付けるGUIの画面で「カスタムトリガー」や「カスタムアクション」を配置すれば良い。画面を「テスト」から「実装」に切り替えると「APIエンドポイント」としてURLが現れる。ほかにも設定はあるが、基本的にはカスタムトリガーなら、自身が運用するサーバーでこのURLにHTTPでPOSTするようにプログラムを作成して動作させれば良い。
カスタムアクションの場合は、指定したトリガーを検知してmyThings Developersが、開発者の運営するサーバーにHTTPのPOSTメソッドで「APIリクエスト」を送信する。APIリクエストはJSON(JavaScript Object Notation)形式で送信してくるので、開発者は受信するサーバーのURLを指定し、リクエストを受け取って、処理するプログラムを作れば良い。ただし正確に言うと、セキュリティを保った形で接続するためのOAuth2.0認証などの設定も必要になる。
ヤフーは今回の正式版提供開始に合わせて、チャンネル公開者がチャンネル利用者が利用するごとに課金することを可能にする仕組みを実装した。チャンネルの公開で、開発者が利益をあげられるようにする仕組みだ。さらにヤフーは近日中に「LINE」の機能を利用可能にするチャンネルを公開するとしている。
myThings Developersの利用プランは試用向けの「トライアル」と商業開発者向けの「ビジネス」がある。トライアルは無料で利用できるが、作成できるサービスの数は3つまでで商用不可となるなどの制限がかかる。ビジネスでは制限はかからないが、開発したサービスのユーザーが1万以上になると、基本料として1ユーザー当たり50円かかる。さらに、有料チャンネルを利用した場合の料金も別途発生する。
正式版公開と同時に、MIKAWAYA21、ユカイ工学、MJI、Secual、アットシグナルの5社がmyThings Developersを活用したIoT製品を発表している。例えばMIKAWAYA21は高齢者に押すだけで安心を感じてもらうことを目的とした押しボタン「MAGOボタン」で、「Yahoo!防災速報」や「Yahoo!天気」の情報を活用している。ヤフーによればさらに洗剤や医薬品を手がけるライオンと講談社がmyThings Developersの利用を検討しているという。
■リンク
ヤフー