调用个人微信API接口协议实现群发好友,群发群
调用个人微信API接口协议实现群发好友,群发群
/**
* 群发好友消息任务
*
* @author wechatno:tangjinjinwx
* @param ctx
* @param vo
*/
@Async
public void handleMsg(ChannelHandlerContext ctx, TransportMessage vo, String contentJsonStr) {
try {
log.debug(contentJsonStr);
WeChatGroupSendTaskMessage.Builder bd = WeChatGroupSendTaskMessage.newBuilder();
JsonFormat.parser().merge(contentJsonStr, bd);
WeChatGroupSendTaskMessage req = bd.build();
asyncTaskService.msgSend2Phone(ctx, req.getWeChatId(), EnumMsgType.WeChatGroupSendTask, vo, req);
} catch (Exception e) {
e.printStackTrace();
MessageUtil.sendJsonErrMsg(ctx, EnumErrorCode.InvalidParam, Constant.ERROR_MSG_DECODFAIL);
}
}
//接口参考http://www.wlkankan.cn/cate40/247.html
/**
* 群发群消息任务
*
* @author wechatno:tangjinjinwx
*/
private static void talkMsgToFriend(TaskTimeInfo info, TimeTaskDetailsDao timeTaskDetailsDao,List<String> friends) {
for(String friend:friends){
ByteString byteString = ByteString.copyFromUtf8(info.getContent());
TalkToFriendTaskMessage.Builder build=TalkToFriendTaskMessage.newBuilder();
build.setWeChatId(info.getWechatId());
build.setFriendId(friend);
build.setContent(byteString);
build.setMsgId(MsgIdBuilder.getId());
if(info.getRestype()==1){//文本类型
build.setContentType(EnumContentType.Text);
}else if(info.getRestype()==2){//图片类型
build.setContentType(EnumContentType.Picture);
}else if(info.getRestype()==3){//语音类型
build.setContentType(EnumContentType.Voice);
}else if(info.getRestype()==4){//视频类型
build.setContentType(EnumContentType.Video);
}else if(info.getRestype()==6){//链接类型
build.setContentType(EnumContentType.Link);
}else if(info.getRestype()==13){//小程序
build.setContentType(EnumContentType.WeApp);
}
TalkToFriendTaskMessage msg = build.build();
if (null != msg) {
try {
String json = JsonFormat.printer().print(msg);
if(!StringUtils.isEmpty(json)){
TimeTaskDetails detail = new TimeTaskDetails();
detail.setTid(info.getId());
detail.setExecute_time(info.getExecute_time());
detail.setJson_content(json);
timeTaskDetailsDao.insert(detail);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
调用个人微信API接口协议实现群发好友,群发群相关推荐
- java版微信朋友圈_java调用个人微信API接口发朋友圈,评论和删除朋友圈
java调用个人微信API接口发朋友圈,评论和删除朋友圈 /** * 发送朋友圈任务 * @author wechatno:tangjinjinwx * @param ctx * @param vo ...
- java调用个人微信api接口实现收发消息发朋友圈
个人微信api接口,java调用个人微信api接口实现收发消息发朋友圈 1.微信好友收发消息 /** * 给微信好友发消息 * @author wechatno:t ...
- java调用个人微信API接口收发朋友圈,删除评论朋友圈
java调用个人微信API接口收发朋友圈,删除评论朋友圈 /** * 发送朋友圈任务 * @author wechatno:tangjinjinwx * @param ctx * @param vo ...
- SERP调用企业微信API接口,发送文本信息实例
SERP企业轻量级ERP(SSDCRM)起源于vtigercrm早期版本.随着我们不停的迭代研发与完善,今日已经形成了自己鲜明的应用风格.我们在完善平台内部功能的基础上,积极研发平台与企业微信,钉钉, ...
- 调用个人微信API协议接口收发消息,发朋友圈
调用个人微信API协议接口收发消息,发朋友圈 java调用个人微信的API接口收发消息 /** * 接受微信好友发来聊天消息 * @author wechatno:tangjinjinwx * @pa ...
- 微信API接口、微信二次开发API调用
微信API接口.微信二次开发API调用 微信协议接口调用-加微信好友及通过好友请求 加微信好友 /** * 微信自动添加好友 * @author wechatno:tangjin ...
- 微信api接口调用-发朋友圈
微信api接口调用-发朋友圈 /*** 发微信朋友圈* @author wechatno:tangjinjinwx* @blog http://www.wlkankan.cn*/@Asyncpubli ...
- 个人微信api接口调用-微信群管理
个人微信api接口调用-微信群管理 /*** 微信群聊管理* @author wechatno:tangjinjinwx* @blog http://www.wlkankan.cn*/@Asyncpu ...
- 个人微信api接口调用-给微信好友或群聊发消息
个人微信api接口调用-给微信好友或群聊发消息 /*** 给微信好友发消息* @author wechatno:tangjinjinwx* @blog http://www.wlkankan.cn*/ ...
- 微信协议,个人微信api接口
微信协议,个人微信api接口 1.微信好友收发消息 /** * 给微信好友发消息 * @author wechatno:tangjinjinwx * @b ...
最新文章
- Spring Boot——自定义Web配置类后无法访问/static文件夹下静态资源
- 服务器强迫患者 ;软件试用狂人
- 【渝粤教育】国家开放大学2018年秋季 1137t医院管理 参考试题
- ASP.NET Core MVC 之依赖注入 View
- 用java判断一个年份是否为闰年_判断闰年还是平年
- Git基础之(十五)——分支管理——分支管理策略
- 小甲鱼python课后题和答案简书_小甲鱼Python入门 10讲 答案
- Linux常用快捷键汇总
- 小米5s+刷+android+8.0,【小米5S标准版 解账户锁线刷包】MIUI V8.0.10.0 刷机 工具+驱动+教程!紫火提供版...
- 华为擎云G540笔记本怎么U盘重装电脑系统详细教学
- Android和Java中的回调函数
- 电脑组成部件介绍图解:电脑的硬件组成部分及其作用各是什么?
- 香甜的黄油(SPFA)
- 〖Python 数据库开发实战 - Python与MySQL交互篇⑮〗- 项目实战 - 实现新闻管理 - 删除新闻功能
- 英语字谜求解程序(JAVA):iMessage-GamePigeon的“字谜”
- Linux定时器crontab用法
- Scanner 扫描器
- VMware12里使用U盘进行WIN10安装
- sql查询 找出重复数据,并且只保留一条.
- Github教程】史上最全github使用方法:github入门到精通