寒波の到来でお布団から抜け出せなくなってきましたね。正月なので書き初めとして、毎朝枕元のMacからリビングの温度を喋らせて、布団から抜けるための決意を挫くためのコードを書きました。
温度を確認後、別途用意してあるhomekit経由irkitを操作すれば「Hey Siri。暖房をつけて」でリビングのエアコンが稼働し、部屋を温めることができます。
netatmo connectのAPIの使い方
処理フロー
- Netatmo Connectでアプリを登録する
- Client idとClient secretを取得する
- Client idとClient secretとユーザ認証を利用してアクセストークンを取得
- アクセストークンを利用してデータを取得する
ClientIDとClient Secretの取得

アクセストークンを取得して、Getstationsdataにアクセスする
サンプルコードを参考にアクセストークンを取得すれば良いです。
自分しか使用しないので、ユーザー情報も使用するClient Credentials Authenticationの方を採用しています。
API GUIDEではフォームに引数を書いて送信するとJSONが帰ってくるテストフォームがあるので、試す際は便利ですね。
特にデバイスが1台のみの場合は不要かもしれませんが、引数にMacアドレスを指定することで該当機器のデータのみ値が返ってくるようになるようです。
Macに喋らせる
sayコマンドで実行すれば良いので、pythonのsubprocessモジュールでコマンドを実行しています。
なお、度にすると「たび」と発音するようなのでひらがなで「ど」と指定しています。