User.php 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. <?php
  2. namespace addons\shopro\library\chat\provider\auth;
  3. use addons\shopro\exception\ShoproException;
  4. use addons\shopro\library\chat\traits\DebugEvent;
  5. use addons\shopro\library\chat\traits\Helper;
  6. use addons\shopro\library\chat\traits\Session;
  7. use addons\shopro\library\chat\traits\NspData;
  8. use addons\shopro\library\chat\provider\auth\traits\Customer;
  9. use addons\shopro\library\chat\Chat;
  10. use addons\shopro\library\chat\Sender;
  11. /**
  12. * 用户
  13. */
  14. class User
  15. {
  16. /**
  17. * debug 方式注册事件
  18. */
  19. use DebugEvent;
  20. /**
  21. * session 存储助手
  22. */
  23. use Session;
  24. /**
  25. * 助手方法
  26. */
  27. use Helper;
  28. /**
  29. * 顾客事件
  30. */
  31. use Customer;
  32. /**
  33. * 绑定数据到 nsp
  34. */
  35. use NspData;
  36. /**
  37. * 当前 Chat 实例
  38. *
  39. * @var Chat
  40. */
  41. protected $chat;
  42. /**
  43. * 当前 phpsocket.io 实例
  44. *
  45. * @var SocketIO
  46. */
  47. protected $io;
  48. /**
  49. * 当前socket 连接
  50. *
  51. * @var Socket
  52. */
  53. protected $socket;
  54. /**
  55. * 当前 命名空间
  56. *
  57. * @var Nsp
  58. */
  59. public $nsp;
  60. /**
  61. * getter 实例
  62. *
  63. * @var Getter
  64. */
  65. protected $getter;
  66. /**
  67. * sender 实例
  68. *
  69. * @var Getter
  70. */
  71. protected $sender;
  72. /**
  73. * getter 实例
  74. *
  75. * @var ChatService
  76. */
  77. protected $chatService;
  78. /**
  79. * 初始化
  80. *
  81. * @param Chat $chat
  82. */
  83. public function __construct(Chat $chat)
  84. {
  85. $this->chat = $chat;
  86. $this->io = $chat->io;
  87. $this->socket = $chat->socket;
  88. $this->nsp = $chat->nsp;
  89. $this->getter = $chat->getter;
  90. $this->chatService = $chat->chatService;
  91. $this->sender = $chat->sender;
  92. }
  93. public function on()
  94. {
  95. // 用户相关事件
  96. // 处理用户登录,将用户未登录时候产生的 连接,聊天记录,更新成当前用户
  97. // 更新信息
  98. // 直接注册顾客相关事件
  99. $this->customerOn();
  100. // 用户事件,待补充
  101. // ......
  102. }
  103. }