twitterの「ゴミ捨てリマインダーbot」を作ってみたけど上手くいかなかった。

みなさま、お盆いかがお過ごしでしょうか。
私は暦通りの休みで、社畜ぶりを発揮しております。

それはさておき、以前に当ブログで取り上げた『meya.ai』。

quotto.hatenablog.com

quotto.hatenablog.com

これを使ってtwitterのDMでゴミの日を教えてくれる「ゴミの日リマインダーbot」を作ろうと思ったのですが上手くいきません。
うまくできてからまとめるつもりでしたが、うまくいきそうにないのでもうまとめちゃいます。

ゴミの日リマインダーbotの仕様

仙台ゴミ捨てbot」です。
sendai_garbage (@sendai_garbage) | Twitter

概要

事前にゴミ捨てのスケジュールを登録しておくと、twitterのDMで毎朝6:00に教えてくれます。

登録可能なゴミ捨てパターンは「燃えるゴミ」「プラスチック(不燃ゴミ」「ビン・カン・ペットボトル」「紙類」の4つ。(仙台市のゴミ分類に準拠)
収集曜日一覧|仙台市

スケジュールの登録

twitterbotアカウントに対して、DMで「登録」と送信します。

するとbotから上記4パターンのスケジュールを教えて、というメッセージが返るので順に送信します。
登録可能なスケジュールパターンは以下の5とおり。

  • ◯曜日(毎週)
  • 第x◯曜日(隔週)
  • x日(毎月の特定の日)
  • x月x日(特定の月日)
  • 月末

1つのゴミ捨てパターンに複数のスケジュールを登録したい場合は、上記のスケジュールパターンを「,」区切りで送信します。

実際にやってみるとこんな感じになります。
f:id:WorldWorldWorld:20160814230724p:plain

f:id:WorldWorldWorld:20160814231853p:plain

なお確認はしていませんが、登録後に同じ手順を行うと後から送信した内容でスケジュールを修正できるはずです。

スケジュールを確認

一度登録したスケジュールを確認したい場合は、botに対して「確認」とDMを送ります。
f:id:WorldWorldWorld:20160814230754p:plain

今日のゴミ捨てを確認

リマインドを待たずに明示的に今日のゴミ捨てスケジュールを確認できます。
botに「今日は?」とDMを送ります。
f:id:WorldWorldWorld:20160814230830p:plain

なおリマインドとの都合で、ゴミ捨て予定がない場合は何も応答しません。

リマインドの停止と再開

リマインダーがうざったくなったら、botに「停止」とDMするとリマインドを停止します。
f:id:WorldWorldWorld:20160814230840p:plain

なお一度スケジュールを登録してあれば「再開」とDMすると、リマインドを再開します。
f:id:WorldWorldWorld:20160814230850p:plain

使ってみよう

twitterで相互フォローして登録!
ゴミ捨てがある日の朝、twitterを確認してみると……
f:id:WorldWorldWorld:20160814231158p:plain

f:id:WorldWorldWorld:20160814231204p:plain

いや、1回教えてくれればいいんだよ?

どうやら6:00になると何回もDMしているようです。

これが解消できませんでした……

明示的に確認する「今日は?」コマンドと同じプログラムで動いてるはずで、そっちは1度だけ返すのにリマインドは何回も動いている。

ドキュメントを読んでも分からない。
うーん、どうしたものか。

ということで諦めました!

何十回とリマインドされても大丈夫な方、フォローしてみてください(笑)

天馬 イーラボ ゴミ箱 パカッとラク捨てペール 45L

天馬 イーラボ ゴミ箱 パカッとラク捨てペール 45L

夢みるプログラム ~人工無脳・チャットボットで考察する会話と心のアルゴリズム~

夢みるプログラム ~人工無脳・チャットボットで考察する会話と心のアルゴリズム~