我的行動簡訊 (SMS 訊息) 無法透過 Amazon Simple Notification Service (Amazon SNS) 或 Amazon Pinpoint 交付。然後,我從 Amazon SNS 或 Amazon Pinpoint 中的 SMS 收到「Unknown error attempting to reach phone」錯誤。
簡短說明
SMS 訊息會透過第三方下游彙總商、SMS 供應商和行動電信業者交付至行動裝置。也就是說,在您將 SMS 與 Amazon SNS、Amazon Pinpoint 或與 Amazon SNS 或 Amazon Pinpoint 整合的任何 AWS 服務搭配使用時。在這些下游合作夥伴無法連線行動裝置時,您會收到「Unknown error attempting to reach phone」錯誤。
**重要:**SMS 架構在設計上是分散式的。最佳實務是避免對應用程式的 SMS 訊息傳輸的可靠性和效能做出假設。如需詳細資訊,請參閱網際網路工程小組 (IETF) 中的 RFC 5724。
解決方法
請針對使用案例執行下列疑難排解步驟。
檢查常見問題
排除與 Amazon SNS 或 Amazon Pinpoint 無關的常見問題。
您可能會因下列原因收到錯誤:
- 電話號碼被電信業者作為垃圾郵件予以封鎖。
- 目的地已封鎖。
- 訊息內文無效。
- 電話號碼在請勿打擾 (DND) 清單中。
- 手機在漫遊網路中。
- 電話業者正在封鎖此訊息。
- 電話正在封鎖 SMS。
- 電話暫時在涵蓋範圍之外。
- 電話已關閉。
- 電話是固定電話號碼(不是行動電話)。
- 訊息內文存在未註冊的 URL。
- 行動電話號碼無效。
- 下游合作夥伴對於指定的號碼或一組區域號碼的網絡組態不正確。
檢閱 SMS 最佳實務
確認您遵循傳送 SMS 訊息的目的地國家/地區或 AWS 區域的 SMS 最佳實務、規則和法規。
確認您使用的是正確的來源身分。如果需要,必須註冊身分。如需詳細資訊,請參閱支援的國家/地區和區域 (SMS 管道)。
如果您將 SMS 訊息傳送至美國,請確保使用的是美國支援的來源號碼。
如果您在美國使用免付費電話號碼,請確保電話號碼已註冊。
如果您使用本機路由將 SMS 訊息傳送至印度,請先預先註冊您的專用字母寄件者 ID。然後,使用 DLT 註冊的範本。將內容新增至 SMS 訊息時,確保內容與 DLT 註冊範本中的內容完全相符。如需詳細資訊,請參閱印度的寄件者 ID 註冊要求。
對單一裝置交付問題進行疑難排解
裝置層級的 SMS 封鎖、漫遊、涵蓋範圍空白及其他因素都可能會導致單一裝置交付問題。
若要對這些問題進行疑難排解,請執行以下操作:
- 使用 Amazon Pinpoint API 來驗證電話號碼。使用固定電話和 VoIP 電話號碼可能會導致交付問題。
- 從其他裝置傳送 SMS 訊息,然後檢查是否已交付訊息。
如果這兩個步驟都成功,請考慮在其他裝置上進行測試。
如果問題仍然存在,則裝置擁有者必須聯絡行動電信業者以取得支援。
對多個裝置交付問題進行疑難排解
如果延遲的 SMS 交付會影響多個裝置,下游彙總商、供應商、供應商和電信業者可能會發生問題。
若要對潛在的下游問題進行疑難排解,請為您用於傳送 SMS 訊息的服務建立支援案例。
在您的支援案例中提供下列資訊:
- 您用於傳送 SMS 訊息的區域。
- 問題開始時的時間戳記。
- 三個 SMS 日誌範例,其中包含不超過三天的傳送給不同電話號碼的失敗 SMS 訊息的訊息 ID。
- (僅限印度) 提供您的 DLT 註冊實體 ID、範本 ID,以及用於傳送 SMS 訊息的內容範例。
**注意:**行動電信業者可能不會儲存 SMS 資訊超過三天。
重要: 來自 Amazon CloudWatch Logs 的 SMS 交付不一定能提供準確的 SMS 交付時間。在某些情況下,可以在收到 CloudWatch 日誌之前交付 SMS 訊息。交付日誌中的 dwellTimeMsUntilDeviceAck 值會顯示電信業者接受此訊息的時間,但不提供有關延遲 SMS 訊息的資訊。如需詳細資訊,請參閱檢視 SMS 交付的 CloudWatch 指標和日誌。
相關資訊
如何使用 Amazon Pinpoint 管理 SMS 的全球傳送
使用 CloudWatch 監控 Amazon SNS 主題