Qnap TS220からGoogle homeを鳴らしてみる(2)

こんにちは。

前回、Google homeにmp3を再生させることができました♪
この機能を利用して、好きな言葉を再生させることができたら便利ですね!✨

ちなみにnode.jsが使える環境の場合はこちらの方法が簡単です。

私は日常的にゴミだしの曜日を忘れてしまいがちなので、前日に通知してもらえるようなものを今回作ってみます💪

文字列をmp3に変換

$ pip3 install gTTS
$ python3

from gtts import gTTS
tts = gTTS(text='明日燃えるゴミの日だよ〜', lang='ja')
tts.save('/share/Web/moerugomi.mp3')

gTTSを使って変換しています。
ファイルの保存場所を /share/Web/ にすることでWebサーバの起動後、URL指定でMP3ファイルをダウンロードできるようになります
例) http://nasのip/moerugomi.mp3

Webサーバの起動

ブラウザからQNAPの管理画面に入ります。
コントロールパネル > アプリケーション > Webサーバ画面を開き 「Webサーバを有効にする」 にチェックを入れます。

実行ファイルの作成

前回とあまり変わりませんが、起動時引数でMP3のパスを指定するようにしてみます

$ vim /share/Web/main.py

import pychromecast
import sys

args = sys.argv

if len(args) < 2 :
  print('required mp3 url')
  print('ex.) python3 notify.py http://amachamusic.chagasi.com/mp3/morinonakanotorii.mp3') 
  exit()

mp3URL = args[1]

chromecasts = pychromecast.get_chromecasts()

for device in chromecasts:
    if device.model_name == 'Google Home' :
        mc = device.media_controller
        mc.play_media(mp3URL,'audio/mp3')
        mc.block_until_active()
        print('OK!!')

以下のコマンドで実行できます。URLは自身の環境によってIP部分を変えてみてください

$ python3 /share/Web/main.py http://192.168.XX.XX/moerugomi.mp3
OK!!

定期実行

cronの設定はこんなカンジにしてみました。月曜と木曜の夜19時〜21時まで30分起きに通知してくれます。

$ crontab -e
# moeru_gomi
0,30 19-21/1 * * 1,4 python3 /share/Web/notify.py http://192.168.XX.XX/moerugomi.mp3

おしまい

棒読みなカンジが可愛いです☺️

シェアする

  • このエントリーをはてなブックマークに追加

フォローする