瀏覽代碼

换环信账号,临时方法

lizhen_gitee 1 年之前
父節點
當前提交
48850a4e46
共有 1 個文件被更改,包括 84 次插入0 次删除
  1. 84 0
      application/api/controller/Party.php

+ 84 - 0
application/api/controller/Party.php

@@ -306,7 +306,91 @@ class Party extends Api
         $this->success("获取成功!",$partyInfo);
     }
 
+    public function test2()
+    {
+        $list = Db::name('party')->order('id asc')->select();
+        foreach($list as $key => $partyInfo){
+            dump($partyInfo['id']);
+            //去环信建个群组
+
+            $easemob_room_id = $this->easemob_createroom_new($partyInfo['party_name'],$partyInfo['party_logo'],8,$partyInfo['is_public'],$partyInfo['room_type'],$partyInfo['user_id']);
+
+            $update['easemob_room_id']  = $easemob_room_id;
+
+            Db::name('party')->where('id',$partyInfo['id'])->update($update);
+
+            $partyInfo = Db::name('party')->where(["id"=>$partyInfo['id']])->find();
+            $partyInfo["is_new"] = 0;
+
+            // 加入缓存,rediskey:派对详情
+            $room_type = $partyInfo['room_type'];
+            $this->redis->set($this->roomTypeArr[$room_type]."_".$partyInfo['id'],json_encode($partyInfo));
+
+            dump($easemob_room_id);
+        }
+    }
+
     //创建房间,初始化环信
+    private function easemob_createroom_new($party_name,$party_logo,$seatnum,$is_public,$room_type,$auth_uid){
+        //[环信]创建聊天室
+        $easemob = new Easemob();
+        $easemob_room_id = $easemob->room_createRoom($party_name,$party_name,$auth_uid);
+        if(empty($easemob_room_id)){
+            $this->error('创建房间失败');
+        }
+
+        //[环信]初始化房间,初始化自定义属性
+        $matedata = [
+            'seatnum'=> $seatnum,//麦位数量
+            'waitsing_list'  => json_encode([]),//已点歌曲列表
+            'party_name' => $party_name,//房名字
+            'party_logo' => $party_logo,//logo
+            'is_public'  => $is_public,//是否公开
+            'room_type'  => $room_type,//房间类型
+            'online_user_num' => 0,//当前房间在线的人
+            'wealth_top3_userlist' => json_encode([]),//财富榜前3个人列表
+            'background' => '', //房间背景
+            //'party_notice'  => '请编辑房间公告',
+            //'party_notice_detail'  => '请编辑房间公告内容',
+        ];
+        $rs = $easemob->room_setRoomCustomAttributeForced($easemob_room_id,$auth_uid,$matedata);
+
+        //[环信]初始化N个麦位
+        $seatdata = [];
+        for($i=0;$i<$seatnum;$i++){
+            $seat = [
+                'charm'    => 0,                    //红心,魅力值
+
+                'isMaster'       => false,            // 是否是房主
+                'headUrl'        => '',              // 头像
+                'userNo'         => '',               // 座位上用户no
+                'rtcUid'         => '',               // 座位上用户id,与rtc的userId一致
+                'name'           => '',                 // 座位上用户昵称
+                'seatIndex'      => -1,               // 座位编号
+                'chorusSongCode' => '',             // 是否合唱
+                'isAudioMuted'   => 1,            // 是否静音
+                'isVideoMuted'   => 0,            // 是否开启视频
+                'checked'        => false,       // 用于送礼物选择用户
+                'isUsed'         => true,          // 用于送礼物选择用户
+                'gender'         => 1, //性别
+            ];
+
+            //创建完房间就进入,所以房主直接在麦位0
+            /*if($i == 0){
+                $seat['isMaster'] = true;
+                $seat['headUrl']  = localpath_to_netpath($this->auth->avatar);
+                $seat['userNo']   = $this->auth->id;
+                $seat['rtcUid']   = $this->auth->id;
+                $seat['name']     = $this->auth->nickname;
+                $seat['seatIndex'] = $i;
+            }*/
+
+            $seatdata['seat'.$i] = json_encode($seat);
+        }
+        $rs = $easemob->room_setRoomCustomAttributeForced($easemob_room_id,$auth_uid,$seatdata);
+
+        return $easemob_room_id;
+    }
     private function easemob_createroom($party_name,$party_logo,$seatnum,$is_public,$room_type){
         //[环信]创建聊天室
         $easemob = new Easemob();