意外に便利! Google Home に ゴミの日をお知らせさせる

GoogleHome の有効活用方法。
ゴミの日お知らせ。大したことではないですが、意外に便利です。

ラズパイとGoogleHome が連携して、GoogleHomeが喋れる状態になっている前提です。
Google Home を しゃべらせる方法 | IT-DIY

やり方

cron で発声時刻を設定して、実行させる。
以下の python のファイルを実行させると、csvファイルに登録された種類のゴミであることをGoogleHome から音声が流れる。
朝と前日の夜にお知らせしてくれるように cron を登録する。

以下のpythonのコードとcsvを配置。
csvファイル と 固定曜日のゴミをソースコード を ご自身のゴミ収集日に合わせて設定してください。

<gomi.py>

#!/usr/bin/env python
# -*- coding: utf-8 -*-¥

import datetime
from datetime import date,timedelta
import csv
import sys, subprocess

############################
### GoogleHome トーク    ###
############################
# GoogleHome-Notifer にまわす
def talk( talkstr ):
    subprocess.run( ["node", "/path to/google-home-notifier/talk.js", talkstr] )


def gominohi( d_date, dd_str ):

    n_str = "non"

  # 火曜、金曜 は普通ごみ
    if (d_date.weekday() == 1) or (d_date.weekday() == 4):
        n_str = dd_str + "普通ごみの日です"
  # 土曜日は廃品回収
    elif d_date.weekday() == 5:
        n_str = dd_str + "廃品回収の日です"
    elif d_date.weekday() == 6:
        n_str = "non"
    else:
    # 単純な曜日固定でないものはファイルから読込み
        csv_file = open("gomi.csv", "r", encoding="utf8", errors="", newline="" )
        f = csv.reader(csv_file, delimiter=",", doublequote=True, lineterminator="\r\n", quotechar='"', skipinitialspace=True)
        cnt = 0
        maxc = 0 
        for row in f:
            if str( d_date ) == row[0]:
                n_str = dd_str + row[1] + "ごみの日です。"
                cnt = maxc 
            maxc += 1

        if ( (cnt + 5) > maxc ):
            n_str += "そろそろ、ごみデータを更新してください。"

    if n_str != "non":
        talk( n_str )

############################

t_day = datetime.date.today()

dd_str = ""
if sys.argv[1] == "0":
    dd_str = "今日は、"
elif sys.argv[1] == "1":
    dd_str = "明日は、"

gominohi(  t_day + timedelta( days = int(sys.argv[1]) ), dd_str )
<gomi.csv>

2022-09-12,プラスチック
2022-09-15,陶器、ガラス
2022-09-21,缶
2022-09-,破砕
2022-09-,プラスチック

cron を登録する。
一旦、cron.conf ファイルに、お知らせしてほしい時刻を設定する。
以下のファイルでは、7時 0分、10分、20分、25分、30分、40分 に今日のゴミの内容を
20時 0分、15分、50分 に明日のゴミの内容をお知らせするように設定しています。

<cron.conf crontab -l >

0,10,20,25,30,40 7 * * * python /path to/gomi.py 0
0,15,50 20 * * * python /path to/gomi.py 1

以下のコマンドでcron に登録。
あとは、自動でお知らせしてくれます。

crontab cron.conf

Xserver が お友達紹介割引 で申込みが可能になります。

HISモバイル

コメント

タイトルとURLをコピーしました