近況

仕事が色々積みあがっててココロボで遊ぶのも、機械学習を手掛けるのも何も進んでおりません。やることが増えるとパフォーマンスが落ちてくるのは知ってたので、再度GTDの教本を読みつつ何とかしようとしてる今日この頃。

はじめてのGTD ストレスフリーの整理術

はじめてのGTD ストレスフリーの整理術

最近社内の活動として、オープンソースの利用を推進しようとしていたり。地理空間系の業界ではOSSで出来ることが結構多くて(というか普段の作業はOSSで賄えるので)、作業を効率的にやるためにもOSS普及させたいなと考えています。

地理空間系のOSSはFOSS4Gと言われますが、この導入マニュアルと書籍ライクな形にして社内に波及させていければと。可能であれば世の中にも共有できればと。OSSで得たものはOSSに返す的な。

しかしGISに関わってたかが数年。まだまだつまるところが多いなあ。MapServer系の話やタイルづくりのところが全然理解できない。。

続【未完】シャープ製お掃除ロボット(cocorobo RX-V200)のAPIを叩く

続編ですが未完です。前回はこちら。

quzee.hatenablog.com

API叩いたら変なエラーが返ってきたというのが前回までのあらすじでした。問い合わせてみたところ「もっかい初期化してみて」というお返事をいただいたので再度初期化して再設定しました。結果該当のAPIエラーはなくなったという。担当者の方すいません。初期化&再設定という最も根本的な解決方法を試してませんでした。

というわけでちゃんと動くようになったのでAPIを叩く作業を再開したいと思います。

音声発話APIを叩く

どっちかというと使いたいのは音声発話APIなのでそっちを叩いてみます。発話APIはエンドポイントのURLが違うだけ。前回と同じくcurlで叩く。

curl -H 'Content-Type: application/Json' -d '{"apikey_cocorobo":"XXXXXXXXXXXXXXXXXXXXXXXX","message":"XXXXXXX"}' 'https://developer.cloudlabs.sharp.co.jp/cloudlabs-api/cocorobo/speech'

これでいけると思ったんですが、以下のエラーが返ってきます。

{"resultCode":"1","errorCode":"E010202","message":"Request Parameter Not Found."}

よくわからん。以下はトラブルシューティング的なやつと、上記エラーを検証したやつです。

APIのレスポンスが無い場合

前回のエントリにコメント頂いた「API叩いたのに返ってこない場合」のトラブルシューティングです。

cocorobo APIはヘッダーを引き渡さないといけませんが、大文字・小文字をちゃんと記載してないと何も返ってきません。前のエントリでは'Content-Type: application/json'となってますが、jsonの一文字目を大文字にしていただけるとたぶん通ります。

駄目なやつ

curl -H 'Content-Type: application/json' -d '{"apikey_cocorobo":"XXXXXXXXXXXXXXXXXXXXXXXX"}' 'https://developer.cloudlabs.sharp.co.jp/cloudlabs-api/cocorobo/auth'

大丈夫なやつ

curl -H 'Content-Type: application/Json' -d '{"apikey_cocorobo":"XXXXXXXXXXXXXXXXXXXXXXXX"}' 'https://developer.cloudlabs.sharp.co.jp/cloudlabs-api/cocorobo/auth'

とはいえレスポンスが返ってくるってだけで"errorCode":“E010202"は回避できません。

検証作業

エラーメッセージを読むと「パラメータが無い」とのことなので、ローカルホストにサーバを立てて各種パラメータを渡せているかどうかを検証します。 @aramoto さんにいただいたプログラムを使わせてもらいました。

【娘が泣き始めたので続きは明日書く!!】

【未完】シャープ製お掃除ロボット(cocorobo RX-V200)のAPIを叩く

ココロボは優秀な家庭用ロボだと公言しつつ、公式アプリからしか制御できないのでハックし甲斐がねえなと思って早幾年。8月26日にシャープから開発者向けAPIが公開されました。これ公開するまでに色々あったんだろうなあ(社内調整が)。

一個問題があってうまく動かせてないですが、備忘録的にAPIの叩き方を記録します。

APIの概要

