微信二次开发SDK使用教程--手机检测到有人点赞/取消点赞通知服务端

case CircleLikeNotice : {//手机检测到有人点赞/取消点赞通知
log.debug("socket:msgtype=CircleLikeNotice");
circleLikeNoticeHandler.handleMsg(ctx, msgVo);
break;
}

package com.jubotech.framework.netty.handler.socket;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.google.protobuf.util.JsonFormat;
import com.jubotech.business.web.domain.AccountInfo;
import com.jubotech.business.web.domain.WeChatAccountInfo;
import com.jubotech.business.web.service.AccountService;
import com.jubotech.business.web.service.WeChatAccountService;
import com.jubotech.framework.netty.common.Constant;
import com.jubotech.framework.netty.utils.MessageUtil;
import com.jubotech.framework.netty.utils.NettyConnectionUtil;

import Jubo.JuLiao.IM.Wx.Proto.CircleLikeNotice.CircleLikeNoticeMessage;
import Jubo.JuLiao.IM.Wx.Proto.TransportMessageOuterClass.EnumErrorCode;
import Jubo.JuLiao.IM.Wx.Proto.TransportMessageOuterClass.EnumMsgType;
import Jubo.JuLiao.IM.Wx.Proto.TransportMessageOuterClass.TransportMessage;
import io.netty.channel.ChannelHandlerContext;

@Service
public class CircleLikeNoticeHandler{
private final Logger log = LoggerFactory.getLogger(getClass());
@Autowired
private WeChatAccountService weChatAccountService;
@Autowired
private AccountService accountService;

/*** 手机检测到有人点赞/取消点赞通知* @author wechatno:tangjinjinwx* @param ctx* @param vo*/
public  void handleMsg(ChannelHandlerContext ctx, TransportMessage vo) {try {CircleLikeNoticeMessage req = vo.getContent().unpack(CircleLikeNoticeMessage.class);log.info(JsonFormat.printer().print(req));// 把消息转发给pc端// a、根据wechatId找到accountid// b、通过accountid找到account// c、通过account账号找到通道WeChatAccountInfo account = weChatAccountService.findWeChatAccountInfoByWeChatId(req.getWeChatId());if (null != account && null != account.getAccountid() && 1 != account.getIslogined()) {AccountInfo accInfo = accountService.findAccountInfoByid(account.getAccountid());if (null != accInfo) {// 转发给pc端ChannelHandlerContext chx = NettyConnectionUtil.getClientChannelHandlerContextByUserId(accInfo.getAccount());if (null != chx) {MessageUtil.sendJsonMsg(chx, EnumMsgType.CircleLikeNotice, NettyConnectionUtil.getNettyId(chx),null, req);}}// 告诉客户端消息已收到MessageUtil.sendMsg(ctx, EnumMsgType.MsgReceivedAck, vo.getAccessToken(), vo.getId(), null);} else {// 对方不在线MessageUtil.sendErrMsg(ctx, EnumErrorCode.TargetNotOnline, Constant.ERROR_MSG_NOTONLINE);}} catch (Exception e) {e.printStackTrace();MessageUtil.sendErrMsg(ctx, EnumErrorCode.InvalidParam, Constant.ERROR_MSG_DECODFAIL);}
}

}

项目地址:https://www.wuliaokankan.cn/url301/138.html
接口参考:http://www.yunlauncher.com/Blog/articles/119.html

转载于:https://www.cnblogs.com/wuliaokankan/p/10607880.html

微信二次开发SDK使用教程--手机检测到有人点赞/取消点赞通知服务端相关推荐

  1. 微信云控开发SDK使用教程--手机机端回传检测清粉好友数通知服务端

