commons.js 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. /**
  2. * 此文件内容为常用的系统枚举及变量。
  3. */
  4. /**
  5. * 系统部署时的配置文件。
  6. *
  7. * @type {string}
  8. */
  9. "use strict";
  10. let configFile = "config.";
  11. if (process.env.IM_PROFILE === "prod") {
  12. configFile += "prod";
  13. } else if (process.env.IM_PROFILE === "test") {
  14. configFile += "test";
  15. } else {
  16. configFile += "dev";
  17. }
  18. exports.CONFIG_FILE = configFile;
  19. /**
  20. * 消息内容类型。
  21. */
  22. exports.CONTENT_TYPE = {
  23. PlainText: 1, // 信息
  24. Image: 2, // 图片信息
  25. Audio: 3, // 语音信息
  26. Article: 4, // 文章信息
  27. GoTo: 5, // 跳转信息
  28. SessionBegin: 6,// 咨询开始
  29. SessionEnd: 7, // 咨询结束
  30. commaValues: function () {
  31. return "1,2,3,4,5,6,7";
  32. }
  33. };
  34. /**
  35. * 客户端平台。
  36. */
  37. exports.PLATFORM = {
  38. iOS: 0,
  39. Android: 1
  40. };
  41. /**
  42. * 组类型。
  43. */
  44. exports.GROUP_TYPE = {
  45. AdminTeam: 1,
  46. DiscussionGroup: 2
  47. };
  48. /**
  49. * 模型事件。
  50. *
  51. * @type {{Error: string, DataNotFound: string, OK: string}}
  52. */
  53. exports.MODEL_EVENTS = {
  54. Error: "error", // 数据库访问出错
  55. DataNotFound: "no_data", // 找不到指定的数据
  56. OK: "ok" // 操作结束或有数据返回
  57. };
  58. /**
  59. * 默认整型最大值。
  60. * @type {number}
  61. */
  62. exports.MAX_INT = 9007199254740992;
  63. /**
  64. * 默认分页大小。
  65. *
  66. * @type {number}
  67. */
  68. exports.DEFAULT_PAGE_SIZE = 100;
  69. /**
  70. * Redis Key列表与占位符。
  71. */
  72. const REDIS_KEY_REPLACER = "{id}";
  73. exports.REDIS_KEY_REPLACER = REDIS_KEY_REPLACER;
  74. exports.REDIS_KEYS = {
  75. Users: "users:",
  76. User: "users:" + REDIS_KEY_REPLACER,
  77. UserStatus: "users:" + REDIS_KEY_REPLACER + ":status",
  78. UsersSessions: "users:"+REDIS_KEY_REPLACER+":sessions",
  79. Participants:"participants:"+REDIS_KEY_REPLACER,
  80. Sessions: "sessions:",
  81. Session: "sessions:" + REDIS_KEY_REPLACER,
  82. Messages: "sessions:" + REDIS_KEY_REPLACER + ":messages",
  83. MessagesTimestamp: "sessions:" + REDIS_KEY_REPLACER + ":messages_by_timestamp",
  84. Topics: "sessions:" + REDIS_KEY_REPLACER + ":topics",
  85. Topic: "topics:" + REDIS_KEY_REPLACER
  86. };
  87. exports.STICK_NUM = 90000000000000;
  88. exports.IM_DB = {
  89. "P2PMSG": "p2p_messages",
  90. "MUCMSG": "muc_messages",
  91. "GROUPMSG": "group_messages",
  92. "PARTICIPANTS": "participants",
  93. "SESSIONS": "sessions",
  94. "TOPICS": "topics"
  95. };