123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147 |
- <?php
- namespace app\api\controller;
- use app\common\controller\Api;
- use app\common\library\Easemob;
- require_once EXTEND_PATH . 'shengwang/src/RtcTokenBuilder2.php';
- require_once EXTEND_PATH . 'shengwang/src/RtmTokenBuilder2.php';
- /**
- * 手机短信接口
- */
- class Test extends Api
- {
- protected $noNeedLogin = '*';
- protected $noNeedRight = '*';
- //////////////////////////////
- //注册用户,放到注册用户里
- public function registeruser(){
- $easemob = new Easemob();
- $rs = $easemob->user_create($this->auth->id);
- dump($rs);
- }
- //创建聊天室
- public function createroom(){
- $easemob = new Easemob();
- $room_id = $easemob->room_create('聊天室名称','聊天室简介',2);
- dump($room_id);
- }
- //获取聊天室详情
- public function getroominfo(){
- $easemob = new Easemob();
- $room_id = 230909536174085;
- $rs = $easemob->room_getRoom($room_id);
- dump($rs);
- }
- //修改聊天室
- public function updateroominfo(){
- $easemob = new Easemob();
- $room_id = 230909536174085;
- $rs = $easemob->room_updateRoom($room_id,'聊天室名称','聊天室简介');
- dump($rs);
- }
- //强制设置聊天室属性,共100个
- //seat1 到 seat 8 为 八个麦位的用户信息
- //wait_sing 待唱歌曲列表 无序
- //wait_sing_order
- public function setmetadata(){
- $easemob = new Easemob();
- $room_id = 230909536174085;
- $owner_id = 4;
- $matedata = [
- //限量10个
- 'seat11' => 666,
- 'seat22' => 666,
- 'seat33' => 666,
- 'seat44' => 666,
- 'seat55' => 666,
- 'seat66' => 666,
- 'seat77' => 666,
- 'seat88' => 666,
- 'seat99' => 666,
- 'seat100' => 666,
- ];
- $rs = $easemob->room_setRoomCustomAttributeForced($room_id,$owner_id,$matedata);
- dump($rs);
- }
- //获取聊天室属性
- public function getmetadata(){
- $easemob = new Easemob();
- $room_id = 230909515202562;
- $key = 'seat1';
- $key2 = 'seat2';
- //可以一个,可以多个,不能有重复
- $keys = [$key,$key2];
- //空数组,则全返回
- //$keys = [];
- $rs = $easemob->room_getRoomCustomAttribute($room_id,$keys);
- dump($rs);
- //dump($rs[$key]);
- //dump($rs[$key2]);
- }
- //强制删除聊天室属性
- public function deletemetadata(){
- $easemob = new Easemob();
- $room_id = 230909515202562;
- $owner_id = 2;
- $keys = ['waitsing_list'];
- $rs = $easemob->room_deleteRoomCustomAttributeForced($room_id,$owner_id,$keys);
- dump($rs);
- }
- //////////////////////////////
- //声网3个token
- public function shengwang_token($easemob_room_id = '230909515202562'){
- $config = config('shengwang');
- $appId = $config['app_id'];
- $appCertificate = $config['app_zhengshu'];;
- $channelName = $easemob_room_id;
- $uid = 0; //任何人都可进入
- $uidStr = '0';//任何人都可进入
- $tokenExpirationInSeconds = 86400;
- $privilegeExpirationInSeconds = 86400;
- //rtc token
- $rtc_token = \RtcTokenBuilder2::buildTokenWithUid($appId, $appCertificate, $channelName, $uid, \RtcTokenBuilder2::ROLE_PUBLISHER, $tokenExpirationInSeconds, $privilegeExpirationInSeconds);
- //chorus token
- $chorus_token = \RtcTokenBuilder2::buildTokenWithUid($appId, $appCertificate, $channelName.'_ex', $uid, \RtcTokenBuilder2::ROLE_PUBLISHER, $tokenExpirationInSeconds, $privilegeExpirationInSeconds);
- //rtm token
- $user = '0';
- $expireTimeInSeconds = 86400;
- $rtm_token = \RtmTokenBuilder2::buildToken($appId, $appCertificate, $user, $expireTimeInSeconds);
- $result = [
- 'rtc_token' => $rtc_token,
- 'chorus_token' => $chorus_token,
- 'rtm_token' => $rtm_token,
- ];
- //dump($result);
- return $result;
- }
- }
|