推這個東西,基本上都會接觸到移動互聯網的運營。我們用蘋果自己的服務APNS在iOS下做,所以我們幹脆把iOS App的推送叫做推送通知;。Google本來是為Android提供GCM(Google Cloud Messaging)的,但是由於眾所周知的原因,Google在中國的服務不穩定,所以有很多第三方消息推送服務商,包括小米自己的推送服務,華為自己的,YunOS自己的服務,包括友盟和信鴿(信鴿可能幾個月後就不再使用這個純第三方服務了)。
其實兩者的機制差不多,基本都是:應用服務器將消息推送給中間推送服務提供商,再由中間推送服務提供商推送給終端。這種系統級的推送,原則上只要用戶不關閉,幾乎肯定會推送到用戶終端,方便用戶操作,或者忽略甚至關閉推送服務。
PUSH消息在消息系統創建後進入發送階段,服務器需要根據用戶終端信息進行路由。如果是IOS系統,會調用蘋果自己的推送通知服務(APNs)。如果用戶手機是安卓系統,會根據不同廠商調用不同廠商的SDK。
對於不同的系統版本,支持的消息顯示形式也不同。比如IOS10之後,APP在前臺時,通知欄是否顯示;只要服務器傳輸相應通知方法的值,就可以根據產品需求選擇這種樣式。如果用戶手機不是五大廠商的,可以通過自己搭建的長連接或者使用第三方服務來推送。
如果妳自己不直接連接廠商渠道,那麽內部服務器可能不需要做太多復雜繁瑣的開發工作,通過接入信鴿、推文等第三方消息推送平臺實現消息推送。大部分通道會向發送方反饋消息是否成功推送至客戶端SDK的回執數據,需要提供回調地址。
渠道類型壹般分為三類:廠商渠道、第三方推送服務平臺、長連接。
廠商頻道是手機終端廠商推出的推送服務。通過訪問廠商SDK,內部服務器可以將消息推送到手機系統的服務器,然後發送到客戶端內部的廠商SDK,操作系統會相應顯示。點擊後會調出對應的APP,可以避免APP進程被殺死後消息到達用戶,所以到達率高。
第三方推送平臺是自建相關消息服務的推送服務公司。而當各個APP使用同壹個平臺的推送服務時,客戶端都集成了同壹個第三方推送平臺的SDK,這樣就形成了壹個推送聯盟。當聯盟中壹個APP的消息流程沒有被殺死,其他APP也可以用它來通知用戶,形成相互喚醒,提高到達率。
經過壹些場景測試,相互喚醒的成功率並不是很高,要仔細結合自己的場景評估。為了提高到達率,第三方推送平臺還會整合各大廠商的SDK進行推送。
長連接就是在手機和服務器之間建立鏈接,推送消息數據。APP狀態也可以通過長連接來監控,但是完全是長連接推送,保證觸控的穩定性,這就需要更多的R&D資源,而且要盡量避免操作系統殺死妳的長連接進程。
消息提醒功能:語音和圖標
關鍵信息提醒:雙重提醒
(1) CMS(內容管理系統),目的是配置消息推送模板。
App推送模板:推送標題、推送字幕、推送圖片;
消息顯示模板:消息標題、消息副標題、消息橫幅圖片、消息正文、消息鏈接等。,可以根據不同的消息類型進行配置。
(2)CRM(客戶關系管理系統),目的是推送配置和推送效果查詢。