如何更換訂閱消息通知
如何在CrmebJava項目中更換自己的訂閱消息通知
1.首先,看看CrmebJava項目中的訂閱消息通知內容在什么地方
平臺后臺-設置-消息通知
這個部分的內容主要涉及eb_system_notification、eb_template_message兩張表
其中eb_system_notification存儲所有的消息管理,如上圖
eb_template_message中存儲,微信相關的公眾號模板消息、小程序訂閱消息的詳細內容
2.看看項目在代碼中是如何發(fā)送小程序訂閱消息的
TemplateMessageService類pushMiniTemplateMessage()方法
可以看到方法主要接收了3個參數,
templateId — 模板ID
temMap — 需要發(fā)送的內容
openId — 微信用戶唯一標識
在項目中每一個發(fā)送微信小程序訂閱通知的地方都需要調用這個方法,這個方法中templateId、openId都是從微信中獲取的,只有temMap是需要我們自己組裝的。
上圖是支付成功后發(fā)送訂閱消息的代碼,它展示了如何組裝一個temMap。
這其中map對象中的key是如何來的呢?這個時候就可以看下我們訂閱消息中的模板內容
可以看到模板內容中{{}}中包含的就是Map對象中的key值。
3.微信后臺創(chuàng)建我的模板
3.1 在微信小程序后臺進入訂閱消息管理,位置如圖所示
3.2 添加新的模板消息
在公共模板庫中選擇想要的模板,選用它
然后會,進入模板消息構建頁,選擇關鍵詞
左邊是展示效果,右邊是關鍵詞的選擇,關鍵詞有數量限制,已選擇的關鍵詞可以上下拖動,調整展示順序。
提交之后,新的消息模板就創(chuàng)建好了,可以在我的模板中看到它,一般是最上邊一個
這就是我剛才創(chuàng)建的消息模板。
4.更換項目中的訂閱消息
4.1更新數據表數據
根據我們剛才創(chuàng)建的是一個支付成功的模板,這個時候我們先在eb_system_notification表中找到對應的數據
其中routine_id,就是eb_template_message表中對應的id
我們替換eb_template_message表中的
temp_key-模板編號
content-內容
temp_id-模板ID
這些在上邊我的模板-模板詳情截圖中都可以找到對應內容。
4.2更新發(fā)送訂閱消息的代碼
這里要更新的代碼就是組裝temMap部分的代碼,按模板-模板詳情截圖中的內容,我們替換代碼如下
這其中,根據內容不同的含義,我們需要在更新Map中key的同時,根據key更新value的值,如上圖紅框中的最后一行。
到這里我們就更換了項目中的一個訂閱模板消息,之后只要重新打包、發(fā)布項目就可以使用了。