Easemob.php 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. <?php
  2. namespace app\common\library;
  3. use Easemob\Auth;
  4. use Easemob\User;
  5. use Easemob\Room;
  6. class Easemob {
  7. protected $auth;
  8. protected $room;
  9. protected $user;
  10. public function __construct() {
  11. //初始化配置
  12. $easemob_config = config('easemob');
  13. $appKey = $easemob_config['appkey'];
  14. $clientIdOrAppID = $easemob_config['client_id'];
  15. $clientSecretOrAppCertificate = $easemob_config['client_secret'];
  16. $this->auth = new Auth($appKey,$clientIdOrAppID,$clientSecretOrAppCertificate);
  17. $this->room = new Room($this->auth);
  18. $this->user = new User($this->auth);
  19. }
  20. //注册用户
  21. /*
  22. array(6) {
  23. ["uuid"] => string(36) "9783ddc0-7eeb-11ee-bbeb-913291843983"
  24. ["type"] => string(4) "user"
  25. ["created"] => int(1699526081953)
  26. ["modified"] => int(1699526081953)
  27. ["username"] => string(2) "12"
  28. ["activated"] => bool(true)
  29. }
  30. */
  31. public function user_create($user_id){
  32. $user_id = '' . $user_id . '';
  33. $register_data = ['username'=>$user_id,'password'=>123456];
  34. $rs = $this->user->create($register_data);
  35. //dump($rs);
  36. if(isset($rs['code'])){
  37. return false;
  38. }
  39. if(isset($rs['uuid'])){
  40. return true;
  41. }
  42. //默认
  43. return false;
  44. }
  45. /////////////////////////////////管理聊天室/////////////////////////////
  46. //https://docs-im-beta.easemob.com/document/server-side/chatroom.html
  47. //获取 app 中的聊天室
  48. //获取用户加入的聊天室
  49. //查询聊天室详情
  50. public function room_getRoom($roomId){
  51. $rs = $this->room->getRoom($roomId);
  52. return $rs;
  53. }
  54. //创建聊天室
  55. /*
  56. string(15) "230821166383116"
  57. */
  58. public function room_create($name,$info,$user_id){
  59. $room_id = $this->room->createRoom($name,$info,$user_id,[$user_id]);
  60. return $room_id;
  61. }
  62. //修改聊天室信息
  63. //删除聊天室
  64. //获取聊天室公告
  65. //修改聊天室公告
  66. //设置聊天室自定义属性
  67. //获取聊天室自定义属性
  68. //删除聊天室自定义属性
  69. //强制设置聊天室自定义属性
  70. //强制删除聊天室自定义属性
  71. ///////////////管理聊天室成员//////////////////
  72. //分页获取聊天室成员列表
  73. //添加单个聊天室成员
  74. //批量添加聊天室成员
  75. //移除单个聊天室成员
  76. //批量移除聊天室成员
  77. //获取聊天室管理员列表
  78. //添加聊天室管理员
  79. //移除聊天室管理员
  80. //////////////////管理黑名单///////////
  81. //////////////////管理白名单///////////
  82. //////////////////管理禁言///////////
  83. }