分享
  • 收藏
  • 举报
    X
    紧急技术求助帖,高手达人们请移驾指导下
    549
    5

    熟悉的都知道,近期我在二开改造群聊关键词回复,关键群聊关键词改装成智能问答,尤其将相似度区间值的答案也成功自动回复,算是相当成功了,于是就想让公众号关键词回复那里也改成这样的功能,但现在遇到了困难,改造不成功,只能自动回复一个,我的判断是程序中的echo $this->give_news($_arr);或echo $this->give_text( $ts['answer'] );仅被激发了一次,所以只能在公众号里回复一个消息,请高手指导解决下,谢谢。

    改造后的程序如下:

        //关键字自动回复
        private  function keyword_auto_reply(){
            $content = $this->From_content;
            if($content==''){
                return ;
            }
            $array = cache('weixin_aoto_reply_keyword');  
            if(empty($array)){
                $array = WeixinAutoreply::get_keyword();
                cache('weixin_aoto_reply_keyword',$array);
            }
              //先定义一个数组$a,用于存放匹配值的答案
            $a=array();
            foreach($array AS $key=>$value){
        //     $res = getSimilar456("$content","$key");
        //   logs($res['score']);
    
                $obj = new TextSimilarity ("$content","$key");
                // $lcs->getSimilar123("$content","$key");
            //   logs($obj->run());
                	 //判断匹配值
    		   if( $obj->run()>0.8 || $obj->run()>0.40&& $obj->run()<0.8 ) {
                //将符合判断值的答案先放入数组$a
               array_push($a, $tt = WeixinAutoreply::get($value));
               }
             }
            //  判断新数组开始
             if(!empty($a)){
                   logs($a);//此为了查验证是否新数组成功
                   $count = count($a);
                   logs(总共有.$count.个答案组);
                    foreach($a AS $ts){
                    // 判断信息类别并输出开始
                     if($ts['type']==1){	//图文信息
                        $_array = unserialize($ts['answer']);
                        $_arr = [];
                        if(is_array($_array)){
                            foreach($_array AS $_r){
                                $_arr[] = array(
                                    'title'=>$_r['title'],
                                    'picurl'=>tempdir($_r['pic']),
                                    'about'=>$_r['desc'],
                                    'url'=>$_r['link'],
                                );
                            }
                        }
                        if($_arr){
                            echo $this->give_news($_arr);
                            exit;
                        }
                    }else{	//纯文本信息
                        if($ts['answer']!=''){
                            echo $this->give_text( $ts['answer'] );
                            exit;
                        }                    
                    }
                    //判断信息类别并输出截止
                    }
                 }
            // 判断新数组结束
    
            // return ;
        }
        
        //客服

    logs标记出来,新数组$a确实存在,且是正确匹配出来的答案组

    但通过这个遍历答案组$a,却并不能全部在公众号内输出,只能输出一个。


    4
    赏礼
    赏钱
    收藏
    点击回复
        全部留言
    • 5
    0 赏钱 赏礼回复
    • 银杏114在线 实战运营者 消费:3609.79元 2022-09-10 09:26 09:266楼
      自己顶下
    1 赏钱 赏礼回复
    • 锡城圈子 实战运营者 消费:4108.13元 2022-09-06 09:36 09:36
      华为
      6楼
      组装一下答案呢
    0 赏钱 赏礼回复
    • 袁冬 普通粉丝 消费:160.85元 2022-09-06 08:09 08:09
      华为
      6楼
      厉害  来学习
      袁冬 消费:160.85元 华为 2022-09-06 08:10
      公众号回复好像现在就是只能回复一条吧
    0 赏钱 赏礼回复
    更多回复
        你可能感兴趣的主题
    恢复多功能编辑器
  • 3 1
  • 推荐内容
    扫一扫访问手机版
    请选择要切换的马甲:

     
    网页即时交流
    QQ咨询
    咨询热线
    020-28998648