CASE & ACTIVITY
インフォテックの取り組み
  • 調査・研究

Pepperを活用して快適な職場づくりにチャレンジ (傘忘れ対策)

弊社では、快適な職場環境をつくるための活動を行っています。
この活動への ITを活用した アプローチとして、Pepperで何かできないか検証をしてみました。

今回はPepperと外部のサービスを組み合わせて「帰宅時に傘が必要かを知らせる」アプリが実装できるか試してみたので紹介します。

※ ソフトバンクロボティクスのPepperを活用し弊社が独自に実施しています。

アプリの概要

このアプリは、「帰宅時にビルのエントランスで傘を持っていないことに気付き、オフィスまで取りに戻る」という悔しい経験が何度かあったので作ってみることにしました。
Pepperに触れると1時間以内の気象情報を外部サービスから取得し、雨が降りそうな場合は傘を忘れないようにPepperが知らせてくれるという仕組みです。


(画像をクリックすると拡大します)

気象情報は無料で公開しているAPIを使った取得が一番簡単だと思ったので、無料公開APIを使用しました。無料で公開しているAPIは複数ありますが、今回はYahoo! JAPANデベロッパーネットワークが提供するWEB APIの Yahoo! Open Local Platform (YOLP )から気象情報APIを使うことにしました。

処理の流れは以下のようなイメージです。


(画像をクリックすると拡大します)

開発

※アプリはPepperの開発ツールであるChoregraphe(コレグラフ)で開発。

<Choregraphe>

処理の流れを設定します。天気(はれ・くもり・あめ)によって画面やジェスチャーを変えています。


(画像をクリックすると拡大します)

<気象情報の取得方法(JSONデータ)>

①YOLPのAPIを利用するためにアプリケーションIDを取得

②地点(緯度、経度)を決める ※今回は弊社本社所在地にしました

③以下のように引数を設定し、リクエスト用のURLを作成


(画像をクリックすると拡大します)

  coordinates:緯度、経度
  appid:アプリケーションID
  output:結果を受け取る形式を指定(JSONまたはJSONP)

④リクエスト
 上記Choregraphe画面上の赤枠で囲われたpython Scriptボックス内でリクエストを投げます。

⑤取得したJSONデータ

苦労したこと

JSONデータの文字化け

JSONデータをpythonで取得する際に文字化けしてしまいました。requestモジュールを使用して取得したレスポンス(JSONデータ)はpythonの辞書型にデコードすると、ログ出力や必要データの抜き出しが可能になります。

雨がなかなか降らない

晴れの日が続きRainfall(降水量)の値も0.00が続いたので、降雨時の実データ確認に数日間要しました。
今回のようなWeb APIを利用する場合は、その時々でテストに必要な実データのバリエーションが揃えられないことが考えられるため、テスト期間や仕方に工夫が必要になりそうです。

Pepperに触れると、このように傘が必要か知らせてくれます。

(画像をクリックすると拡大します)

今回は天気予報をそのまま発信しただけですが、例えば「取得データを溜めて、朝は雨だけど夕方は晴れの場合も傘を忘れないように知らせる」などデータの使い方次第で機能は広がると思いました。

他のAPIでも実装可能か検証してみたいと思います。