一. 問題描述
- 使用華為推送服務下發IM訊息時,下發訊息請求成功且code碼為80000000,但是手機總是收不到訊息;
- 在華為推送自助分析(Beta)平臺檢視發現,訊息傳送觸發了頻控。
二. 問題原因及背景
- 2023年1月05日起,華為推送服務對諮詢營銷類訊息做了單個裝置每日推送數量上限管理,具體數量上限可以檢視如下文件:不同應用類別的推送數量上限要求。
- 華為推送服務對訊息分類做了最佳化,從2023年3月31日起推送訊息將統一透過訊息自分類進行分類。未接入自分類的應用預設可傳送營銷訊息,受營銷訊息頻次管控限制。
- 基於以上原因,若應用有傳送服務與通訊訊息的場景,需要申請自分類許可權,以防因營銷訊息頻次管控導致服務與通訊類訊息下發失敗
三. 申請訊息自分類許可權
1. 自分類權益申請要求:
a. 已上架應用市場的應用,在不違反華為通知違規行為的前提下推送訊息,可按要求申請訊息自分類權益。
b. 未上架應用市場的應用,滿足以下所有條件後鬚髮送郵件(開通自分類申請資質)至hwpush@huawei.com,郵件稽核透過之後再申請訊息自分類權益。
1) 僅服務於自身企業或政府組織單位內部。
2) 提供包含被服務主體蓋章的證明函(證明函請參考下文),證明該App申請此許可權僅為內部辦公使用。
3) 其他型別的應用請先上架應用市場再申請自分類。
未上架應用申請開通自分類資質郵件模板示例:
郵件主題:未上架應用申請開通自分類資質-應用名稱
郵件正文:
公司全稱:XXX
應用名稱:XXX
AppId:XXXX
應用包名:XXX
應用是否已上架:是/否
承諾函請參考附件:[承諾函-應用名稱]()
2. 自分類權益申請流程:
a. 具體可以檢視文件。
b. 待申請透過之後,一定要點選介面上方的“啟用功能”進行啟用。若超過兩個月未啟用,需要重新申請。
四. 應用適配開發
自分類許可權申請透過之後,下發服務與通訊類訊息時訊息體中一定要攜帶category欄位,否則自分類權益是不會生效的,如下發IM類訊息。
a. 建立訊息體並攜帶category欄位,進行訊息下發請求。
b. 端側收到下發的訊息,在通知管理頁面檢視通知類別為服務提醒,且訊息無限頻,可知自分類權益已生效。
c. 如果訊息體未攜帶category欄位標識,那麼自分類權益是不會生效的,如建立訊息體但是未攜帶category欄位,進行訊息下發請求。
d. 端側收到下發的訊息,在通知管理頁面檢視通知類別為內容諮詢,可知若訊息體中未攜帶category欄位標識,自分類權益是不會生效的。
五. 問題解答
- 請求訊息下發介面成功且介面返回80000000碼,訊息一定會下發到裝置嗎?
答:不是的,訊息下發介面返回80000000碼的意思是訊息下發的請求是成功的,但是並不代表訊息成功到達了裝置,訊息是否成功到達裝置可以透過訊息回執的回執碼進行判斷。
- 未申請自分類權益,如何保證傳送的測試訊息不被頻控?
答:為了方便開發者測試訊息,在推送訊息時可以設定target_user_type引數為1。每個應用每日可傳送500條測試訊息且不受每日單裝置推送數量上限要求。
- 如何獲悉當日推送數量已經超過限制的Push Token?
答:您可以開通訊息回執並基於接收到的回執狀態碼256來獲取推送數量超過限制的Push Token。建議您在推送資訊營銷類訊息前,根據此回執資訊過濾掉當日已經超過限制的Push Token,避免無效的訊息推送請求。
- 因服務與通訊類訊息下達到裝置時提醒方式為非靜默提醒,如何保證服務與通訊類訊息以靜默提醒的方式下發到裝置?
答:若您希望服務與通訊類訊息按照靜默(無鈴聲振動)方式傳送,可以在滿足自分類適配要求的基礎上,新增importance欄位且傳值為“LOW”。
- 帶有category欄位的訊息體示例是什麼?
{
"validate_only": false,
"message": {
"android": {
"notification": {
"title": "小明",
"body": "今天的週報已發,有時間請看一下",
"click_action": {
"type": 3
}
},
"category":"IM"
},
"token": ["IQAAAACy0****************_7FL_0P******************g5K-ODO1_*********************_zb7v9OAK**************lmgQ"]
}
}
六. 參考資料
瞭解更多詳情>>
訪問華為開發者聯盟官網
獲取開發指導文件
華為移動服務開源倉庫地址:GitHub、Gitee
關注我們,第一時間瞭解 HMS Core 最新技術資訊~