今回公開されたAPIはWebAPIとアプリAPIの二種で、それぞれできることが違います。

  • WebAPI

    • 認証
    • 音声発話
  • アプリAPI

    • 機器制御
    • 機器情報の取得

何をやるにしてもWebAPIの認証をかける必要がありますが、そこでこけているのでこの記事は未完です。単なる作業記録。 ちょっと残念なのが、機器制御や情報取得がアプリAPIAndroid APK)の使用を前提としていること。機器制御に関しては法的な問題があるかも…と思う節もあるけれど、ココロボの情報取得だけだったら問題ないんじゃねえのかな。

ココロボは温度・湿度、電池残量、衝突回数などを取得しているので、そのデータをWebAPI経由で取れたら良いと思うんです。公開しない理由が良く分からない(APIのメイン開発者が辞めたとかだったらしゃーないけど)

WebAPIの叩き方

公式サイトのリファレンスにはサンプルコードがありますが、JavaPHPのサンプルだけでした。両方そんなに使ったことないので、UNIX系で汎用的につかえるcurlAPIを叩きます。

curlMac OSLinux系なら大概デフォルトで入ってます。今回はRaspberry Pi(Rasbian)使いました。

curl -H "Content-type: application/json" -d '{"apikey_cocorobo":"XXXXXXXXXXXXXXXXXX", "message":"ほげほげ"}' 'https://developer.cloudlabs.sharp.co.jp/cloudlabs-api/cocorobo/auth' 

JSONで投げます。apikey_cocoroboの部分は開発者登録をした際に割り振られるキーです。

POSTで渡せと書いてますが、-dオプションがデフォルトでPOSTなのでこれで大丈夫。なんだけど。。

{"resultCode":"1","errorCode":"E010106","message":"Registertd MAC Address:XXXXXXXXXXXXX different with COCOROBO MAC Address."}

なんかMACアドレスが違うらしい。というわけで一旦ここまで。シャープに問い合わせて回答もらえ次第つぎの作業に移ります。せっかく勉強しているのでPythonで制御したいなー。

https://developer.cloudlabs.sharp.co.jp/clabsapi-web/developer.cloudlabs.sharp.co.jp

Pythonでフォルダ・ファイルを操作する(ファイル取得・フォルダ作成など)

単純作業を効率化するためにPythonを使います。フォルダ自体や、中に含まれるファイルの操作をサクサク行う寸法よ。

続きを読む

スターフライヤーでの子連れ移動が快適だった

盆の帰省移動にスターフライヤーを使ってなかなか快適だったので記録しておきます。

簡単にまとめると。

  • 赤ちゃん用ベッドが良い
  • 機内テレビ放送が良い
  • 空き時間の作業が捗る

一番最後は個人的にスターフライヤーの好きなところで娘は全然関係ないです。

続きを読む

Windowsのキャプチャーソフト「Snipping Tool」を使うと生産性が爆上がりする

最近ドキュメントを作ることが多いんだけど、文章だけだとわかりにくいので、スクリーンキャプチャを撮って貼り付けたいことが多々。2年前まではWindowsのスクリーンキャプチャー機能(Fn+PrtSc)を使ってたんですが、会社がWindows7になってからは専ら「Snipping Tool」を使うようになりました。

f:id:kazutaka83:20150801183209p:plain

↑これ。とても便利。

矩形キャプチャ、選択範囲キャプチャくらいしかできないかとたかくくってたら時間遅延でのキャプチャという素敵な機能があったのでまとめます。

続きを読む

Raspberry Pi2にWindows 10 IoT Coreをインストールする

7月29日にWindows10がリリースされました。Windows 10はPC・タブレットで使用するOSですが、並行でWindows 10 IoT Coreというものが出ていて、Raspberry Pi2やインテルGalileoMinnowBoard MAXにインストールしてセンサーやLED等を制御することができます。

小型機器向け軽量OSというカテゴリなんやろか。

f:id:kazutaka83:20150731232107j:plain 公式サイトはここ

インストールして動かすとこまでやったので忘備録を残します。 なんに使うかまだ考えてないので、動かしながらできることを考えつつ別記事で書いていく感じです。

続きを読む

スポンサード リンク