msg_builder.php 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: stanley-king
  5. * Date: 2018/8/9
  6. * Time: 下午4:00
  7. */
  8. namespace room;
  9. class msg_builder
  10. {
  11. public static function create_push($user, $roomid, $info)
  12. {
  13. $msg = [];
  14. $msg['msgtype'] = "message";
  15. $msg['act'] = "room";
  16. $msg['op'] = "relay";
  17. $msg['relay_type'] = "users";
  18. $msg['receivers'] = [$user];
  19. $msg['room'] = 0;
  20. $msg['receiver_type'] = proto_type::sroom_push;
  21. $msg['body']['act'] = proto_type::act_room;
  22. $msg['body']['op'] = 'create';
  23. $msg['body']['msgtype'] = "message";
  24. $msg['body']['room'] = $roomid;
  25. $msg['body']['room_info'] = $info;
  26. return $msg;
  27. }
  28. public static function build_message($roomid, $room_type)
  29. {
  30. $msg['act'] = "room";
  31. $msg['op'] = "build";
  32. $msg['msgtype'] = "message";
  33. $msg['room'] = $roomid;
  34. $msg['receiver_type'] = $room_type;
  35. return $msg;
  36. }
  37. public static function invited_push($roomid, $invitees, $inviter, $room_info)
  38. {
  39. $msg = [];
  40. $msg['msgtype'] = "message";
  41. $msg['act'] = "room";
  42. $msg['op'] = "relay";
  43. $msg['relay_type'] = "roomusers";
  44. $msg['receivers'] = $invitees;
  45. $msg['room'] = $roomid;
  46. $msg['receiver_type'] = proto_type::sroom_chat;
  47. $msg['body']['act'] = proto_type::act_room;
  48. $msg['body']['op'] = 'invited';
  49. $msg['body']['msgtype'] = "message";
  50. $msg['body']['room'] = $roomid;
  51. $msg['body']['room_info'] = $room_info;
  52. $msg['body']['inviter'] = $inviter;
  53. return $msg;
  54. }
  55. public static function change_push($roomid, $room_info)
  56. {
  57. $msg = [];
  58. $msg['msgtype'] = "message";
  59. $msg['act'] = "room";
  60. $msg['op'] = "relay";
  61. $msg['relay_type'] = "room";
  62. $msg['receivers'] = [];
  63. $msg['room'] = $roomid;
  64. $msg['receiver_type'] = proto_type::sroom_chat;
  65. $msg['body']['act'] = proto_type::act_room;
  66. $msg['body']['op'] = 'changed';
  67. $msg['body']['msgtype'] = "message";
  68. $msg['body']['room'] = $roomid;
  69. $msg['body']['room_info'] = $room_info;
  70. return $msg;
  71. }
  72. public static function invite_message($roomid, $room_type, $invitees)
  73. {
  74. $msg['act'] = "room";
  75. $msg['op'] = "invite";
  76. $msg['msgtype'] = "message";
  77. $msg['room'] = $roomid;
  78. $msg['receiver_type'] = $room_type;
  79. $msg['invitees'] = $invitees;
  80. return $msg;
  81. }
  82. public static function leave_message($roomid, $room_type, $user)
  83. {
  84. $msg['act'] = "room";
  85. $msg['op'] = "leave";
  86. $msg['msgtype'] = "message";
  87. $msg['room'] = $roomid;
  88. $msg['receiver_type'] = $room_type;
  89. $msg['leaves'] = $user;
  90. return $msg;
  91. }
  92. }