zoukankan      html  css  js  c++  java
  • 微信客服系统开发SDK使用教程-主动添加好友任务

    微信客服系统开发SDK使用教程-主动添加好友任务

    case "AddFriendsTask": {// 主动添加好友任务
    log.debug("websocket:msgtype=AddFriendsTask。。。。。");
    addFriendsTaskWebsocketHandler.handleMsg(ctx, vo,contentJsonStr);
    break;
    }

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

    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    import org.springframework.stereotype.Service;

    import com.google.protobuf.util.JsonFormat;
    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.AddFriendsTask.AddFriendsTaskMessage;
    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 AddFriendsTaskWebsocketHandler{
    private final Logger log = LoggerFactory.getLogger(getClass());
    /**
    * 主动添加好友任务
    * @author wechatno:tangjinjinwx
    * @param ctx
    * @param vo
    */
    public void handleMsg(ChannelHandlerContext ctx,TransportMessage vo, String contentJsonStr) {
    try {
    log.info(contentJsonStr);
    AddFriendsTaskMessage.Builder bd = AddFriendsTaskMessage.newBuilder();
    JsonFormat.parser().merge(contentJsonStr, bd);
    AddFriendsTaskMessage req = bd.build();
    //AddFriendsTaskMessage req = vo.getContent().unpack(AddFriendsTaskMessage.class);
    ChannelHandlerContext chx = NettyConnectionUtil.getClientChannelHandlerContextByUserId(req.getWeChatId());
    if(null != chx){
    //转发给手机端
    MessageUtil.sendMsg(chx, EnumMsgType.AddFriendsTask, vo.getAccessToken(), null, req);
    //告诉发送方 消息已经收到
    MessageUtil.sendJsonMsg(ctx, EnumMsgType.MsgReceivedAck, vo.getAccessToken(), vo.getId(), null);
    }else{
    //对方不在线
    MessageUtil.sendJsonErrMsg(ctx, EnumErrorCode.TargetNotOnline, Constant.ERROR_MSG_NOTONLINE);
    }
    } catch (Exception e) {
    e.printStackTrace();
    MessageUtil.sendJsonErrMsg(ctx, EnumErrorCode.InvalidParam, Constant.ERROR_MSG_DECODFAIL);
    }
    }
    }

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

  • 相关阅读:
    JS站点
    1011 World Cup Betting (20分)
    1007 Maximum Subsequence Sum (25分)(动态规划DP)
    1006 Sign In and Sign Out (25分)
    1005 Spell It Right (20分)
    1004 Counting Leaves (30分)(DFS)
    1003 Emergency (25分)(Dijkstra算法)
    1002 A+B for Polynomials (25分)
    1001 A+B Format (20分)
    canvas
  • 原文地址:https://www.cnblogs.com/wuliaokankan/p/10681913.html
Copyright © 2011-2022 走看看