收藏
回答

客服消息转发到网页版客服工具没反应

问题模块 框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
API和组件 小程序 Bug 转发客服消息 客户端 7.0.3 2.6.5



开发者只在响应包中返回 MsgType 为 transfer_customer_service 的消息,微信服务器收到响应后就会把当次发送的消息转发至客服系统。

{"ToUserName":"o4SqQ4gknu57-Za3uxN_noUi5Yl4","FromUserName":"打码","CreateTime":1554974253,"MsgType":"transfer_customer_service"}

设置了这个还是不行

最后一次编辑于  04-11  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

4 个回答

  • J.
    J.
    04-12

    没有顺序要求的,这里需要保证json格式正确,并且在5s内回复微信的服务器,同时ToUserName必须是正确的用户openid。

    04-12
    赞同
    回复 6
    • muse
      muse
      04-12

      但我换了顺序就不行。。。怀疑人生了

      04-12
      回复
    • J.
      J.
      04-12回复muse

      这是当时微信收到的响应报文( 单引号里的内容),多了双引号和结尾的success, 不是json格式。

      '"{"ToUserName":"o4SqQ4gknu57-Za3uxN_noUi5Yl4","FromUserName":"gh_4644ef3ec9c1","CreateTime":1554974253,"MsgType":"transfer_customer_service"}"success'

      04-12
      回复
    • muse
      muse
      04-12回复J.

      是多发了个success

      04-12
      回复
    • muse
      muse
      04-12回复muse

      被后台秀了,大佬我错了

      04-12
      回复
    • 波
      05-30

      大佬,成功了吗?我换了顺序,也是json格式,还是不成功。

      05-30
      回复
    查看更多(1)
  • 刮皮老土豆
    刮皮老土豆
    08-21

    推送消息那里设置的JSON就要返回JOSN格式的,设置的XML就要返回XML格式的

    KfMessage kfMessage = new KfMessage();
    kfMessage.setToUserName(messageJson.getString("FromUserName"));
    kfMessage.setFromUserName(messageJson.getString("ToUserName"));
    kfMessage.setCreateTime(messageJson.getLong("CreateTime"));
    kfMessage.setMsgType("transfer_customer_service");
     
    public class KfMessage {
        @JsonProperty("ToUserName")
        private String toUserName;
        @JsonProperty("FromUserName")
        private String fromUserName;
        @JsonProperty("CreateTime")
        private long createTime;
        @JsonProperty("MsgType")
        private String msgType;
     
        public String getToUserName() {
            return toUserName;
        }
     
        public void setToUserName(String toUserName) {
            this.toUserName = toUserName;
        }
     
        public String getFromUserName() {
            return fromUserName;
        }
     
        public void setFromUserName(String fromUserName) {
            this.fromUserName = fromUserName;
        }
     
        public long getCreateTime() {
            return createTime;
        }
     
        public void setCreateTime(long createTime) {
            this.createTime = createTime;
        }
     
        public String getMsgType() {
            return msgType;
        }
     
        public void setMsgType(String msgType) {
            this.msgType = msgType;
        }
    }
                        kfMessage.setCreateTime(messageJson.getLong("CreateTime"));
                        kfMessage.setMsgType("transfer_customer_service");

    然后controller返回kfMessage就好了

    08-21
    赞同
    回复
  • 普昂月半
    普昂月半
    05-17

    大佬 能看一眼转发那里的代码吗 调不通啊

    05-17
    赞同
    回复
  • muse
    muse
    04-11

    有人知道吗,后台设置了json格式


    04-11
    赞同
    回复 8
    • muse
      muse
      04-11

      @娇华


      04-11
      回复
    • muse
      muse
      04-11回复muse

      @拾忆 大佬知道为啥吗

      04-11
      回复
    • 拾忆
      拾忆
      04-11回复muse
      我不是大佬,没做过客服这块功能,给不了你意见。看看 @华哥 能不能帮你
      04-11
      回复
    • muse
      muse
      04-11

      服气了,要按顺序来{"CreateTime":1504178554,"FromUserName":"打码","MsgType":"transfer_customer_service","ToUserName":"oCJXx0FsHJsNZ2RmFE5V5jkmqNgA"} 微信我服了you

      04-11
      回复
    • 拾忆
      拾忆
      04-11回复muse
      哈哈,尴尬,不能打乱顺序
      04-11
      回复
    查看更多(3)