更新時間:2022-03-01 來源:黑馬程序員 瀏覽量:
消息系統(tǒng)主要是為了滿足是企業(yè)在想要觸達(dá)用戶的時候能夠通過有效的方式將想要傳達(dá)給用戶的消息及時的傳達(dá)給用戶,達(dá)到原本的期望。簡單來說,任何一個消息系統(tǒng)目的都是為了完成這樣一句話:基于業(yè)務(wù)的需要,在特定的情況和指定的時間下,能夠通過合適的方式將一些內(nèi)容傳達(dá)給到指定的人員。因此當(dāng)我們在構(gòu)建消息系統(tǒng)的時候至少需要考慮到兩個角色和5個元素:
用戶端的功能相對來說比較簡單,主要在于如果是通過站內(nèi)信的方式需要提供消息列表和消息詳情,其余的方式都不需要提供具體功能。
而對于運(yùn)營后臺來說,主要跟大家聊一下“條件”,基于“條件”的區(qū)別會導(dǎo)致后臺搭建不一樣。條件指的是什么情況下給用戶發(fā)送消息,這里面要注意的是給用戶發(fā)送消息有兩種,一個是基于業(yè)務(wù)規(guī)則制定的自動觸發(fā)條件;另一種是人為手動的,根據(jù)自己的實際需要去制定消息推送,這種主要是提供給公司的運(yùn)營人員使用。因此從整體上,我們可以進(jìn)一步把消息系統(tǒng)的搭建細(xì)化成這樣的產(chǎn)品架構(gòu):
所謂觸發(fā)型消息,就是這些消息發(fā)送的邏輯是先由代碼進(jìn)行編輯,寫在指定的業(yè)務(wù)邏輯中,當(dāng)用戶滿足相應(yīng)的業(yè)務(wù)邏輯,就會觸發(fā)該業(yè)務(wù)邏輯中的消息進(jìn)行發(fā)送。因此需要注意的是這些消息并不是可以由人為的新增,每次必須是提需求給開發(fā)進(jìn)行發(fā)布上線才能使用,我們只能針對開發(fā)好的呈現(xiàn)在指定列表中的各種消息進(jìn)行管理。因此從設(shè)計上來說,觸發(fā)型消息管理的產(chǎn)品原型大致會有這樣的內(nèi)容:
1.查詢區(qū)域可以根據(jù)自己的實際業(yè)務(wù)需要提供相應(yīng)的查詢條件
2.消息列表中,有幾個信息需要注意下
1)消息名稱指的是模板名稱。如關(guān)注發(fā)送通知。并不是用戶看到的消息標(biāo)題
2)推送人數(shù)和推送次數(shù)的區(qū)別:推送人數(shù)指累計至今該消息推送給多少人,而推送次數(shù)是該消息觸發(fā)的次數(shù)。
3)注意狀態(tài)為停用時,意味著該邏輯規(guī)則暫時不會被觸發(fā)
4)操作中,提供了修改消息內(nèi)容入口,但要注意,基本上只能修改消息的名稱和發(fā)送消息的具體文案內(nèi)容,其他涉及邏輯或規(guī)則的都不能隨意修改
5)另外注意需要提供推送記錄的入口,才能去查看每次觸發(fā)推送的情況是怎樣的
手動型消息管理,大家可以理解為做成一個標(biāo)準(zhǔn)化組件。任何需要的人,根據(jù)自己的需要自己去發(fā)布消息即可,不需要預(yù)先進(jìn)行業(yè)務(wù)邏輯的處理。因此自主性更高些。相較而言手動型是人為去創(chuàng)建一條條消息。因此在實際的產(chǎn)品設(shè)計時,主要是比觸發(fā)型的會多一個創(chuàng)建相關(guān)的功能:
1.查詢區(qū)域跟觸發(fā)型類同就不贅述
2.創(chuàng)建推送時,提供了渠道和推送時間的自主選擇功能
1)選擇渠道要注意不同渠道輸入的內(nèi)容有區(qū)別,push和郵件需要輸入標(biāo)題和正文內(nèi)容;而短信可以只輸入正文內(nèi)容即可
2)選擇時間方面注意選擇不同時間方式,細(xì)節(jié)功能設(shè)計有區(qū)別,例如定時,需要提供未來選擇時間;如果是一次性則不需要選擇時間,立即發(fā)布即可;如果選中周期性,則需要提供選擇周期時間(如每周六,12點)
3.保存方面考慮有可能公司業(yè)務(wù)復(fù)雜,創(chuàng)建一次推送不是一次能搞定,因此給了草稿功能(也可以去掉)
4.消息列表中要注意兩個字段的區(qū)別“消息名稱”“消息標(biāo)題”,消息名稱是給運(yùn)營人員自己查看了解之前推送的是什么;而消息標(biāo)題是用戶接收的消息展示的標(biāo)題內(nèi)容
5.操作中要注意如果消息已發(fā)送,一般只提供查看功能