脚本说明
- 脚本中发送消息,只能发送给系统用户
通过request对象,发送消息到用户绑定的公众号
- public ObjTemplateMsg createWxMsg(String asTemplateId)
创建消息对象
- public int sendWxMsgUser(String asPubAppID,Object aUserId, ObjWxTemplateMsg aMsg)
发送消息给用户, aUserId 可以是任何集合类型 List ,Set , 也可以是长整型,Long表示一个用户。
成功返回1 失败0
- public int sendWxMsgWorkgroup(String asAppID,Long aWorkgroupID,ObjTemplateMsg aMsg)
发送消息给工作组,返回成功发送的用户数量
- public int sendWxMsgFlow(String asAppID,ASDomainWorkflow.ASWfCompInst aObj,ObjWxTemplateMsg aMsg)
- public int sendWxMsgUser(String asAppID,Object aUserId, ObjWxTemplateMsg aMsg)
发送用户订阅的流程消息到指定的公众号。如拓跋公众号,不需要订阅脚本,只需要在消息或任务中勾选消息通知即可。若用户自己的公众号,则需要调用该方法。
发送消息给用户, aUsers 可以是任何集合类型 List ,Set , 也可以是长整型,Long表示一个用户。 可以为null表示发送给订阅消息的所有人。
definfo 有两个值,“FLOWTASK” 流程任务 “FLOWMSG” 流程消息
- 微信模板消息对象
重要说明,模板消息中去掉了first和remark,微信会屏蔽掉。
public class ObjTemplateMsg {
public String touser; //openid 目标用户,这里可以忽略,若没有指定userid必须指定此属性
public String template_id;//"ngqIpbwh8bUfcSsECmogfXcV14J0tQlEpBO27izEYtY", 模板id 见微信公众号设置,必须提供
public String url;//http://weixin.qq.com/download, 点击打开订单网页,可以为空
public ObjMp miniprogram = new ObjMp(); 点击代开的小程序信息,可以为空
public String client_msg_id;//":"MSG_000001",//防重入id。对于同一个openid + client_msg_id, 可以为空
public void addProp(String asKey,String asValue,String color) { } //根据模板确定// 属性,值和颜色
public void addProp(String asKey,String asValue) { }//根据模板确定//属性,值
}
public static class ObjMp {//小程序信息
public String appid;//:打开小程序的id
public String pagepath;//:"pages/index/index?foo=bar" 打开小程序的路径 具体说明见 小程序启动参数
}
举例:
miniprogram.appid="wx40a00b053085fcc7";
/* 打开拓跋云小程序的待办任务,用户账号jhtest, 用户001 密码,可以不指定, pg tsk表示待办任务*/
miniprogram.pagepath = "pages/index/index?hs=jhtest&ur=001&rm=179&ps=123123&pg=tsk";
- 脚本发送模板消息举例
/*发送模板消息 单据审批通知 */
domain.status(request,'SEND','get',param);
var lMsg = request.createWxMsg('FbmCzNo3vmV3GZ-U4gu-VdF_md8H6sBePxY_ZMM0G9Q');
lMsg.addProp('keyword1','key1');
lMsg.addProp('keyword2','key2');
lMsg.addProp('keyword3','key3');
lMsg.addProp('keyword4','key4');
lMsg.addProp('keyword5','key5');
lMsg.miniprogram.appid="wx40a00b053085fcc7";
lMsg.miniprogram.pagepath = "pages/index/index?hs=jhtest&ur=admin&rm=193&pg=tsk";
request.sendWxMsgUser(request.parser().userid(),lMsg);
- 工作流脚本中的消息通知
- 在流程的消息组件的脚本中使用 inst.users(); 获得消息关联的所有用户(包括消息发送的指定用户,工作组中的用户和动态用户,消息中可以同时指定动态用户,工作组和固定用户)
- 使用request.sendWxMsgUser(Object aUserId,ObjTemplateMsg aMsg) 来发送消息
举例 :
var lMsg = request.createWxMsg('FbmCzNo3vmV3GZ-U4gu-VdF_md8H6sBePxY_ZMM0G9Q');
lMsg.addProp('first','首先说明')
lMsg.addProp('keyword1','关键词1')
lMsg.addProp('keyword2','关键词2')
lMsg.addProp('keyword3','key3')
lMsg.addProp('keyword4','key4')
lMsg.addProp('keyword5','key5')
lMsg.addProp('remark','备注说明这里是')
lMsg.miniprogram.appid="wx40a00b053085fcc7";
lMsg.miniprogram.pagepath = "pages/index/index?hs=jhtest&ur=admin&rm=193&pg=tsk";
request.sendWxMsgUser(inst.users(),lMsg);
Created with the Personal Edition of HelpNDoc: Free EPub producer