个人微信api接口调用代码

个人微信api接口

1、微信好友收发消息
        /**
     * 给微信好友发消息
     * @author wechatno:tangjinjinwx
     * @blog http://www.wlkankan.cn
     */
    @Async
    public void handleMsg(ChannelHandlerContext ctx, TransportMessage vo, String contentJsonStr) {
        try {
            log.debug(contentJsonStr);
            TalkToFriendTaskMessage.Builder bd = TalkToFriendTaskMessage.newBuilder();
            JsonFormat.parser().merge(contentJsonStr, bd);
            TalkToFriendTaskMessage req = bd.build();
            // 消息记录数据库
            asyncTaskService.savePcMessage(req);
            // 将消息转发送给手机客户端
            asyncTaskService.msgSend2Phone(ctx, req.getWeChatId(), EnumMsgType.TalkToFriendTask, vo, req);

        } catch (Exception e) {
            e.printStackTrace();
            MessageUtil.sendJsonErrMsg(ctx, EnumErrorCode.InvalidParam, Constant.ERROR_MSG_DECODFAIL);
        }
    }

 
    /**
     * 微信好友发来聊天消息通知
     * @author wechatno:tangjinjinwx
         * @blog http://www.wlkankan.cn
     */
    @Async
    public void handleMsg(ChannelHandlerContext ctx, TransportMessage vo) {
        try {
            FriendTalkNoticeMessage req = vo.getContent().unpack(FriendTalkNoticeMessage.class);
            log.debug(JsonFormat.printer().print(req));
            
            log.debug(LocalDateTime.now()+" 微信好友发来聊天消息  对应的线程名: "+Thread.currentThread().getName());
              
            //拦截消息
            asyncTaskService.msgAopTask(ctx,req,vo.getAccessToken(), vo.getId());
            //消息转发到pc端
            asyncTaskService.msgSend2pc(req.getWeChatId(), EnumMsgType.FriendTalkNotice, req);
             
            // 告诉客户端消息已收到
            MessageUtil.sendMsg(ctx, EnumMsgType.MsgReceivedAck, vo.getAccessToken(), vo.getId(), null);
            
            WxAccountInfo account = weChatAccountService.findWeChatAccountInfoByWeChatId(req.getWeChatId());
            //消息记录数据库
            if (null != account){
                asyncTaskService.saveMessage(account, req);
            }
             
        } catch (Exception e) {
            e

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要通过企业微信API接口发送消息到个人微信,需要进行以下步骤: 1. 在企业微信后台创建一个应用,并获取应用的Secret和AgentID。 2. 获取个人微信账号的OpenID,可以通过个人微信号扫描企业微信应用的二维码来获取。 3. 使用企业微信API的发送消息接口,将消息发送给个人微信账号的OpenID。 具体实现步骤如下: 1. 在企业微信后台创建一个应用,并获取应用的Secret和AgentID。 2. 调用企业微信API中的获取成员信息接口,获取个人微信账号的OpenID。调用接口时需要使用企业微信应用的Secret。 3. 使用企业微信API中的发送消息接口,将消息发送给个人微信账号的OpenID。调用接口时需要使用企业微信应用的AgentID和Secret,并将消息内容以JSON格式传递给接口。 具体实现代码示例如下(使用Python语言): ```python import requests import json # 企业微信应用的Secret和AgentID corpsecret = 'your_corpsecret' agentid = 'your_agentid' # 个人微信账号的OpenID openid = 'your_openid' # 获取个人微信账号的OpenID url_get_user = f'https://qyapi.weixin.qq.com/cgi-bin/user/convert_to_openid?access_token={access_token}' data = { 'userid': 'your_userid' } res = requests.post(url_get_user, json=data) openid = res.json()['openid'] # 发送消息给个人微信账号 url_send_msg = f'https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token={access_token}' data = { 'touser': openid, 'msgtype': 'text', 'text': { 'content': 'Hello, world!' }, 'agentid': agentid } res = requests.post(url_send_msg, json=data) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值