選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

使用 AWS 最終使用者簡訊簡訊傳送簡訊或語音訊息的範例

焦點模式
使用 AWS 最終使用者簡訊簡訊傳送簡訊或語音訊息的範例 - AWS 最終使用者簡訊 SMS

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

您可以使用 AWS 最終使用者傳訊簡訊 API,直接從應用程式傳送訊息。交易訊息是您傳送給特定收件人的訊息。

本節包含傳送 SMS 訊息語音訊息的程式碼範例。

重要

若要使用共用資源,您必須使用完整的 Amazon Resource Name (ARN)。

使用 AWS 最終使用者簡訊簡訊傳送簡訊

如果您使用的是共用資源,則必須使用資源的完整 Amazon Resource Name (ARN)。您可以利用以下程式碼範例,使用 適用於 Python (Boto3) 的 AWS SDK傳送 SMS 訊息。

import boto3 from botocore.exceptions import ClientError def send_sms_message(sms_voice_v2_client, configuration_set, context_keys, country_parameters, destination_number, dry_run, keyword, max_price, message_body, message_type, origination_number, ttl): try: response = sms_voice_v2_client.send_text_message( ConfigurationSetName=configuration_set, Context=context_keys, DestinationCountryParameters=country_parameters, DestinationPhoneNumber=destination_number, DryRun=dry_run, Keyword=keyword, MaxPrice=max_price, MessageBody=message_body, MessageType=message_type, OriginationIdentity=origination_number, TimeToLive=ttl ) except ClientError as e: print(e.response) else: return response['MessageId'] def main(): configuration_set = "MyConfigurationSet" context_keys = {"key1": "value1"} country_parameters = { "IN_TEMPLATE_ID": "TEMPLATE01234", "IN_ENTITY_ID": "ENTITY98765" } destination_number = "+14255550168" dry_run = False keyword = "MyKeyword" max_price = "2.00" message_body = ("This is a test message sent from AWS End User Messaging SMS " "using the AWS SDK for Python (Boto3). ") message_type = "TRANSACTIONAL" origination_number = "+12065550183" ttl = 120 print( f"Sending text message to {destination_number}.") message_id = send_sms_message( boto3.client('pinpoint-sms-voice-v2'), configuration_set, context_keys, country_parameters, destination_number, dry_run, keyword, max_price, message_body, message_type, origination_number, ttl) print(f"Message sent!\nMessage ID: {message_id}") if __name__ == '__main__': main()

在上述程式碼範例中,對 main() 函數進行以下變更:

  • configuration_set 的值,改成您要用於傳送此訊息的組態集的名稱或 Amazon Resource Name (ARN)。

  • context_keys 的值,改成您在傳送此訊息時,要使用的金鑰和值。這些金鑰出現在與此訊息相關聯的事件記錄中。

  • 如果您使用已註冊寄件者 ID 向印度客戶傳送訊息,請將 country_parameters 值改成您在註冊寄件者 ID 時收到的註冊實體 ID 和範本 ID。

    重要

    如果您不會將已註冊寄件者 ID 用於傳送訊息給印度客戶,請完全省略此參數。如果要省略此參數,也必須移除 send_sms_message 函數中對應此參數的那一行。

  • destination_number 的值,改成訊息目的地的電話號碼。

  • 若要執行此操作而不傳送任何訊息,請將 dry_run 的值改成 True

  • max_price 的值改成,您為了傳送此訊息的每個訊息部分,願意支出的金額上限 (以美元為單位)。一個訊息部分最多包含 140 位元組的資訊。如需詳細資訊,請參閱簡訊字元限制

  • 變更 message_body 的值,加入您要傳送的訊息。訊息的長度上限,視訊息包含的字元而定。如需簡訊字元編碼的詳細資訊,請參閱 簡訊字元限制

  • 變更 message_type 的值,以代表適當的訊息類別。有效值包括 TRANSACTIONAL (適用於關鍵或有時效性的訊息) 和 PROMOTIONAL (適用於非關鍵或沒有時效性的訊息)。

  • origination_number 的值,改成您要用於傳送訊息的電話號碼。電話號碼必須為 E.164 格式。

  • 將 的值變更為 AWS 最終使用者傳訊簡訊應嘗試傳遞訊息的時間ttl量,以秒為單位。您可以將 TTL 值設為最多 259200 秒 (72 小時)。

使用 AWS 最終使用者簡訊簡訊傳送語音訊息

您可以利用以下程式碼範例,使用 適用於 Python (Boto3) 的 AWS SDK傳送語音訊息。

import boto3 from botocore.exceptions import ClientError def send_voice_message(sms_voice_v2_client, configuration_set, context_keys, destination_number, dry_run, max_price, message_body, message_type, origination_number, ttl, voice_id): try: response = sms_voice_v2_client.send_voice_message( ConfigurationSetName=configuration_set, Context=context_keys, DestinationPhoneNumber=destination_number, DryRun=dry_run, MaxPricePerMinute=max_price, MessageBody=message_body, MessageBodyTextType=message_type, OriginationIdentity=origination_number, TimeToLive=ttl, VoiceId=voice_id ) except ClientError as e: print(e.response) else: return response['MessageId'] def main(): configuration_set = "MyConfigurationSet" context_keys = {"key1":"value1"} destination_number = "+12065550123" dry_run = False max_price = "2.00" message_body = ( "<speak>" "This is a test message sent from <emphasis>AWS End User Messaging SMS</emphasis>" "using the <break strength='weak'/> 適用於 Python (Boto3) 的 AWS SDK. " "<amazon:effect phonation='soft'>Thank you for listening." "</amazon:effect>" "</speak>") message_type = "SSML" origination_number = "+18445550142" ttl = 120 voice_id = "MATTHEW" print( f"Sending voice message with AWS End User Messaging SMS from {origination_number} to {destination_number}.") message_id = send_voice_message( boto3.client('pinpoint-sms-voice-v2'), configuration_set, context_keys, destination_number, dry_run, max_price, message_body, message_type, origination_number, ttl, voice_id) print(f"Message sent!\nMessage ID: {message_id}") if __name__ == '__main__': main()

在上述程式碼範例中,對 main() 函數進行以下變更:

  • configuration_set 的值,改成您要用於傳送此訊息的組態集的名稱或 Amazon Resource Name (ARN)。

  • context_keys 的值,改成您在傳送此訊息時,要使用的金鑰和值。這些金鑰出現在與此訊息相關聯的事件記錄中。

  • destination_number 的值,改成訊息目的地的電話號碼。

  • max_price 的值改成,您為了傳送此訊息,每分鐘願意支出的金額上限。

  • 變更 message_body 的值,加入您要傳送的訊息。訊息最多可包含 6,000 個字元。

  • 若要使用純文字指令碼 (而不是 SSML 格式的命令碼),請將 message_type 的值改成 TEXT

  • origination_number 的值,改成您要用於傳送訊息的電話號碼。電話號碼必須為 E.164 格式。

  • 若要執行此操作而不傳送任何訊息,請將 dry_run 的值改成 True

  • 將 的值變更為 AWS 最終使用者傳訊簡訊應嘗試傳遞訊息的時間ttl量,以秒為單位。您可以將 TTL 值設為最多 259200 秒 (72 小時)。

  • MATTHEW 替換成您要用於傳送訊息的 Amazon Polly 語音的名稱。如需支援語音的完整清單,請參閱 SMS 和語音第 2 版 API 參考中的 SendVoiceMessage。如果您未指定語音,則會使用 "MATTHEW" 語音傳送訊息。

在本頁面

隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。