@wxbot/wechat-api-sdk 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/dist/geweChat/gewe/clientApi/gewe_ChatRoom.js +1 -1
  2. package/dist/geweChat/gewe/clientApi/gewe_ChatRoom.js.map +1 -1
  3. package/dist/index.d.ts +5 -0
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +28 -1
  6. package/dist/index.js.map +1 -1
  7. package/dist/weChatBase/weChatMessage/WeChatMessageFactory.d.ts +76 -0
  8. package/dist/weChatBase/weChatMessage/WeChatMessageFactory.d.ts.map +1 -0
  9. package/dist/weChatBase/weChatMessage/WeChatMessageFactory.js +181 -0
  10. package/dist/weChatBase/weChatMessage/WeChatMessageFactory.js.map +1 -0
  11. package/dist/weChatBase/weChatMessage/types/AddFriendMessage.d.ts +67 -0
  12. package/dist/weChatBase/weChatMessage/types/AddFriendMessage.d.ts.map +1 -0
  13. package/dist/weChatBase/weChatMessage/types/AddFriendMessage.js +92 -0
  14. package/dist/weChatBase/weChatMessage/types/AddFriendMessage.js.map +1 -0
  15. package/dist/weChatBase/weChatMessage/types/ChannelsVideoMessage.d.ts +98 -0
  16. package/dist/weChatBase/weChatMessage/types/ChannelsVideoMessage.d.ts.map +1 -0
  17. package/dist/weChatBase/weChatMessage/types/ChannelsVideoMessage.js +124 -0
  18. package/dist/weChatBase/weChatMessage/types/ChannelsVideoMessage.js.map +1 -0
  19. package/dist/weChatBase/weChatMessage/types/ContactMessage.d.ts +62 -0
  20. package/dist/weChatBase/weChatMessage/types/ContactMessage.d.ts.map +1 -0
  21. package/dist/weChatBase/weChatMessage/types/ContactMessage.js +81 -0
  22. package/dist/weChatBase/weChatMessage/types/ContactMessage.js.map +1 -0
  23. package/dist/weChatBase/weChatMessage/types/EmojiMessage.d.ts +60 -0
  24. package/dist/weChatBase/weChatMessage/types/EmojiMessage.d.ts.map +1 -0
  25. package/dist/weChatBase/weChatMessage/types/EmojiMessage.js +74 -0
  26. package/dist/weChatBase/weChatMessage/types/EmojiMessage.js.map +1 -0
  27. package/dist/weChatBase/weChatMessage/types/FileMessage.d.ts +81 -0
  28. package/dist/weChatBase/weChatMessage/types/FileMessage.d.ts.map +1 -0
  29. package/dist/weChatBase/weChatMessage/types/FileMessage.js +127 -0
  30. package/dist/weChatBase/weChatMessage/types/FileMessage.js.map +1 -0
  31. package/dist/weChatBase/weChatMessage/types/GroupNoticeMessage.d.ts +52 -0
  32. package/dist/weChatBase/weChatMessage/types/GroupNoticeMessage.d.ts.map +1 -0
  33. package/dist/weChatBase/weChatMessage/types/GroupNoticeMessage.js +76 -0
  34. package/dist/weChatBase/weChatMessage/types/GroupNoticeMessage.js.map +1 -0
  35. package/dist/weChatBase/weChatMessage/types/GroupSystemMessage.d.ts +94 -0
  36. package/dist/weChatBase/weChatMessage/types/GroupSystemMessage.d.ts.map +1 -0
  37. package/dist/weChatBase/weChatMessage/types/GroupSystemMessage.js +151 -0
  38. package/dist/weChatBase/weChatMessage/types/GroupSystemMessage.js.map +1 -0
  39. package/dist/weChatBase/weChatMessage/types/ImageMessage.d.ts +63 -0
  40. package/dist/weChatBase/weChatMessage/types/ImageMessage.d.ts.map +1 -0
  41. package/dist/weChatBase/weChatMessage/types/ImageMessage.js +93 -0
  42. package/dist/weChatBase/weChatMessage/types/ImageMessage.js.map +1 -0
  43. package/dist/weChatBase/weChatMessage/types/LinkMessage.d.ts +78 -0
  44. package/dist/weChatBase/weChatMessage/types/LinkMessage.d.ts.map +1 -0
  45. package/dist/weChatBase/weChatMessage/types/LinkMessage.js +110 -0
  46. package/dist/weChatBase/weChatMessage/types/LinkMessage.js.map +1 -0
  47. package/dist/weChatBase/weChatMessage/types/LocationMessage.d.ts +67 -0
  48. package/dist/weChatBase/weChatMessage/types/LocationMessage.d.ts.map +1 -0
  49. package/dist/weChatBase/weChatMessage/types/LocationMessage.js +84 -0
  50. package/dist/weChatBase/weChatMessage/types/LocationMessage.js.map +1 -0
  51. package/dist/weChatBase/weChatMessage/types/MiniProgramMessage.d.ts +73 -0
  52. package/dist/weChatBase/weChatMessage/types/MiniProgramMessage.d.ts.map +1 -0
  53. package/dist/weChatBase/weChatMessage/types/MiniProgramMessage.js +91 -0
  54. package/dist/weChatBase/weChatMessage/types/MiniProgramMessage.js.map +1 -0
  55. package/dist/weChatBase/weChatMessage/types/PatMessage.d.ts +70 -0
  56. package/dist/weChatBase/weChatMessage/types/PatMessage.d.ts.map +1 -0
  57. package/dist/weChatBase/weChatMessage/types/PatMessage.js +101 -0
  58. package/dist/weChatBase/weChatMessage/types/PatMessage.js.map +1 -0
  59. package/dist/weChatBase/weChatMessage/types/RedPacketMessage.d.ts +93 -0
  60. package/dist/weChatBase/weChatMessage/types/RedPacketMessage.d.ts.map +1 -0
  61. package/dist/weChatBase/weChatMessage/types/RedPacketMessage.js +115 -0
  62. package/dist/weChatBase/weChatMessage/types/RedPacketMessage.js.map +1 -0
  63. package/dist/weChatBase/weChatMessage/types/ReferMessage.d.ts +63 -0
  64. package/dist/weChatBase/weChatMessage/types/ReferMessage.d.ts.map +1 -0
  65. package/dist/weChatBase/weChatMessage/types/ReferMessage.js +88 -0
  66. package/dist/weChatBase/weChatMessage/types/ReferMessage.js.map +1 -0
  67. package/dist/weChatBase/weChatMessage/types/RevokeMessage.d.ts +58 -0
  68. package/dist/weChatBase/weChatMessage/types/RevokeMessage.d.ts.map +1 -0
  69. package/dist/weChatBase/weChatMessage/types/RevokeMessage.js +82 -0
  70. package/dist/weChatBase/weChatMessage/types/RevokeMessage.js.map +1 -0
  71. package/dist/weChatBase/weChatMessage/types/TextMessage.d.ts +26 -0
  72. package/dist/weChatBase/weChatMessage/types/TextMessage.d.ts.map +1 -0
  73. package/dist/weChatBase/weChatMessage/types/TextMessage.js +43 -0
  74. package/dist/weChatBase/weChatMessage/types/TextMessage.js.map +1 -0
  75. package/dist/weChatBase/weChatMessage/types/TransferMessage.d.ts +83 -0
  76. package/dist/weChatBase/weChatMessage/types/TransferMessage.d.ts.map +1 -0
  77. package/dist/weChatBase/weChatMessage/types/TransferMessage.js +109 -0
  78. package/dist/weChatBase/weChatMessage/types/TransferMessage.js.map +1 -0
  79. package/dist/weChatBase/weChatMessage/types/VideoMessage.d.ts +56 -0
  80. package/dist/weChatBase/weChatMessage/types/VideoMessage.d.ts.map +1 -0
  81. package/dist/weChatBase/weChatMessage/types/VideoMessage.js +76 -0
  82. package/dist/weChatBase/weChatMessage/types/VideoMessage.js.map +1 -0
  83. package/dist/weChatBase/weChatMessage/types/VoiceMessage.d.ts +53 -0
  84. package/dist/weChatBase/weChatMessage/types/VoiceMessage.d.ts.map +1 -0
  85. package/dist/weChatBase/weChatMessage/types/VoiceMessage.js +73 -0
  86. package/dist/weChatBase/weChatMessage/types/VoiceMessage.js.map +1 -0
  87. package/dist/weChatBase/weChatMessage/types/index.d.ts +23 -0
  88. package/dist/weChatBase/weChatMessage/types/index.d.ts.map +1 -0
  89. package/dist/weChatBase/weChatMessage/types/index.js +42 -0
  90. package/dist/weChatBase/weChatMessage/types/index.js.map +1 -0
  91. package/dist/weChatBase/weChatMessage/weChatMessageType.d.ts +97 -3
  92. package/dist/weChatBase/weChatMessage/weChatMessageType.d.ts.map +1 -1
  93. package/dist/weChatBase/weChatMessage/weChatMessageType.js +101 -15
  94. package/dist/weChatBase/weChatMessage/weChatMessageType.js.map +1 -1
  95. package/dist/weChatBase/weChatMessage/weChatMsgBase.d.ts +3 -4
  96. package/dist/weChatBase/weChatMessage/weChatMsgBase.d.ts.map +1 -1
  97. package/dist/weChatBase/weChatMessage/weChatMsgBase.js +4 -8
  98. package/dist/weChatBase/weChatMessage/weChatMsgBase.js.map +1 -1
  99. package/package.json +1 -1
