Twilio SMSとPythonで誕生日リマインダーを作成する
2024.11.20
こんにちは、チャールです。
誕生日の願いを自動化して、お祝いを見逃さないようにしますか? それを可能にするのがTwilioです!
この実践的なブログ記事では、TwilioのMessaging APIを活用した簡単な誕生日リマインダーシステムの作り方をご紹介いたします。
ステップ1:
- Twilioアカウントにログインします。
- 「Account SID」と「Auth Token」を確認してください - これらはTwilio APIにアクセスするための認証キーとなります。
- Twilioをアクセスするとシークレット変数にアクセスするために、twilioとload_dotenvをインストールしてください。
pip install twilio load_dotenv
ステップ2:
- .envファイルを作成し、アカウントSID、トークン、Twilio電話番号を保存してください。
TWILIO_ACCOUNT_SID=your_account_sid
TWILIO_AUTH_TOKEN=your_auth_token
TWILIO_PHONE_NUMBER=your_twilio_phone_number
ステップ3:
- main.pyファイルを作成し、以下のプログラムを書いてください。
import os
from twilio.rest import Client
from dotenv import load_dotenv
from datetime import datetime
load_dotenv()
TWILIO_ACCOUNT_SID = os.environ["TWILIO_ACCOUNT_SID"]
TWILIO_AUTH_TOKEN = os.environ["TWILIO_AUTH_TOKEN"]
client = Client(TWILIO_ACCOUNT_SID, TWILIO_AUTH_TOKEN)
TWILIO_NUMBER = os.environ["TWILIO_NUMBER"]
birthdays = [
{"name": "Adam", "month": 3, "day": 21, "number": "電話番号"},
{"name": "Charu", "month": 11, "day": 3, "number": "電話番号"},
]
today = datetime.now()
for person in birthdays:
if person["month"] == today.month and person["day"] == today.day:
message = client.messages.create(
body=f"Happy Birthday, {person['name']}!",
from_=TWILIO_NUMBER,
to=person['number'],
)
print(f"Birthday message sent to {person['name']}! Message SID: {message.sid}")
説明:
- twilio.restとdatetimeから必要なライブラリをインポートします。
- Account SID、Auth Token、Twilio電話番号のプレースホルダーを実際の値に置き換えてください。
- 誕生日情報を保存するためのbirthdaysリストを作成します。
- コードは本日の日付を取得し、birthdaysリストを順に確認します。
- 誕生日が本日の日付と一致した場合、Twilio APIを使用してお祝いメッセージを送信します。
ステップ4:
Pythonファイルを保存し、ターミナルから実行してください:
python main.py
まとめ
おめでとうございます!Twilioを使用した独自の誕生日リマインダーシステムの構築が完了しました。これで、大切な誕生日のお祝いメッセージはプログラムにお任せして、安心してお過ごしいただけます!
誕生日を直接コードに記述する代わりに、データベースに保存することも可能です。タスクスケジューラーを使用して、このスクリプトを毎日実行することができます。さらに、お誕生日メッセージをカスタマイズすることも可能です。
読んでくれてありがとうございます!