消息发送
- 用户做出某一行为时,要给其发送消息,像用户购物发货;或者平台要向用户告知,像平台促销活动。有些信息保留到用户的信息记录中,我们称之为持久化信息;有些信息不必让用户看到以及匿名的信息,我们称之为非持久化信息。
消息模板添加
- 产品人员通过后台配置
- 一条消息模板能配置短信模板,微信模板,app模板,邮件模板
- 短信模板填写模板号。模板号是在阿里大鱼申请模板后得到
- 微信模板,app模板,邮件模板填写模板内容即可
消息模板填写模板内容注意事项
- 由于模板一些内容是动态变化的,所以需用特殊字符来表示。动态的字符用英文单词加大括号表示。
比如:您的订单{orderId}商家已发货,请耐心等待,请至订单中心查看物流详情
{orderId}表示订单号。
- 动态变化的字符,产品人员和开发人员之间协商。
暂定几个:快递单号:trackingNumber,手机号:mobile,提货码:pickCode,订单号:orderId
页面消息模板字段解释
code:模板的英文标识。不确定的可以跟开发人员定
分类:“我的消息”的消息进行划分
短信模板id:阿里大鱼的模板id
微信模板id:
短信模板内容:主要动态的文字用占位符表示
邮件模板标题:同上
邮件模板内容:同上
持久化模板内容:显示在“我的消息”的内容
模板内容调用注意事项
- 开发人员把动态变化的字符的值放置map中,key是模板内容的英文字符,value是值。
比如map.put("orderId",orderIdValue);
map中key一定和模板内容动态字符的英文相同,否则无法达到效果
消息如何发送 待修改,这几天会有变动
- 通过调用消息队列发送
- 类名MsgDeliveryProcessService
类型 |
支持消息 |
方法名 |
参数说明(通用参数看备注) |
单发消息 |
支持同时发短信,微信,app,邮件 |
sendMsgByUserId |
userId:用户id |
群发消息 |
同上 |
sendMsgByUserIds |
userIds:用户组id |
单发一种消息 |
只能发短信,微信,app,邮件其中一种 |
sendMsgByReceiver |
receiver:接收者,msgNotifyMethod:指定发消息类型 |
群发一种消息 |
同上 |
sendMsgByReceivers |
receivers:多个接受者,msgNotifyMethod:指定发消息类型 |
备注
通用参数 |
说明 |
textTemplateCode |
模板code,根据表text_template的字段code的值。比如,验证码code:verifyCode,重置信息:resetNotification,提取码:pickCode,找人代付:behalfCode |
params |
短信模板的参数。使用albaba发短信时,需传prefix值,prefix加在params里(params.put("ali_sms_prefix_code",prefix)),不传,prefix默认为“智橙生活” |
示例
Map<String, Object> params = Maps.newHashMap();
params.put("code", "aaa");
params.put("expiration", String.valueOf("15"));
params.put("product", "【智橙生活】");
params.put("slogan", "精彩社区生活,至诚服务到家。");
params.put("ali_sms_prefix_code", "身份验证");
msgDeliveryProcessService.sendMsgByMobile("15721098386", "verifyCode", params);
参考
事件处理方案