@@ -0,0 +1,52 @@
1
+ import { WeChatMsg } from "../weChatMsgBase";
2
+ /**
3
+ * 群公告信息接口
4
+ */
5
+ export interface GroupNoticeInfo {
6
+ /** 公告内容 */
7
+ content?: string;
8
+ /** XML内容 */
9
+ xmlcontent?: string;
10
+ /** 公告ID */
11
+ announcement_id?: string;
12
+ }
13
+ /**
14
+ * 群公告消息类
15
+ * MsgType = 10002, sysmsg.type = mmchatroombarannouncememt
16
+ *
17
+ * 示例数据:
18
+ * {
19
+ * "MsgType": 10002,
20
+ * "Content": {
21
+ * "string": "<sysmsg type=\"mmchatroombarannouncememt\">...</sysmsg>"
22
+ * }
23
+ * }
24
+ */
25
+ export declare class GroupNoticeMessage extends WeChatMsg {
26
+ /** 群公告信息 */
27
+ noticeInfo: GroupNoticeInfo;
28
+ /** 系统消息子类型 */
29
+ sysMsgType: string;
30
+ constructor(data: any);
31
+ /**
32
+ * 解析群公告信息
33
+ */
34
+ private parseNoticeInfo;
35
+ /**
36
+ * 获取公告内容
37
+ */
38
+ getNoticeContent(): string;
39
+ /**
40
+ * 获取公告ID
41
+ */
42
+ getNoticeId(): string | undefined;
43
+ /**
44
+ * 获取消息描述
45
+ */
46
+ getContent(): string;
47
+ /**
48
+ * 获取消息文本
49
+ */
50
+ getMsgText(): Promise<string>;
51
+ }
52
+ //# sourceMappingURL=GroupNoticeMessage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GroupNoticeMessage.d.ts","sourceRoot":"","sources":["../../../../src/weChatBase/weChatMessage/types/GroupNoticeMessage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAI7C;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,WAAW;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW;IACX,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,kBAAmB,SAAQ,SAAS;IAC7C,YAAY;IACL,UAAU,EAAE,eAAe,CAAM;IAExC,cAAc;IACP,UAAU,EAAE,MAAM,CAAoC;gBAEjD,IAAI,EAAE,GAAG;IAmBrB;;OAEG;IACH,OAAO,CAAC,eAAe;IAgBvB;;OAEG;IACH,gBAAgB,IAAI,MAAM;IAI1B;;OAEG;IACH,WAAW,IAAI,MAAM,GAAG,SAAS;IAIjC;;OAEG;IACM,UAAU,IAAI,MAAM;IAM7B;;OAEG;IACY,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;CAG/C"}
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GroupNoticeMessage = void 0;
4
+ const weChatMsgBase_1 = require("../weChatMsgBase");
5
+ const weChatMessageType_1 = require("../weChatMessageType");
6
+ const utils_1 = require("../../../utils");
7
+ /**
8
+ * 群公告消息类
9
+ * MsgType = 10002, sysmsg.type = mmchatroombarannouncememt
10
+ *
11
+ * 示例数据:
12
+ * {
13
+ * "MsgType": 10002,
14
+ * "Content": {
15
+ * "string": "<sysmsg type=\"mmchatroombarannouncememt\">...</sysmsg>"
16
+ * }
17
+ * }
18
+ */
19
+ class GroupNoticeMessage extends weChatMsgBase_1.WeChatMsg {
20
+ constructor(data) {
21
+ super(data.Appid, data.api, data.Wxid, weChatMessageType_1.WeChatMessageType.SystemMessage, data.Data.MsgId, data.Data.NewMsgId, data.Data.CreateTime, data.Data.FromUserName?.string || data.Data.FromUserName, data.Data.ToUserName?.string || data.Data.ToUserName, data.Data.MsgSource, data.Data.Content?.string || data.Data.Content);
22
+ /** 群公告信息 */
23
+ this.noticeInfo = {};
24
+ /** 系统消息子类型 */
25
+ this.sysMsgType = weChatMessageType_1.SystemMessageSubType.GroupNotice;
26
+ // 解析群公告信息
27
+ this.parseNoticeInfo();
28
+ }
29
+ /**
30
+ * 解析群公告信息
31
+ */
32
+ parseNoticeInfo() {
33
+ try {
34
+ const xmlObj = (0, utils_1.getXml2Json)(this.Content);
35
+ if (xmlObj?.sysmsg?.mmchatroombarannouncememt) {
36
+ const notice = xmlObj.sysmsg.mmchatroombarannouncememt;
37
+ this.noticeInfo = {
38
+ content: notice.content,
39
+ xmlcontent: notice.xmlcontent,
40
+ announcement_id: notice.announcement_id
41
+ };
42
+ }
43
+ }
44
+ catch (error) {
45
+ console.error('解析群公告信息失败:', error);
46
+ }
47
+ }
48
+ /**
49
+ * 获取公告内容
50
+ */
51
+ getNoticeContent() {
52
+ return this.noticeInfo.content || '';
53
+ }
54
+ /**
55
+ * 获取公告ID
56
+ */
57
+ getNoticeId() {
58
+ return this.noticeInfo.announcement_id;
59
+ }
60
+ /**
61
+ * 获取消息描述
62
+ */
63
+ getContent() {
64
+ const content = this.getNoticeContent();
65
+ const preview = content.length > 20 ? content.substring(0, 20) + '...' : content;
66
+ return `[群公告]${preview}`;
67
+ }
68
+ /**
69
+ * 获取消息文本
70
+ */
71
+ async getMsgText() {
72
+ return this.getContent();
73
+ }
74
+ }
75
+ exports.GroupNoticeMessage = GroupNoticeMessage;
76
+ //# sourceMappingURL=GroupNoticeMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GroupNoticeMessage.js","sourceRoot":"","sources":["../../../../src/weChatBase/weChatMessage/types/GroupNoticeMessage.ts"],"names":[],"mappings":";;;AAAA,oDAA6C;AAC7C,4DAA+E;AAC/E,0CAA6C;AAc7C;;;;;;;;;;;GAWG;AACH,MAAa,kBAAmB,SAAQ,yBAAS;IAO7C,YAAY,IAAS;QACjB,KAAK,CACD,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,IAAI,EACT,qCAAiB,CAAC,aAAa,EAC/B,IAAI,CAAC,IAAI,CAAC,KAAK,EACf,IAAI,CAAC,IAAI,CAAC,QAAQ,EAClB,IAAI,CAAC,IAAI,CAAC,UAAU,EACpB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,EACxD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EACpD,IAAI,CAAC,IAAI,CAAC,SAAS,EACnB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CACjD,CAAC;QAnBN,YAAY;QACL,eAAU,GAAoB,EAAE,CAAC;QAExC,cAAc;QACP,eAAU,GAAW,wCAAoB,CAAC,WAAW,CAAC;QAiBzD,UAAU;QACV,IAAI,CAAC,eAAe,EAAE,CAAC;IAC3B,CAAC;IAED;;OAEG;IACK,eAAe;QACnB,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,IAAA,mBAAW,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACzC,IAAI,MAAM,EAAE,MAAM,EAAE,yBAAyB,EAAE,CAAC;gBAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,yBAAyB,CAAC;gBACvD,IAAI,CAAC,UAAU,GAAG;oBACd,OAAO,EAAE,MAAM,CAAC,OAAO;oBACvB,UAAU,EAAE,MAAM,CAAC,UAAU;oBAC7B,eAAe,EAAE,MAAM,CAAC,eAAe;iBAC1C,CAAC;YACN,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;QACvC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,gBAAgB;QACZ,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,IAAI,EAAE,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,WAAW;QACP,OAAO,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC;IAC3C,CAAC;IAED;;OAEG;IACM,UAAU;QACf,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxC,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;QACjF,OAAO,QAAQ,OAAO,EAAE,CAAC;IAC7B,CAAC;IAED;;OAEG;IACM,KAAK,CAAC,UAAU;QACrB,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;IAC7B,CAAC;CACJ;AA1ED,gDA0EC"}
@@ -0,0 +1,94 @@
1
+ import { WeChatMsg } from "../weChatMsgBase";
2
+ /**
3
+ * 群系统消息信息接口
4
+ */
5
+ export interface GroupSystemInfo {
6
+ /** 系统消息类型 */
7
+ type?: string;
8
+ /** 模板文本 */
9
+ template?: string;
10
+ /** 链接列表 */
11
+ linkList?: Array<{
12
+ /** 链接名称 */
13
+ name?: string;
14
+ /** 链接类型 */
15
+ type?: string;
16
+ /** 成员列表 */
17
+ memberlist?: Array<{
18
+ /** 用户名 */
19
+ username?: string;
20
+ /** 昵称 */
21
+ nickname?: string;
22
+ }>;
23
+ }>;
24
+ }
25
+ /**
26
+ * 群系统消息类
27
+ * MsgType = 10002, sysmsg.type = sysmsgtemplate
28
+ *
29
+ * 包括:
30
+ * - 新人入群
31
+ * - 踢出群聊
32
+ * - 解散群聊
33
+ * - 修改群名
34
+ * - 群成员邀请等
35
+ *
36
+ * 示例数据:
37
+ * {
38
+ * "MsgType": 10002,
39
+ * "Content": {
40
+ * "string": "<sysmsg type=\"sysmsgtemplate\">...</sysmsg>"
41
+ * }
42
+ * }
43
+ */
44
+ export declare class GroupSystemMessage extends WeChatMsg {
45
+ /** 群系统消息信息 */
46
+ systemInfo: GroupSystemInfo;
47
+ /** 系统消息子类型 */
48
+ sysMsgType: string;
49
+ constructor(data: any);
50
+ /**
51
+ * 解析群系统消息信息
52
+ */
53
+ private parseSystemInfo;
54
+ /**
55
+ * 获取模板文本
56
+ */
57
+ getTemplate(): string;
58
+ /**
59
+ * 判断是否为新人入群
60
+ */
61
+ isNewMemberJoin(): boolean;
62
+ /**
63
+ * 判断是否为踢出群聊
64
+ */
65
+ isKickOut(): boolean;
66
+ /**
67
+ * 判断是否为解散群聊
68
+ */
69
+ isDismissGroup(): boolean;
70
+ /**
71
+ * 判断是否为修改群名
72
+ */
73
+ isRenameGroup(): boolean;
74
+ /**
75
+ * 获取涉及的成员列表
76
+ */
77
+ getMembers(): Array<{
78
+ username?: string;
79
+ nickname?: string;
80
+ }>;
81
+ /**
82
+ * 获取系统消息类型描述
83
+ */
84
+ getMessageType(): string;
85
+ /**
86
+ * 获取消息描述
87
+ */
88
+ getContent(): string;
89
+ /**
90
+ * 获取消息文本
91
+ */
92
+ getMsgText(): Promise<string>;
93
+ }
94
+ //# sourceMappingURL=GroupSystemMessage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GroupSystemMessage.d.ts","sourceRoot":"","sources":["../../../../src/weChatBase/weChatMessage/types/GroupSystemMessage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAI7C;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,aAAa;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW;IACX,QAAQ,CAAC,EAAE,KAAK,CAAC;QACb,WAAW;QACX,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW;QACX,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW;QACX,UAAU,CAAC,EAAE,KAAK,CAAC;YACf,UAAU;YACV,QAAQ,CAAC,EAAE,MAAM,CAAC;YAClB,SAAS;YACT,QAAQ,CAAC,EAAE,MAAM,CAAC;SACrB,CAAC,CAAC;KACN,CAAC,CAAC;CACN;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,kBAAmB,SAAQ,SAAS;IAC7C,cAAc;IACP,UAAU,EAAE,eAAe,CAAM;IAExC,cAAc;IACP,UAAU,EAAE,MAAM,CAAuC;gBAEpD,IAAI,EAAE,GAAG;IAmBrB;;OAEG;IACH,OAAO,CAAC,eAAe;IAwCvB;;OAEG;IACH,WAAW,IAAI,MAAM;IAIrB;;OAEG;IACH,eAAe,IAAI,OAAO;IAM1B;;OAEG;IACH,SAAS,IAAI,OAAO;IAKpB;;OAEG;IACH,cAAc,IAAI,OAAO;IAKzB;;OAEG;IACH,aAAa,IAAI,OAAO;IAKxB;;OAEG;IACH,UAAU,IAAI,KAAK,CAAC;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAU7D;;OAEG;IACH,cAAc,IAAI,MAAM;IAQxB;;OAEG;IACM,UAAU,IAAI,MAAM;IAK7B;;OAEG;IACY,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;CAG/C"}
@@ -0,0 +1,151 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GroupSystemMessage = void 0;
4
+ const weChatMsgBase_1 = require("../weChatMsgBase");
5
+ const weChatMessageType_1 = require("../weChatMessageType");
6
+ const utils_1 = require("../../../utils");
7
+ /**
8
+ * 群系统消息类
9
+ * MsgType = 10002, sysmsg.type = sysmsgtemplate
10
+ *
11
+ * 包括:
12
+ * - 新人入群
13
+ * - 踢出群聊
14
+ * - 解散群聊
15
+ * - 修改群名
16
+ * - 群成员邀请等
17
+ *
18
+ * 示例数据:
19
+ * {
20
+ * "MsgType": 10002,
21
+ * "Content": {
22
+ * "string": "<sysmsg type=\"sysmsgtemplate\">...</sysmsg>"
23
+ * }
24
+ * }
25
+ */
26
+ class GroupSystemMessage extends weChatMsgBase_1.WeChatMsg {
27
+ constructor(data) {
28
+ super(data.Appid, data.api, data.Wxid, weChatMessageType_1.WeChatMessageType.SystemMessage, data.Data.MsgId, data.Data.NewMsgId, data.Data.CreateTime, data.Data.FromUserName?.string || data.Data.FromUserName, data.Data.ToUserName?.string || data.Data.ToUserName, data.Data.MsgSource, data.Data.Content?.string || data.Data.Content);
29
+ /** 群系统消息信息 */
30
+ this.systemInfo = {};
31
+ /** 系统消息子类型 */
32
+ this.sysMsgType = weChatMessageType_1.SystemMessageSubType.SystemTemplate;
33
+ // 解析群系统消息信息
34
+ this.parseSystemInfo();
35
+ }
36
+ /**
37
+ * 解析群系统消息信息
38
+ */
39
+ parseSystemInfo() {
40
+ try {
41
+ const xmlObj = (0, utils_1.getXml2Json)(this.Content);
42
+ if (xmlObj?.sysmsg?.sysmsgtemplate) {
43
+ const sysmsg = xmlObj.sysmsg.sysmsgtemplate;
44
+ const contentTemplate = sysmsg.content_template;
45
+ this.systemInfo = {
46
+ type: contentTemplate?.type,
47
+ template: contentTemplate?.template
48
+ };
49
+ // 解析链接列表
50
+ if (contentTemplate?.link_list?.link) {
51
+ const links = Array.isArray(contentTemplate.link_list.link)
52
+ ? contentTemplate.link_list.link
53
+ : [contentTemplate.link_list.link];
54
+ this.systemInfo.linkList = links.map(link => {
55
+ const memberlist = link.memberlist?.member;
56
+ const members = memberlist
57
+ ? (Array.isArray(memberlist) ? memberlist : [memberlist])
58
+ : [];
59
+ return {
60
+ name: link.name,
61
+ type: link.type,
62
+ memberlist: members.map(m => ({
63
+ username: m.username,
64
+ nickname: m.nickname
65
+ }))
66
+ };
67
+ });
68
+ }
69
+ }
70
+ }
71
+ catch (error) {
72
+ console.error('解析群系统消息信息失败:', error);
73
+ }
74
+ }
75
+ /**
76
+ * 获取模板文本
77
+ */
78
+ getTemplate() {
79
+ return this.systemInfo.template || '';
80
+ }
81
+ /**
82
+ * 判断是否为新人入群
83
+ */
84
+ isNewMemberJoin() {
85
+ const template = this.getTemplate();
86
+ return template.includes('邀请') && template.includes('加入了群聊') ||
87
+ template.includes('扫描') && template.includes('分享的二维码加入群聊');
88
+ }
89
+ /**
90
+ * 判断是否为踢出群聊
91
+ */
92
+ isKickOut() {
93
+ const template = this.getTemplate();
94
+ return template.includes('移出了群聊') || template.includes('removed');
95
+ }
96
+ /**
97
+ * 判断是否为解散群聊
98
+ */
99
+ isDismissGroup() {
100
+ const template = this.getTemplate();
101
+ return template.includes('解散该群聊') || template.includes('dismissed');
102
+ }
103
+ /**
104
+ * 判断是否为修改群名
105
+ */
106
+ isRenameGroup() {
107
+ const template = this.getTemplate();
108
+ return template.includes('修改群名为') || template.includes('changed the group name');
109
+ }
110
+ /**
111
+ * 获取涉及的成员列表
112
+ */
113
+ getMembers() {
114
+ const members = [];
115
+ this.systemInfo.linkList?.forEach(link => {
116
+ if (link.memberlist) {
117
+ members.push(...link.memberlist);
118
+ }
119
+ });
120
+ return members;
121
+ }
122
+ /**
123
+ * 获取系统消息类型描述
124
+ */
125
+ getMessageType() {
126
+ if (this.isNewMemberJoin())
127
+ return '新人入群';
128
+ if (this.isKickOut())
129
+ return '踢出群聊';
130
+ if (this.isDismissGroup())
131
+ return '解散群聊';
132
+ if (this.isRenameGroup())
133
+ return '修改群名';
134
+ return '群系统消息';
135
+ }
136
+ /**
137
+ * 获取消息描述
138
+ */
139
+ getContent() {
140
+ const type = this.getMessageType();
141
+ return `[${type}]${this.getTemplate()}`;
142
+ }
143
+ /**
144
+ * 获取消息文本
145
+ */
146
+ async getMsgText() {
147
+ return this.getContent();
148
+ }
149
+ }
150
+ exports.GroupSystemMessage = GroupSystemMessage;
151
+ //# sourceMappingURL=GroupSystemMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GroupSystemMessage.js","sourceRoot":"","sources":["../../../../src/weChatBase/weChatMessage/types/GroupSystemMessage.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ import { WeChatMsg } from "../weChatMsgBase";
2
+ /**
3
+ * 图片信息接口
4
+ */
5
+ export interface ImageInfo {
6
+ /** AES密钥 */
7
+ aeskey?: string;
8
+ /** CDN缩略图URL */
9
+ cdnthumburl?: string;
10
+ /** CDN中图URL */
11
+ cdnmidimgurl?: string;
12
+ /** 图片长度 */
13
+ length?: number;
14
+ /** MD5值 */
15
+ md5?: string;
16
+ /** 缩略图长度 */
17
+ cdnthumblength?: number;
18
+ /** 缩略图高度 */
19
+ cdnthumbheight?: number;
20
+ /** 缩略图宽度 */
21
+ cdnthumbwidth?: number;
22
+ }
23
+ /**
24
+ * 图片消息类
25
+ * MsgType = 3
26
+ *
27
+ * 示例数据:
28
+ * {
29
+ * "MsgType": 3,
30
+ * "Content": { "string": "<?xml...图片cdn信息..." },
31
+ * "ImgBuf": { "iLen": 2146, "buffer": "/9j/4AAQ..." }
32
+ * }
33
+ */
34
+ export declare class ImageMessage extends WeChatMsg {
35
+ /** 缩略图Base64数据 */
36
+ thumbnailBase64?: string;
37
+ /** 图片信息 */
38
+ imageInfo: ImageInfo;
39
+ constructor(data: any);
40
+ /**
41
+ * 解析图片信息
42
+ */
43
+ private parseImageInfo;
44
+ /**
45
+ * 获取缩略图Base64
46
+ */
47
+ getThumbnailBase64(): string | undefined;
48
+ /**
49
+ * 下载图片
50
+ * @param type 下载类型 1=缩略图, 2=中图, 3=原图
51
+ * @returns 图片URL或Base64
52
+ */
53
+ downImage(type?: number, xmlStr?: string): Promise<string>;
54
+ /**
55
+ * 获取图片URL
56
+ */
57
+ getMsgText(): Promise<string>;
58
+ /**
59
+ * 获取消息描述
60
+ */
61
+ getContent(): string;
62
+ }
63
+ //# sourceMappingURL=ImageMessage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImageMessage.d.ts","sourceRoot":"","sources":["../../../../src/weChatBase/weChatMessage/types/ImageMessage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAI7C;;GAEG;AACH,MAAM,WAAW,SAAS;IACtB,YAAY;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW;IACX,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,YAAY;IACZ,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY;IACZ,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY;IACZ,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;;;;GAUG;AACH,qBAAa,YAAa,SAAQ,SAAS;IACvC,kBAAkB;IACX,eAAe,CAAC,EAAE,MAAM,CAAC;IAEhC,WAAW;IACJ,SAAS,EAAE,SAAS,CAAM;gBAErB,IAAI,EAAE,GAAG;IAwBrB;;OAEG;IACH,OAAO,CAAC,cAAc;IAqBtB;;OAEG;IACH,kBAAkB,IAAI,MAAM,GAAG,SAAS;IAIxC;;;;OAIG;IACY,SAAS,CAAC,IAAI,GAAE,MAAU,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI5E;;OAEG;IACY,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAc5C;;OAEG;IACM,UAAU,IAAI,MAAM;CAGhC"}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ImageMessage = void 0;
4
+ const weChatMsgBase_1 = require("../weChatMsgBase");
5
+ const weChatMessageType_1 = require("../weChatMessageType");
6
+ const utils_1 = require("../../../utils");
7
+ /**
8
+ * 图片消息类
9
+ * MsgType = 3
10
+ *
11
+ * 示例数据:
12
+ * {
13
+ * "MsgType": 3,
14
+ * "Content": { "string": "<?xml...图片cdn信息..." },
15
+ * "ImgBuf": { "iLen": 2146, "buffer": "/9j/4AAQ..." }
16
+ * }
17
+ */
18
+ class ImageMessage extends weChatMsgBase_1.WeChatMsg {
19
+ constructor(data) {
20
+ super(data.Appid, data.api, data.Wxid, weChatMessageType_1.WeChatMessageType.Image, data.Data.MsgId, data.Data.NewMsgId, data.Data.CreateTime, data.Data.FromUserName?.string || data.Data.FromUserName, data.Data.ToUserName?.string || data.Data.ToUserName, data.Data.MsgSource, data.Data.Content?.string || data.Data.Content);
21
+ /** 图片信息 */
22
+ this.imageInfo = {};
23
+ // 解析缩略图
24
+ if (data.Data.ImgBuf && data.Data.ImgBuf.iLen > 0) {
25
+ this.thumbnailBase64 = data.Data.ImgBuf.buffer;
26
+ }
27
+ // 解析图片信息
28
+ this.parseImageInfo();
29
+ }
30
+ /**
31
+ * 解析图片信息
32
+ */
33
+ parseImageInfo() {
34
+ try {
35
+ const xmlObj = (0, utils_1.getXml2Json)(this.Content);
36
+ if (xmlObj?.msg?.img) {
37
+ const img = xmlObj.msg.img;
38
+ this.imageInfo = {
39
+ aeskey: img.aeskey,
40
+ cdnthumburl: img.cdnthumburl,
41
+ cdnmidimgurl: img.cdnmidimgurl,
42
+ length: parseInt(img.length) || 0,
43
+ md5: img.md5,
44
+ cdnthumblength: parseInt(img.cdnthumblength) || 0,
45
+ cdnthumbheight: parseInt(img.cdnthumbheight) || 0,
46
+ cdnthumbwidth: parseInt(img.cdnthumbwidth) || 0
47
+ };
48
+ }
49
+ }
50
+ catch (error) {
51
+ console.error('解析图片信息失败:', error);
52
+ }
53
+ }
54
+ /**
55
+ * 获取缩略图Base64
56
+ */
57
+ getThumbnailBase64() {
58
+ return this.thumbnailBase64;
59
+ }
60
+ /**
61
+ * 下载图片
62
+ * @param type 下载类型 1=缩略图, 2=中图, 3=原图
63
+ * @returns 图片URL或Base64
64
+ */
65
+ async downImage(type = 1, xmlStr) {
66
+ return super.downImage(type, xmlStr || this.Content);
67
+ }
68
+ /**
69
+ * 获取图片URL
70
+ */
71
+ async getMsgText() {
72
+ try {
73
+ const imageUrl = await this.downImage(1, this.Content);
74
+ if (!imageUrl) {
75
+ throw new Error("图片下载失败");
76
+ }
77
+ return imageUrl;
78
+ }
79
+ catch (error) {
80
+ console.error('获取图片失败:', error);
81
+ // 降级返回缩略图Base64
82
+ return this.thumbnailBase64 || '[图片]';
83
+ }
84
+ }
85
+ /**
86
+ * 获取消息描述
87
+ */
88
+ getContent() {
89
+ return '[图片]';
90
+ }
91
+ }
92
+ exports.ImageMessage = ImageMessage;
93
+ //# sourceMappingURL=ImageMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImageMessage.js","sourceRoot":"","sources":["../../../../src/weChatBase/weChatMessage/types/ImageMessage.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,78 @@
1
+ import { WeChatMsg } from "../weChatMsgBase";
2
+ /**
3
+ * 链接信息接口
4
+ */
5
+ export interface LinkInfo {
6
+ /** 链接标题 */
7
+ title?: string;
8
+ /** 链接描述 */
9
+ des?: string;
10
+ /** 链接URL */
11
+ url?: string;
12
+ /** 缩略图URL */
13
+ thumburl?: string;
14
+ /** 来源用户名 */
15
+ sourceusername?: string;
16
+ /** 来源显示名称 */
17
+ sourcedisplayname?: string;
18
+ /** CDN缩略图URL */
19
+ cdnthumburl?: string;
20
+ /** CDN缩略图MD5 */
21
+ cdnthumbmd5?: string;
22
+ /** CDN缩略图长度 */
23
+ cdnthumblength?: number;
24
+ /** CDN缩略图宽度 */
25
+ cdnthumbwidth?: number;
26
+ /** CDN缩略图高度 */
27
+ cdnthumbheight?: number;
28
+ /** CDN缩略图AES密钥 */
29
+ cdnthumbaeskey?: string;
30
+ }
31
+ /**
32
+ * 链接消息类
33
+ * MsgType = 49, appmsg.type = 5
34
+ *
35
+ * 包括:
36
+ * 1. 公众号链接消息
37
+ * 2. 群聊邀请(判断标题是否包含"邀请你加入群聊")
38
+ *
39
+ * 示例数据:
40
+ * {
41
+ * "MsgType": 49,
42
+ * "Content": {
43
+ * "string": "<?xml><msg><appmsg><type>5</type><title>文章标题</title>..."
44
+ * }
45
+ * }
46
+ */
47
+ export declare class LinkMessage extends WeChatMsg {
48
+ /** 链接信息 */
49
+ linkInfo: LinkInfo;
50
+ /** 应用消息子类型 */
51
+ appMsgType: number;
52
+ constructor(data: any);
53
+ /**
54
+ * 解析链接信息
55
+ */
56
+ private parseLinkInfo;
57
+ /**
58
+ * 判断是否为群聊邀请
59
+ */
60
+ isGroupInvite(): boolean;
61
+ /**
62
+ * 判断是否为公众号链接
63
+ */
64
+ isPublicAccountLink(): boolean;
65
+ /**
66
+ * 获取链接类型描述
67
+ */
68
+ getLinkType(): string;
69
+ /**
70
+ * 获取消息描述
71
+ */
72
+ getContent(): string;
73
+ /**
74
+ * 获取消息文本
75
+ */
76
+ getMsgText(): Promise<string>;
77
+ }
78
+ //# sourceMappingURL=LinkMessage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LinkMessage.d.ts","sourceRoot":"","sources":["../../../../src/weChatBase/weChatMessage/types/LinkMessage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAI7C;;GAEG;AACH,MAAM,WAAW,QAAQ;IACrB,WAAW;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW;IACX,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,YAAY;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,aAAa;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY;IACZ,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa;IACb,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,WAAY,SAAQ,SAAS;IACtC,WAAW;IACJ,QAAQ,EAAE,QAAQ,CAAM;IAE/B,cAAc;IACP,UAAU,EAAE,MAAM,CAA0B;gBAEvC,IAAI,EAAE,GAAG;IAmBrB;;OAEG;IACH,OAAO,CAAC,aAAa;IAgCrB;;OAEG;IACH,aAAa,IAAI,OAAO;IAQxB;;OAEG;IACH,mBAAmB,IAAI,OAAO;IAI9B;;OAEG;IACH,WAAW,IAAI,MAAM;IASrB;;OAEG;IACM,UAAU,IAAI,MAAM;IAM7B;;OAEG;IACY,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;CAG/C"}