person.js 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. import axios from '../http'
  2. import { cryptoMsg } from '@/util/util.js'
  3. import Message from '@/store/db/Message.js'
  4. export default {
  5. /**
  6. * 用户最新消息
  7. * @param {Object} data
  8. * @param {String} data.group_id
  9. * @param {String} data.client_hash // 客户端最新消息hash
  10. */
  11. async getNewMsg (params) {
  12. let res = await axios.request({
  13. url: 'person/newMsg',
  14. method: 'get',
  15. needLogin: true,
  16. params
  17. })
  18. const objMessage = new Message()
  19. // 如果不同步执行,第一次初始化数据库会出现很奇怪的问题...
  20. await objMessage.saveMsg(params['session_id'], res.data.data)
  21. return res
  22. },
  23. /**
  24. * 用户历史消息
  25. * @param {Object} data
  26. * @param {String} data.group_id
  27. * @param {String} data.client_hash // 客户端最旧消息hash
  28. */
  29. getHistoryMsg (params) {
  30. return axios.request({
  31. url: 'person/historyMsg',
  32. method: 'get',
  33. needLogin: true,
  34. params
  35. })
  36. },
  37. /**
  38. * 发送私聊信息
  39. * @param {Object} data
  40. * @param {Number} data.session_id 会话id
  41. * @param {Number} data.msg_type 消息类型:0:文本,1:图片,2:视频
  42. * @param {String} data.msg 内容
  43. */
  44. sendMsg (data) {
  45. data.msg = cryptoMsg(data.msg)
  46. return axios.request({
  47. url: 'person/sendMsg',
  48. method: 'post',
  49. needLogin: true,
  50. data
  51. })
  52. },
  53. /**
  54. * 发送私聊信息
  55. * @param {Object} data
  56. * @param {String} data.session_id 会话id
  57. * @param {String} data.hash 会话hash
  58. */
  59. repealPersonMsg (data) {
  60. return axios.request({
  61. url: 'person/repealMsg',
  62. method: 'post',
  63. needLogin: true,
  64. data
  65. })
  66. }
  67. }