Pythonでtwilioを用いてSMS(テキストメッセージ)を送信する

スポンサーリンク

Pythonでtwilioを用いてSMS(テキストメッセージ)を送信してみます。

今回はtwilioを用います。このライブラリは、Pythonの標準ライブラリではありませんので、事前にインストールする必要があります。

また、Twilio無料トライアルに登録し、無料トライアル用の電話番号を取得する必要があります。

■Python

今回のPythonのバージョンは、「3.7.9」を使用しています。(Windows10)(pythonランチャーでの確認)

■Twilioで無料トライアル用の電話番号を取得する

Pythonでtwilioを用いてSMS(テキストメッセージ)を送信してみますが、その前にTwilioで無料トライアル用の電話番号を取得します。取得しますので、Twilioのログインページ(https://jp.twilio.com/login/kddi-web)から、登録したアカウント情報(メールアドレス,パスワード)でログインを行い、コンソールへ移動します。

コンソールにログインすると、コンソール内に「Step 1. Get a Twilio trial phone number」と表示されており、「On your trial account you can get one free USA or Canada phone number(トライアルアカウントでは、米国またはカナダの電話番号を1つ無料で入手できます。)」と記載されていますので、「Get a trial phone number」ボタンをクリックします。

クリックすると、「最初の Twilio 電話番号」というウインドウが表示されます。ウインドウ内には、今回はアメリカ(米国)の電話番号が表示され、「携帯電話番号にテキストメッセージ (SMS) を送受信可能」といった記載がされています。内容を確認し、「この番号を選択」ボタンをクリックします。

クリックすると、「おめでとうございます!」というウインドウが表示されます。ウインドウ内には、「Your new Phone Number(あなたの新しい電話番号)」などが記載されており、内容を確認し、「終了」ボタンをクリックします。これで無料トライアル用の電話番号を取得することができました。

■アカウントSIDとAUTHTOKENの確認をする

無料トライアル用の電話番号を取得後、コンソール上でアカウントSIDとAUTHTOKENの確認をします。

コンソール上の「Project Info」の項目に「アカウントSID」が表示されており、「AUTHTOKEN」は「Show」のリンクをクリックすると、AUTHTOKENが表示されていますので、この2つの情報をコピーします。

■twilioを用いてSMS(テキストメッセージ)を送信する

コピー後、twilioを用いてSMS(テキストメッセージ)を送信するスクリプトを書いていきます。

■コード

from twilio.rest import Client

account_sid = "アカウントSID"
auth_teoken = "AUTHTOKEN"
bodytext = "こんにちは、今日は快晴ですね。これはテスト送信です。"
to_number = "送信先の電話番号"
from_number = "取得したトライアル用のTwilio電話番号"

client = Client(account_sid, auth_teoken)

message = client.messages.create(body=bodytext,from_=from_number,to=to_number)

print(message.sid)

「from import」でtwilio.restモジュールのClientを呼び出します。その後、account_sid変数を定義し、その中に先程コピーしたアカウントSIDを格納します。格納後、auth_teoken変数を定義し、その中に先程コピーしたAUTHTOKENを格納します。さらに、bodytext変数を定義しその中に送信するショートメッセージを格納し、to_number変数を定義し、その中に送信先の電話番号を格納します。この時に電話番号を「海外から発信できる電話番号表記に変換」する必要があります。「81(日本の国番号)」、「+」記号などの用います。次にfrom_numbe変数を定義し、その中に取得したトライアル用のTwilio電話番号を格納します。

格納後、client変数を定義し、その中でClient()を用います。括弧内には、引数,パラメータとしてaccount_sid変数と、auth_teoken変数を渡します。これでクライアントのインスタンス化をします。

インスタンス化の後に、message変数を定義し、その中でclient.messages.create()を用います。括弧内には、引数,パラメータとしてbodytext変数とto_number変数とfrom_numbe変数を渡します。これで指定した電話番号にSMS(テキストメッセージ)を送信します。

最後に、メッセージが正常に送信されると、ハッシュコードが生成されるので、それをprint()で出力します。

■実行・検証

このスクリプトを「twil_test.py」という名前で、Pythonが実行されている作業ディレクトリ(カレントディレクトリ)に保存し、コマンドプロンプトから実行してみます。

実行してみると、コマンドプロンプト上にハッシュコードが出力されました。

出力後、今回は運営者の携帯電話を指定しましたので、スマートフォンを確認すると、SMS(テキストメッセージ)が送信されていることが確認できました。

コメント

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