国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

【已解決】當(dāng)訪客離線觸發(fā)onClose,如何發(fā)送$uid給客服端以便做對(duì)應(yīng)清除操作?

俊熙大掌柜

剛接觸GatewayWorker,請(qǐng)教大神,訪客離線如何向客服端發(fā)送離線信息,好讓客服端做對(duì)應(yīng)數(shù)據(jù)清楚操作?

public static function onMessage($client_id, $message){
    $message_data = json_decode($message,true);  
    if(!$message_data){
    return;
    }
switch($message_data['type']){
    case "bind-user"; //訪客綁定uid
        $userid = $message_data['userid'];//訪客id
        $kefuid = $message_data['kefuid'];//客服id

        //將訪客userid與client_id綁定
        Gateway::bindUid($client_id,$userid);

        $text = "已連接";
        $data = [  
          'type'=>"text",
          'userid'=>$userid,
          'chat'=>$text,
        ];

        //提示訪客已連接
        Gateway::sendToUid($userid,json_encode($data));

        $url = $message_data['url'];
        $ref = $message_data['ref'];
        $ip = $message_data['ip'];
        $city = $message_data['city'];
        $data = [  
            'type'=>"new-user-in",  //新訪客
            'fromid'=>$fromid,
            'ref'=>$ref,
            'ip'=>$ip,
            'city'=>$city,
            'time'=> time()
        ];
        //向客服發(fā)送新訪客信息
        Gateway::sendToUid($kefuid,json_encode($data));
    return;

    case "msg";  //轉(zhuǎn)發(fā)消息
      $text = nl2br(htmlspecialchars($message_data['data']));
      $userid = $message_data['userid'];
      $kefuid = $message_data['kefuid'];
      $data = [
          'type'=>"text",
          'userid'=>$userid,
          'kefuid'=>$kefuid,
          'chat'=>$text,
          'time'=> time()
      ];
      //檢測(cè)否在線后發(fā)送消息------------------
      if(Gateway::isUidOnline($kefuid)){
         Gateway::sendToUid($kfuid,json_encode($data)); 
        }
        else
        {
        $data = [
            'type'=>"kefu-out",
            'kefuid'=>$kefuid,
        ];
         Gateway::sendToUid($userid,json_encode($data)); 
        }
    return;

  }// switch結(jié)束
}//onMessage結(jié)束
public static function onClose($client_id){
    $data = [
        'type'=>"userid-out",
        'kefuid'=>$kefuid,
    ];
    Gateway::sendToUid($kefuid,json_encode($data));
    //請(qǐng)問(wèn)訪客離線如何把userid發(fā)送給kefuid,讓客服端根據(jù)userid刪除對(duì)應(yīng)userid的訪客軌跡數(shù)據(jù)? 
}//onClose結(jié)束
2586 2 0
2個(gè)回答

walkor 打賞

Gateway::sendToUid($kefuid,json_encode($data));即可

  • 俊熙大掌柜 2020-02-22

    public static function onClose($client_id){
    $data = [
    'type'=>"userid-out",
    'kefuid'=>$kefuid,
    ];
    Gateway::sendToUid($kefuid,json_encode($data));
    我再試試,昨天一直發(fā)送不出去,激活不了userid-out 事件

  • walkor 2020-02-22

    應(yīng)該是自己的業(yè)務(wù)邏輯bug,需要自己定位。

俊熙大掌柜

已解決,需要在新訪客綁定$uid的同時(shí)設(shè)置session,然后再onCloser觸發(fā)的時(shí)候直接從session取出保存數(shù)組。
。。。。。。

Gateway::bindUid($client_id,$fromid);
//保存session數(shù)組
Gateway::setSession($client_id, array('user'=>$user,'kefu'=>$kefu));

    //將訪客userid與client_id綁定
    Gateway::bindUid($client_id,$userid);

    。。。。。。

public static function onClose($client_id){
$kefu = $_SESSION['kefu'];
$data = [
'type'=>"userid-out",
'user'=>$_SESSION['user'],
'kefu'=>$_SESSION['kefu']
];
Gateway::sendToUid($kefu,json_encode($data));

}

  • 暫無(wú)評(píng)論
年代過(guò)于久遠(yuǎn),無(wú)法發(fā)表回答
??