直播平臺建設過程中不可或缺的推送功能

五花肉愛原始碼發表於2019-02-14

要想運營好一個直播平臺,需要各方各面的工作和技術相結合完成,而訊息推送就是直播 app中十分重要的一個部分。App內的訊息推送不僅能夠給使用者提供通知資訊,提高使用者活躍度,還能夠起到召回一部分老使用者的作用。那麼在直播平臺建設的過程中,關於第三方推送也就是我們所說的訊息推送功能又該如何實現呢?

1.  怎樣接入三方推送?

推送功能就是一種伺服器主動 push訊息到使用者裝置端的行為,因此依賴於裝置端和伺服器之間的長連線,流程可以分為以下幾點:

裝置與推送伺服器建立長連線。

裝置根據某些規則生成或從推送伺服器獲取一個 devicetoken,推送伺服器就可以根據devicetoken定位到具體的裝置。

裝置上報 devicetoken到應用伺服器,這一步由應用自己完成。

應用伺服器會根據需要呼叫的推送服務端介面發起推送。

推送伺服器收到推送請求後,根據請求中的 devicetoken定位到具體的裝置,然後下發推送通知。

裝置收到推送訊息,然後進行通知彈窗或其他行為。

2.  ios端

蘋果的官方有專門的蘋果推送通知服務,簡稱 APNS,有很高的推送送達率。最早的APNS提供基於TCP協議的介面,但是這一介面的使用方式較為複雜,如果不注意就容易導致推送失敗。後來蘋果又提供了一套新的基於HTTP2協議的推送介面,這一介面可以追蹤到每個推送請求是被拒絕還是成功,所以應用的也比較多。

3.  Android端

Google最早提供了雲推送服務,簡稱為GCM,後來又推出了新的FCM推送來代替之前的GCM,由於國內的環境並不適用因此各個手機廠商相繼推出了各自的推送服務。推送的原理都是相似的,不過是依賴於裝置和推送伺服器的長連線,但是廠商推送的優勢在於這樣的長連線可以和自己的手機系統繫結到一起,不同應用可以共享同一條長連線,既節省了流量的耗費,還免去擔心應用內長連線斷連導致的訊息推送失敗。與ios端不同的是,Android的推送伺服器的介面都是HTTPS介面。

4.  IM場景下推送

IM場景下,應用伺服器有屬於自己的長連線服務,第三方推送服務可以利用三方廠商推送的系統級長連線來提高訊息推送的送達率。

(1) 對於 ios端來說,應用沒辦法常駐後臺,所以就需要在切換前後臺的過程中透過IM長連線傳送一個標記位,伺服器就會在裝置離線或者處於後臺的情況下觸發APNS推送,減少裝置在前臺情況下APNS推送的流量消耗。

(2) 對於 Android端來說,伺服器會在裝置處於離線的情況下觸發第三方推送,當裝置處於後臺時會在收到訊息之後主動彈窗以便提醒使用者有新訊息。

以上內容就是在直播平臺建設的過程中,推送功能的實現方法及相關內容。推送功能雖然沒有直播 app內其他的主要功能那麼重要,但卻是每一個app內不可缺少的功能之一。而直播平臺的運營方如果能夠好好利用推送功能,增強使用者黏性和留存率也是非常容易的。

本文宣告原創,轉載請註明出處。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69907981/viewspace-2632784/,如需轉載,請註明出處,否則將追究法律責任。

相關文章