    微信云控开发SDK使用教程--手机机端回传检测清粉好友数通知服务端 case PostFriendDetectCountNotice : {//手机机端回传检测清粉好友数 log.debug(&quo ...

  2. 微信群控的服务器怎么用,微信群控开发SDK使用教程--手机客户端返回聊天消息的原始内容给服务端...

    微信群控开发SDK使用教程--手机客户端返回聊天消息的原始内容给服务端 case RequestTalkContentTaskResultNotice: {// 返回聊天消息的原始内容 log.deb ...

  3. 微信开发SDK使用教程--手机微信好友发来聊天消息通知服务端

    微信开发SDK使用教程--手机微信好友发来聊天消息通知服务端 case FriendTalkNotice: {// 微信好友发来聊天消息 log.debug("socket:msgtype= ...

  4. 微信开发SDK使用教程--手机微信个人号新增好友通知服务端

    微信开发SDK使用教程--手机微信个人号新增好友通知服务端 case FriendAddNotice: {// 微信个人号新增好友通知 log.debug("socket:msgtype=F ...

  5. 聚播群控微信二次开发sdk完整API

    聚播群控微信二次开发sdk完整API功能: 微信加好友功能API 1.导入手机通讯录 2.手机通讯录加好友 3.加指定微信群好友 4.自动通过微信好友请求 5.手机模拟定位 6.附近人加好友 7.各种 ...

  6. 微信二次开发sdk非ipad/android协议(很好用)

    转自 https://github.com/tangjinjinwx/Public.WeChat.CRM.SDK 个人微信号二次开发sdk协议,微信个人号开发API接口 微信SDK程序概要说明 非微信 ...

  7. 手机微信群控二次开发SDK的部分API功能

    手机微信群控二次开发SDK的部分API功能: 微信加好友功能API 1.导入手机通讯录 2.手机通讯录加好友 3.加指定微信群好友 4.自动通过微信好友请求 5.手机模拟定位 6.附近人加好友 7.各 ...

  8. 微信机器人开发SDK使用教程--养号任务停止

    微信机器人开发SDK使用教程--养号任务停止 case "PostStopWeChatMaintenanceTask": {// 养号任务停止 log.debug("we ...

  9. 个人微信号二次开发sdk协议,微信个人号开发API接口

    个人微信号二次开发sdk协议,微信个人号开发API接口 微信SDK程序概要说明 个人微信号开发sdk非微信ipad协议.非mac协议,非安卓协议,api可实现微信99%功能: 无需扫码登录.可收发朋友 ...

最新文章

  1. JAVA-集合作业-已知有十六支男子足球队参加2008 北京奥运会。写一个程序,把这16 支球队随机分为4 个组。采用List集合和随机数...
  2. iOS App开发的那些事儿2:如何搭建合适的框架
  3. 初学Struts遇到的坑爹问题
  4. linux 进程 转存储,Linux memory management——(进程虚存空间的管理)(转)
  5. Atitit.每周计划日程表 流程表 v9 r829.docx
  6. MCE | 癌相关基因 ALK 参与胖瘦调节
  7. pytorch之拿训练好的LeNet模型测试自己的手写图片预测失败
  8. 烤薯条的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  9. ConvE,知识图谱嵌入(KGE)论文复现(Ubuntu 20.04)
  10. 计算机音乐奇迹再现乐谱,天谕手游奇迹再现乐谱_奇迹再现乐谱代码分享_3DM手游...
  11. Android系统如何修改默认打开程序
  12. jar包如何在命令行运行
  13. 【C刷题记录】地月折纸——对数使用
  14. 我也和 chatGPT 聊了聊
  15. 深圳市建筑物矢量数据(Shp格式+带高度)
  16. 房友系统连接不上服务器,房友系统服务器地址
  17. tomcat如何增大并发_tomcat最大线程数,单台tomcat最大并发量
  18. 几百套AE模板企业片头动画
  19. 为什么eolinker发送老是等待_eoLinker-AMS 开源版 常见问题
  20. 金融风控(贷款违约预测)

热门文章

  1. error while loading shared libraries: libopencv_core.so.3.4: cannot open 报错解决方法
  2. 【进阶】从linux到android,进程的方方面面
  3. Android源码分析--MediaServer源码分析(一)
  4. android6.0源码分析之Zygote进程分析
  5. JZOJ 5422. 【NOIP2017提高A组集训10.25】天才绅士少女助手克里斯蒂娜
  6. cadence 常见pcb电阻_经验分享|高频PCB设计中出现的干扰分析及对策
  7. 文本挖掘技术在CIC的应用--转载
  8. 数学之美 系列十 有限状态机和地址识别
  9. CVPR 2017 CA:《Context-Aware Correlation Filter Tracking》论文笔记
  10. 光流(Optical Flow)简介