23
28

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Raspberry PiでIFTTTのMaker WebhooksにPOSTする

Last updated at Posted at 2017-12-24

このエントリは「Raspberry Piでスマートロックつくった」の解説5つめになります。
鍵の開閉を記録しておくため、IFTTTを経由してGoogleスプレッドシートに記録してみようと思います。この内容で記事書いている人は大勢いますので簡単に。

IFTTTでMaker Webhooksを有効にする

https://ifttt.com/maker_webhooksにアクセスし、「Connect」をクリックすればMaker Webhooksが有効になります。
e4e5fa2eeeee1a1a39cbec73f96fc7ba.png
有効化したら、右上の「Documentation」をクリックして、Webhooksを利用するためのkeyを確認します。
654e62b8ae46370cbd4870ce7ceade0a.png
ちなみにこの画面はWebhooksのデバッグコンソールも兼ねていて、イベント名とPOSTパラメータ名を自由にいじってテストすることができます。

IFTTTのアプレットを作成する

さて、Maker Webhooksの準備が整いましたので次はGoogleスプレッドシートに記録するアプレットを作成します。「My Applets」→「New Applet」の順にクリックするかhttps://ifttt.com/createにアクセスして組み合わせを作ります。

  • this:Webhooksを選択し、適当なイベント名(LogToGoogleなど)を設定
  • that:GoogleSheetsを選択し、「Add row to spreadsheet」を選択。生成されるシート名などは適宜お好みで登録。

以上でIFTTTの準備は完了です。念のため先程の「Documentation」のページに行って、今作ったイベントにPOSTしてみてちゃんと動作するか試してみるのもよいです。

Raspberry PiからPOSTする

あとはRaspberry PiからPythonでWebhooksのAPIにPOSTすれば完了です。

import requests
# IFTTT URL for Logging to Google Sheets
IFTTT_URL_GoogleSheets = 'https://maker.ifttt.com/trigger/<設定したWebhooksのイベント名(LogToGoogleなど)>/with/key/'
# IFTTT Key
IFTTT_KEY = '<確認したWebhooksのkey>'

# Log
requests.post(IFTTT_URL_GoogleSheets + IFTTT_KEY, json = {'value1':'パラメータ1', 'value2':'ぱらめーた2', 'value3':'parameter3'})

私はこれを使って鍵の開閉やユーザ登録などの記録をとっています。
9bc98a0b938431421da10ae7648f9725.png
41行目~47行目は通常の利用ログですね。Apple WatchやiPhone X内のSuica、それに室内のボタンを使って開閉しています。48行目では登録されていないPASMOがタッチされており、その次の行でカードを「ぱすも」という名前で登録許可を出しています。(登録許可については次の記事へ
現在はスマートロックだけ稼働していますが、今後部屋内にセンサーを置いたり別の機能を持たせたRaspberry Piを稼働させることになれば、色々なログをこのシートに記録していくことになるでしょう。
Next:Raspberry PiでSlackbotを飼う

23
28
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
23
28

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?