Linux活用レシピ > 会社で活用 > 携帯へSMS送信

LinuxからSMS(ショートメール)を送信するレシピ

LinuxからSMSの送信
    LinuxからSMSを送信する際は、TwilioのAPIエクスプローラで表示された、curlで送信するコードを加工して送信します。

    加工前のコードは以下のようになっていると思います。
    curl -X POST 'https://jp.twilio.com/2010-04-01/Accounts/[SID]/Messages.json' \
    --data-urlencode 'To=+81[送信先携帯番号]'  \
    --data-urlencode 'From=[Sandbox電話番号]'  \
    --data-urlencode 'Body=てすと送信' \
    -u [SID]:[認証トークン]
    
    加工するポイントは2つあり、URLと、送信文字になります。

    まず、URLは「https://jp.twilio.com/・・」となっていますが、正しくは「https://api.twilio.com/・・」となります。

    次に、送信文字の部分が日本語の場合、「--data-urlencode 'Body=てすと送信' \」といったようにエンコードされていますが、ここは日本語に置き換えておきます。「--data-urlencode 'Body=てすと送信' \」

    加工後は、以下の通りとなります。
    curl -X POST 'https://api.twilio.com/2010-04-01/Accounts/[SID]/Messages.json' \
    --data-urlencode 'To=+81[送信先携帯番号]'  \
    --data-urlencode 'From=[Sandbox電話番号]'  \
    --data-urlencode 'Body=てすと送信' \
    -u [SID]:[認証トークン]
    

    以上で加工は完了です。加工後のcurlコマンドを、ターミナルソフトからLinuxのコンソールに貼り付けて実行すれば、SMS(ショートメール)が携帯に届きます。
    [ec2-user@ip-xxx-xx-xx-xxx ~]$ curl -X POST \
    'https://api.twilio.com/2010-04-01/Accounts/[SID]/Messages.json' \
    --data-urlencode 'To=+81[送信先携帯番号]'  \
    --data-urlencode 'From=[Sandbox電話番号]'  \
    --data-urlencode 'Body=てすと送信' \
    -u [SID]:[認証トークン]
    

    Linuxは、AWSで用意すると、curlコマンドがはじめから入っていて便利です。特に今回はSSHでLinuxに接続して、送信しますので、こちらのAWSの各レシピの中にあります、「AWSの準備」でAWSにLinuxを準備し、「Linux接続と準備」を参考にSSHで接続できるようにしてください。

    もちろん、物理Linuxで準備いいただいても結構です。


auの携帯やスマホにSMSを送る場合の注意


    auでは、SMS(Cメール)メッセージ本文内に接続先URL (http://**, https://**) や電話番号が含まれるメールがあった場合、標準で受信拒否される設定になっています。
    しかも、SMSの送り先や、SMSの送り元に受信が拒否されたことが通知されませんので、完全にメッセージがロストします。
    SMSの送信試験を行う際、キャリアがauの場合は、特に御注意ください。