侧边栏壁纸
博主昵称
梦之中小俊

以前高中时,羡慕大学考试只要及格就行;现在大学了,怀念高中考试及不及格都行??

PHP

thinkphp6 - wss聊天

梦之中小俊
2022-05-18 / 0 评论 / 464 阅读 / 推送成功!
[
            'local_cert' =>'/srv/nginx/ssl/xxxx.com.pem',
            'local_pk' =>'/srv/nginx/ssl/xxxx.com.key',
            'verify_peer' =>false,
            'verify_peer_name' => false,
            //是否允许自签名证书。
            'allow_self_signed'=>true,
            ]
        ];// socket 
        
    public function __construct()
    {
        parent::__construct();
        $this->onMessage();
        // 或者这样调用
        $this->worker->onWorkerStart = function($worker)
        {
            echo "Worker starting...\n";
        };
    }
    /**
     * 收到信息
     * @param $connection
     * @param $data
     */
    public function onMessage()
    {
        $this->worker->onMessage = function($connection, $data)
        {
            
            $arr = json_decode($data,false);
            
            if($arr->type=='bind'){
                // 没验证的话把第一个包当做uid(这里为了方便演示,没做真正的验证)
                $connection->uid = $arr->uid;
               /* 保存uid到connection的映射,这样可以方便的通过uid查找connection,
                * 实现针对特定uid推送数据
                */
               $this->worker->uidConnections[$connection->uid] = $connection;
           
                dump($arr);
                dump($arr->uid);
            }
            if($arr->type=='text'){
                if(isset($this->worker->uidConnections[$arr->to_user_id]))
                {
                    $conn = $this->worker->uidConnections[$arr->to_user_id];
                    Db::name('chat_msg')->insertGetId([
                        'f_id'=>$arr->uid,
                        'f_name'=>time(),
                        'f_ip'=>'127.0.0.1',
                        't_id'=>$arr->to_user_id,
                        't_name'=>time(),
                        't_msg'=>$arr->data,
                        'r_state'=>0,
                        'add_time'=>time(),
                    ]);
            
                    $conn->send($data);
                    
                    dump('会员'.$arr->uid.'向'.$arr->to_user_id.$data.'参数:'.'时间啊:'.date('Y-m-d H:i:s',time()));
                }else{
                    echo '用户不在线'.$arr->to_user_id;
                }
            }
           
        };
    }
    
}
本文共 个字数,平均阅读时长 ≈ 分钟,您已阅读:0时0分0秒。
3

打赏

评论 (0)

OωO
  • ::(呵呵)
  • ::(哈哈)
  • ::(吐舌)
  • ::(太开心)
  • ::(笑眼)
  • ::(花心)
  • ::(小乖)
  • ::(乖)
  • ::(捂嘴笑)
  • ::(滑稽)
  • ::(你懂的)
  • ::(不高兴)
  • ::(怒)
  • ::(汗)
  • ::(黑线)
  • ::(泪)
  • ::(真棒)
  • ::(喷)
  • ::(惊哭)
  • ::(阴险)
  • ::(鄙视)
  • ::(酷)
  • ::(啊)
  • ::(狂汗)
  • ::(what)
  • ::(疑问)
  • ::(酸爽)
  • ::(呀咩爹)
  • ::(委屈)
  • ::(惊讶)
  • ::(睡觉)
  • ::(笑尿)
  • ::(挖鼻)
  • ::(吐)
  • ::(犀利)
  • ::(小红脸)
  • ::(懒得理)
  • ::(勉强)
  • ::(爱心)
  • ::(心碎)
  • ::(玫瑰)
  • ::(礼物)
  • ::(彩虹)
  • ::(太阳)
  • ::(星星月亮)
  • ::(钱币)
  • ::(茶杯)
  • ::(蛋糕)
  • ::(大拇指)
  • ::(胜利)
  • ::(haha)
  • ::(OK)
  • ::(沙发)
  • ::(手纸)
  • ::(香蕉)
  • ::(便便)
  • ::(药丸)
  • ::(红领巾)
  • ::(蜡烛)
  • ::(音乐)
  • ::(灯泡)
  • ::(开心)
  • ::(钱)
  • ::(咦)
  • ::(呼)
  • ::(冷)
  • ::(生气)
  • ::(弱)
  • ::(狗头)
泡泡
阿鲁
颜文字
取消
  1. 头像
    6767 Lv.1
    iPhone · Safari
    沙发

    画图

    回复
  2. 头像
    6767 Lv.1
    Windows 10 · Google Chrome
    板凳

    表情

    回复
  3. 头像
    透露 Lv.2
    Android · QQ Browser
    第30楼

    649494848

    回复