本文檔旨在協助開發人員快速定位、診斷並解決在使用阿里雲簡訊服務過程中遇到的各類錯誤。內容涵蓋從API調用、簡訊投遞到狀態回執的全鏈路錯誤碼,並提供可執行檔解決方案。
錯誤碼概覽與分類
本文內容較多,可使用Ctrl/Command+F的方式尋找指定錯誤碼詳情。
為精準定位問題,首先需要理解簡訊發送生命週期中不同階段可能出現的錯誤碼類型。
常見錯誤碼:在調用
SendMessageToGlobe等 API 介面時,通過 HTTP 響應立即返回。這類錯誤碼錶明請求本身存在問題(如參數錯誤、許可權不足),或者請求未被平台成功受理。回執狀態代碼:在簡訊被平台受理後,通過非同步回執訊息或調用
SmsReport介面查詢得到。這類狀態代碼反映了簡訊從電訊廠商到使用者手機的最終投遞結果(如成功、失敗、被攔截)。SMPP回執錯誤碼:僅在使用 SMPP 協議方式接入時出現,用於表示 SMPP 命令的執行結果或訊息的最終狀態,嚴格遵循 SMPP 3.4 協議規範。
常見錯誤碼
API錯誤碼 | SMPP錯誤碼 | 描述 | 解決方案 |
OK | 20 | 請求成功。 | - |
INVALID_SENDERID | 25 | SenderID無效或未通過審核。 |
|
FORBIDDEN_ACTION | 26 | 使用者介面降級。 | 請提交工單,恢複介面正常調用能力。 |
OUT_OF_SERVICE | 27 | 國際簡訊業務停機。 | - |
ACCOUNT_NOT_EXISTS | 29 | 賬戶資訊不存在。 | 請確認是否開通簡訊服務且實名認證通過。 |
SMS_CONTENT_CODE_ILLEGAL | 31 | 簡訊內容不合法(不存在或被拉黑)。 | 登入國際簡訊控制台。在左側導覽列,選擇。檢查審批狀態。如果是“未通過”狀態,請點擊创建新内容。 |
SMS_SIGN_NAME_ILLEGAL | 32 | 簽名不合法(不存在或被拉黑)。 | 登入國際簡訊控制台。在左側導覽列,選擇。確認使用的簽名名稱是否與審核通過的完全一致。如果簽名是“未通過”狀態,查看原因後,請重新申請新的簽名。 |
MOBILE_NUMBER_ILLEGAL | 33 | 手機號碼格式錯誤。 | 請校正號碼格式準確性,重新提交到平台。 |
MOBILE_COUNT_OVER_LIMIT | 34 | 手機號碼數量超過1000條。 | 調用BatchSendMessageToGlobe的介面時,單次請求的號碼數量不能超過 1000 個。請分批調用。 |
CONTENT_MISSING_PARAMETERS | 35 | 簡訊內容變數缺少對應參數值。 | 請檢查 |
INVALID_PARAMETERS | 36 | 輸入的參數異常。 | 請檢查參數配置,保證參數的準確性。 |
INVALID_JSON_PARAM | 42 | 參數為空白,參數JSON串解析錯誤。 | 請檢查參數配置,保證參數的準確性。 |
PARAM_LENGTH_LIMIT | 44 | 簡訊內容變數長度受限。 |
|
AMOUNT_NOT_ENOUGH | 45 | 賬戶餘額或資源套件不足。 | 請購買套餐包或者充餘額。 |
SYSTEM_ERROR | 46 | 內部系統錯誤。 | 阿里雲平台側出現臨時性錯誤。請稍後重試。若問題持續,請提交工單並提供 RequestId。 |
DATA_NOT_EXIST | - | 查詢的簡訊記錄不存在。 | 請稍後重試。 |
QPS_LIMIT_CONTROL | 48 | 到達系統QPS發送限制。 | 已達到單使用者QPS上限,請根據調用情況合理調整QPS。 |
ONLINE_BILLING_FAILED | 49 | 國際簡訊線上計費失敗或者內部系統錯誤。 | 國際簡訊線上計費系統繁忙,請稍後再試。 |
QUERY_DATE_ILLEGAL | 52 | 查詢時間非法。 | 請檢查參數配置,保證參數的準確性。 |
RAM_PERMISSION_DENY | 55 | RAM校正失敗,使用者權限不足。 | 請授權RAM調用介面全部的許可權,重新嘗試。 |
PRODUCT_NOT_SUBSCRIBED | 57 | 簡訊服務沒未開通。 | 登入國際簡訊控制台。開通簡訊服務。 |
SMS_SECURITY_INTERCEPTED | 61 | 國際簡訊風控策略攔截。 | - |
SMS_CONTENT_ILLEGAL | 62 | 簡訊內容不合法。 | 請檢查簡訊發送內容是否符合相關法規要求。 |
ACCOUNT_ILLEGAL | 63 | 帳號由於發送非法內容被列入黑名單。 | - |
BLACK_KEY_CONTROL_LIMIT | 64 | 簡訊內容變數中包含黑名單關鍵字。 | 變數內容觸發了平台的安全性原則。請檢查並修改變數中包含的敏感詞或不合規內容。 |
NOT_SUPPORTED_COUNTRY | 65 | 暫不支援該國家的國際簡訊發送。 | - |
SENDERID_BLACKLISTED | 67 | 使用的Sender ID被風控策略攔截。 | - |
IMDA_COMPANY_REQUIRE_LOA | 68 | 使用的Sender ID需要報備IMDA。 | 請及時報備IMDA。 |
SYSTEM_LIMIT_CONTROL | 81 | 到達系統每日發送限制。 | - |
FREQUENCY_LIMIT_DAY | 83 | 到達單個號碼每日發送頻率限制。 | 請在控制台重新設定單個號碼每日發送頻率(上限20)。 |
ALERT_LIMIT_DAY | 84 | 到達使用者每日發送限制。 | 請在控制台重新設定每日簡訊發送總量。 |
ALERT_LIMIT_MONTH | 85 | 到達使用者每月發送限制。 | 請在控制台重新設定每月簡訊發送總量。 |
COUNTRY_TRAFFIC_LIMIT | 86 | 到達使用者每日發送地區的限制。 | 請在控制台重新設定地區每日簡訊發送總量。 |
CONTENT_EXCEED_LIMIT | - | 內容字數超過系統最大限制。 | 請調整內容字數,字數大小限制在512k以內。 |
QUANTITY_INCONSISTENT | - | 號碼發送數量(介面欄位To)和常值內容(介面欄位Message)數量不一致。 | 請確保號碼發送數量和文本數量保持一致。 |
Specified AccessKeyId is not found | - | AccessKeyId不存在。 | 請檢查代碼中配置的 AccessKeyId 是否正確、有效,且未被禁用。 |
回執狀態代碼
錯誤碼 | SMPP錯誤碼 | 錯誤描述 |
success | 0 | 發送成功。 |
IN_SMS_CONTENT | 201 | 簡訊內容或長度錯誤。 |
INVALID_NUM | 202 | 無效接收號碼。 |
INVALID_SENDERID | 203 | 無效Sender ID。 |
OPERATOR_NOT_SUPPORT | 204 | 電訊廠商不支援該電話號碼。 |
PHONE_NOT_AVAILABLE | 205 | 電話號碼、手機不可用,或手機儲存容量已滿。 |
PORTED_NUM | 206 | 電話號碼的電訊廠商已更改。 |
RECEIVER_BLACKLIST | 207 | 接收號碼被列入黑名單,被電訊廠商阻止。 |
SYSTEM_ERR | 208 | 供應商系統異常。 |
SP_UNKNOWN_ERR | 209 | 訊息發送失敗。 |
URL_FAILURE | 210 | URL被列入黑名單。 |
expired | 211 | 由於客戶手機長時間關機或停機,導致簡訊無法發送。 |
NO_VALID_SUPPLIER | 212 | 無新加坡IMDA合規供應商支援。 |
SMPP回執錯誤碼
SMPP訊息狀態 | 最後的訊息狀態 | 描述 |
DELIVERED | DELIVRD | 訊息發送至目的地。 |
EXPIRED | EXPIRED | 訊息有效期間已到期。 |
DELETED | DELETED | 訊息已被刪除。 |
UNDELIVERABLE | UNDELIV | 訊息無法傳遞的。 |
ACCEPTED | ACCEPTD | 訊息處於接受狀態。 |
UNKNOWN | UNKNOWN | 訊息處於無效狀態。 |
REJECTED | REJECTD | 訊息處於拒絕狀態。 |
更多資訊,請參見SMPP協議規範V3.4。