wechaty-puppet-matrix 0.0.35 → 0.0.37

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 (69) hide show
  1. package/dist/cjs/src/engine-schema.d.ts +1 -0
  2. package/dist/cjs/src/engine-schema.d.ts.map +1 -1
  3. package/dist/cjs/src/matrix/events/event-room-join-no-xml.d.ts +8 -0
  4. package/dist/cjs/src/matrix/events/event-room-join-no-xml.d.ts.map +1 -0
  5. package/dist/cjs/src/matrix/events/event-room-join-no-xml.js +125 -0
  6. package/dist/cjs/src/matrix/events/event-room-join.d.ts.map +1 -1
  7. package/dist/cjs/src/matrix/events/event-room-join.js +1 -0
  8. package/dist/cjs/src/matrix/events/event-room-leave.d.ts.map +1 -1
  9. package/dist/cjs/src/matrix/events/event-room-leave.js +3 -3
  10. package/dist/cjs/src/matrix/events/event-room-topic.d.ts.map +1 -1
  11. package/dist/cjs/src/matrix/events/event-room-topic.js +1 -1
  12. package/dist/cjs/src/matrix/events/mod.d.ts.map +1 -1
  13. package/dist/cjs/src/matrix/events/mod.js +2 -0
  14. package/dist/cjs/src/matrix/messages/sysmsg/message-revokemsg.d.ts.map +1 -1
  15. package/dist/cjs/src/matrix/messages/sysmsg/message-revokemsg.js +2 -4
  16. package/dist/cjs/src/matrix/schema-mapper/contact.js +1 -1
  17. package/dist/cjs/src/matrix/service/request.d.ts +17 -4
  18. package/dist/cjs/src/matrix/service/request.d.ts.map +1 -1
  19. package/dist/cjs/src/matrix/service/request.js +45 -72
  20. package/dist/cjs/src/matrix/utils/is-type.d.ts +8 -0
  21. package/dist/cjs/src/matrix/utils/is-type.d.ts.map +1 -1
  22. package/dist/cjs/src/matrix/utils/is-type.js +25 -0
  23. package/dist/cjs/src/puppet-matrix.d.ts +3 -1
  24. package/dist/cjs/src/puppet-matrix.d.ts.map +1 -1
  25. package/dist/cjs/src/puppet-matrix.js +51 -19
  26. package/dist/cjs/src/utils/normalize-filebox.d.ts +1 -3
  27. package/dist/cjs/src/utils/normalize-filebox.d.ts.map +1 -1
  28. package/dist/cjs/src/utils/normalize-filebox.js +1 -17
  29. package/dist/esm/src/engine-schema.d.ts +1 -0
  30. package/dist/esm/src/engine-schema.d.ts.map +1 -1
  31. package/dist/esm/src/matrix/events/event-room-join-no-xml.d.ts +8 -0
  32. package/dist/esm/src/matrix/events/event-room-join-no-xml.d.ts.map +1 -0
  33. package/dist/esm/src/matrix/events/event-room-join-no-xml.js +122 -0
  34. package/dist/esm/src/matrix/events/event-room-join.d.ts.map +1 -1
  35. package/dist/esm/src/matrix/events/event-room-join.js +1 -0
  36. package/dist/esm/src/matrix/events/event-room-leave.d.ts.map +1 -1
  37. package/dist/esm/src/matrix/events/event-room-leave.js +3 -3
  38. package/dist/esm/src/matrix/events/event-room-topic.d.ts.map +1 -1
  39. package/dist/esm/src/matrix/events/event-room-topic.js +1 -1
  40. package/dist/esm/src/matrix/events/mod.d.ts.map +1 -1
  41. package/dist/esm/src/matrix/events/mod.js +2 -0
  42. package/dist/esm/src/matrix/messages/sysmsg/message-revokemsg.d.ts.map +1 -1
  43. package/dist/esm/src/matrix/messages/sysmsg/message-revokemsg.js +2 -4
  44. package/dist/esm/src/matrix/schema-mapper/contact.js +1 -1
  45. package/dist/esm/src/matrix/service/request.d.ts +17 -4
  46. package/dist/esm/src/matrix/service/request.d.ts.map +1 -1
  47. package/dist/esm/src/matrix/service/request.js +46 -73
  48. package/dist/esm/src/matrix/utils/is-type.d.ts +8 -0
  49. package/dist/esm/src/matrix/utils/is-type.d.ts.map +1 -1
  50. package/dist/esm/src/matrix/utils/is-type.js +23 -0
  51. package/dist/esm/src/puppet-matrix.d.ts +3 -1
  52. package/dist/esm/src/puppet-matrix.d.ts.map +1 -1
  53. package/dist/esm/src/puppet-matrix.js +52 -20
  54. package/dist/esm/src/utils/normalize-filebox.d.ts +1 -3
  55. package/dist/esm/src/utils/normalize-filebox.d.ts.map +1 -1
  56. package/dist/esm/src/utils/normalize-filebox.js +1 -16
  57. package/package.json +5 -2
  58. package/src/engine-schema.ts +2 -1
  59. package/src/matrix/events/event-room-join-no-xml.ts +178 -0
  60. package/src/matrix/events/event-room-join.ts +2 -1
  61. package/src/matrix/events/event-room-leave.ts +6 -4
  62. package/src/matrix/events/event-room-topic.ts +2 -1
  63. package/src/matrix/events/mod.ts +2 -0
  64. package/src/matrix/messages/sysmsg/message-revokemsg.ts +3 -4
  65. package/src/matrix/schema-mapper/contact.ts +1 -1
  66. package/src/matrix/service/request.ts +73 -88
  67. package/src/matrix/utils/is-type.ts +34 -0
  68. package/src/puppet-matrix.ts +55 -27
  69. package/src/utils/normalize-filebox.ts +0 -24
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ContactType = void 0;
3
4
  exports.isRoomId = isRoomId;
4
5
  exports.isIMRoomId = isIMRoomId;
5
6
  exports.isContactId = isContactId;
@@ -8,6 +9,7 @@ exports.isContactOfficialId = isContactOfficialId;
8
9
  exports.isStrangerV1 = isStrangerV1;
9
10
  exports.isStrangerV2 = isStrangerV2;
10
11
  exports.isPayload = isPayload;
12
+ exports.getContactType = getContactType;
11
13
  const officeWxid = [
12
14
  'medianote',
13
15
  'floatbottle',
@@ -70,3 +72,26 @@ function isPayload(payload) {
70
72
  }
71
73
  return false;
72
74
  }
75
+ var ContactType;
76
+ (function (ContactType) {
77
+ ContactType[ContactType["Stranger"] = 0] = "Stranger";
78
+ ContactType[ContactType["System"] = 1] = "System";
79
+ ContactType[ContactType["Friend"] = 2] = "Friend";
80
+ ContactType[ContactType["Mp"] = 3] = "Mp";
81
+ ContactType[ContactType["ChatRoom"] = 4] = "ChatRoom";
82
+ })(ContactType || (exports.ContactType = ContactType = {}));
83
+ function getContactType(username, bitVal = 0, verifyFlag = 0) {
84
+ if (username.includes('@chatroom')) {
85
+ return ContactType.ChatRoom;
86
+ }
87
+ if (verifyFlag !== 0) {
88
+ return ContactType.Mp;
89
+ }
90
+ if (officeWxid.includes(username)) {
91
+ return ContactType.System;
92
+ }
93
+ if ((bitVal & 1) === 1) {
94
+ return ContactType.Friend;
95
+ }
96
+ return ContactType.Stranger;
97
+ }
@@ -97,6 +97,7 @@ declare class PuppetMatrix extends PUPPET.Puppet {
97
97
  roomRawPayloadParser(payload: ContactPayload): Promise<PUPPET.payloads.Room>;
98
98
  roomRawPayload(id: string): Promise<ContactPayload | undefined>;
99
99
  roomMemberRawPayload(roomId: string, contactId: string): Promise<ContactPayload>;
100
+ private _searchRoomMemberInfo;
100
101
  roomMemberRawPayloadParser(rawPayload: ContactPayload): Promise<PUPPET.payloads.RoomMember>;
101
102
  roomInvitationRawPayload(roomInvitationId: string): Promise<any>;
102
103
  roomInvitationRawPayloadParser(rawPayload: any): Promise<PUPPET.payloads.RoomInvitation>;
@@ -116,6 +117,7 @@ declare class PuppetMatrix extends PUPPET.Puppet {
116
117
  _updateRoom(roomId: string): Promise<void>;
117
118
  private _onPushContact;
118
119
  private _onPushMessage;
120
+ private _refreshRoomInfo;
119
121
  private _refreshContact;
120
122
  private _startPuppetHeart;
121
123
  private _stopPuppetHeart;
@@ -123,7 +125,7 @@ declare class PuppetMatrix extends PUPPET.Puppet {
123
125
  private _getMessageAudioFileBox;
124
126
  private _getMessageVideoFileBox;
125
127
  private _getMessageFileFileBox;
126
- syncContact(): Promise<void>;
128
+ syncContact(init?: boolean): Promise<void>;
127
129
  }
128
130
  export { PuppetMatrix, VERSION };
129
131
  export default PuppetMatrix;
@@ -1 +1 @@
1
- {"version":3,"file":"puppet-matrix.d.ts","sourceRoot":"","sources":["../../../src/puppet-matrix.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"puppet-matrix.d.ts","sourceRoot":"","sources":["../../../src/puppet-matrix.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,sBAAsB,CAAA;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAKhD,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAExE,OAAO,MAAM,MAAM,6BAA6B,CAAA;AA4BhD,QAAA,MAAM,OAAO,QAAiC,CAAA;AAK9C,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,aAAa,GAAG;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,GAAG,CAAA;IACZ,kBAAkB,EAAE,MAAM,CAAA;CAC3B,CAAA;AAED,cAAM,YAAa,SAAQ,MAAM,CAAC,MAAM;IAoBT,OAAO,EAAE,mBAAmB;IAlBzD,OAAO,CAAC,SAAS,CAAC,CAAc;IAChC,OAAO,CAAC,OAAO,CAAC,CAAQ;IACxB,OAAO,CAAC,KAAK,CAAC,CAA4B;IAC1C,OAAO,CAAC,aAAa,CAA2B;IAChD,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,eAAe,CAAC,CAA+B;IACvD,OAAO,CAAC,eAAe,CAAC,CAAuC;IAC/D,OAAO,CAAC,eAAe,CAAC,CAAuC;IAC/D,OAAO,CAAC,sBAAsB,CAAC,CAAuC;IACtE,OAAO,CAAC,eAAe,CAAQ;IAC/B,OAAO,CAAC,aAAa,CAA6B;IAClD,gBAAgC,OAAO,SAAU;gBAOpB,OAAO,GAAE,mBAA+C;IAuBrF,IAAW,MAAM,uBAEhB;IAEc,OAAO,IAAK,OAAO,CAAC,IAAI,CAAC;YAS1B,YAAY;YAuHZ,YAAY;IAuB1B,OAAO,CAAC,eAAe;YAOT,UAAU;IAiET,eAAe,CAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YAS1D,aAAa;YA4Cb,OAAO;IAiCR,KAAK,IAAK,OAAO,CAAC,IAAI,CAAC;IAmBvB,MAAM,IAAK,OAAO,CAAC,IAAI,CAAC;YAIvB,WAAW;IAeV,MAAM,CAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAU7C,IAAI,CAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI;IAOpB,aAAa,IAAK,OAAO,CAAC,IAAI,CAAC;IAKjC,iBAAiB,IAAK,OAAO,CAAC,IAAI,CAAC;IAuBjC,eAAe,CAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK7C,iBAAiB,IAAK,OAAO,CAAC,MAAM,CAAC;IAKrC,oBAAoB,CAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKvD,YAAY,CAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAK1E,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAChD,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IA8B9D,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAC3D,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAavE,WAAW,IAAK,OAAO,CAAC,MAAM,EAAE,CAAC;IAKjC,wBAAwB,CAAE,SAAS,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,IAAI;IAK7E,kBAAkB,CAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAKjE,aAAa,CAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWhD,gBAAgB,CAAE,MAAM,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxE,mBAAmB,CAAE,MAAM,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAK3E,YAAY,CAAE,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKjD,iBAAiB,CAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAWzD,gBAAgB,CAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBtD,aAAa,CAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAoD5F,qBAAqB,CAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC;IAQ7D,sBAAsB,CAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC;YAU5D,iBAAiB;YAmBjB,kBAAkB;IAuBjB,cAAc,CAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAKnD,cAAc,CAC3B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;IA6BpB,WAAW,CAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA2C1D,YAAY,CAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAS3D,kBAAkB,CAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;IAe5E,UAAU,CAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;IAsBhE,eAAe,CAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAiBtE,kBAAkB,CAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC;IA8BhF,eAAe,CAAE,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA0C3F,sBAAsB,CAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC;IAwB3G,eAAe,CAAE,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAoCxG,cAAc,CAAE,cAAc,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAsBxG,eAAe,CAAE,cAAc,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAW1F,aAAa,CAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IASnD,cAAc,CAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkCrE,OAAO,CAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY1D,UAAU,CAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAWtD,UAAU,CACvB,aAAa,EAAE,MAAM,EAAE,EACvB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,MAAM,CAAC;IAKH,OAAO,CACpB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC;IAKD,QAAQ,IAAK,OAAO,CAAC,MAAM,EAAE,CAAC;IAK9B,UAAU,CAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAK5C,QAAQ,CAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC1C,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUvD,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC7C,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWzD,cAAc,CAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAMlD,oBAAoB,CAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAS9D,uBAAuB,CAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;IAKnF,iBAAiB,CAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC;IAuBnE,uBAAuB,CAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;IAQnF,iBAAiB,CAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAavD,oBAAoB,CAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;IAQ7E,cAAc,CAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC;IAchE,oBAAoB,CAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;YAkBlF,qBAAqB;IAmBpB,0BAA0B,CAAE,UAAU,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;IAQ5F,wBAAwB,CAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAQjE,8BAA8B,CAAE,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC;IAQzF,0BAA0B,CAAE,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;IAQxG,oBAAoB,CAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;IAiBtE,WAAW,CAAE,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC;IAiEnE,aAAa,CAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMzC,cAAc,CAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,MAAM,CAAC;IAKnE,kBAAkB,CAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;IAKxF,oBAAoB,CAAE,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;IAMnF,GAAG,CAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,UAAO,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAY1F,QAAQ;YAWA,kBAAkB;YAoClB,oBAAoB;YAwDpB,mBAAmB;YA+BnB,iBAAiB;IAYlB,WAAW,CAAE,MAAM,EAAE,MAAM;YAgB1B,cAAc;YAcd,cAAc;YAwEd,gBAAgB;YAyBhB,eAAe;YAiCf,iBAAiB;IAa/B,OAAO,CAAC,gBAAgB;YAeV,uBAAuB;YASvB,uBAAuB;YASvB,uBAAuB;YAgBvB,sBAAsB;IAwBvB,WAAW,CAAE,IAAI,CAAC,EAAE,OAAO;CAQzC;AAED,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,CAAA;AAEhC,eAAe,YAAY,CAAA"}
@@ -145,14 +145,6 @@ class PuppetMatrix extends PUPPET.Puppet {
145
145
  removerId: this._self?.wxid,
146
146
  timestamp: (0, date_fns_1.getUnixTime)(Date.now()),
147
147
  };
148
- for (const leaveId of leaveIds) {
149
- await this._cacheMgr?.deleteSingleRoomMember(roomId, leaveId);
150
- const roomInfo = await this._cacheMgr?.getRoom(roomId);
151
- if (roomInfo && roomInfo.chatroommemberList) {
152
- roomInfo.chatroommemberList = roomInfo.chatroommemberList.filter(member => member !== leaveId);
153
- await this._cacheMgr?.setRoom(roomId, roomInfo);
154
- }
155
- }
156
148
  this.emit('room-leave', payload);
157
149
  }));
158
150
  this._client.on('room-join', this.wrapAsync(async ({ roomId, inviterId, joinIds, joinUsers }) => {
@@ -389,11 +381,10 @@ class PuppetMatrix extends PUPPET.Puppet {
389
381
  async ready() {
390
382
  try {
391
383
  await this._client?.getContactList(1, 100);
392
- await this._client?.getOpenImContactList(1, 100);
393
- await (0, index_js_1.delay)(2000);
394
384
  await this._client?.getGroupList(1, 100);
395
- await (0, index_js_1.delay)(2000);
385
+ await this._client?.getOpenImContactList(1, 100);
396
386
  await this._client?.getOfficeList(1, 100);
387
+ await this.syncContact(true);
397
388
  wechaty_puppet_1.log.silly(PRE, 'on ready');
398
389
  setTimeout(() => {
399
390
  this.emit('ready', {
@@ -983,6 +974,20 @@ class PuppetMatrix extends PUPPET.Puppet {
983
974
  return memberInfo;
984
975
  }
985
976
  }
977
+ async _searchRoomMemberInfo(roomId, name) {
978
+ const localRes = await this.roomMemberSearch(roomId, name);
979
+ if (localRes.length > 0) {
980
+ return localRes[0];
981
+ }
982
+ const roomMemberMap = await this._getRoomMemberList(roomId);
983
+ const searchMember = Object.values(roomMemberMap).find((member) => {
984
+ if (member.name === name || member.alias === name || member.remark === name || member.displayName === name) {
985
+ return true;
986
+ }
987
+ return false;
988
+ });
989
+ return searchMember?.wxid || '';
990
+ }
986
991
  async roomMemberRawPayloadParser(rawPayload) {
987
992
  return (0, room_js_1.engineRoomMemberToWechaty)(rawPayload);
988
993
  }
@@ -1098,7 +1103,8 @@ class PuppetMatrix extends PUPPET.Puppet {
1098
1103
  }
1099
1104
  let ret = await this._cacheMgr.getRoomMember(roomId);
1100
1105
  if (!ret || (ret && !Object.keys(ret).length) || force) {
1101
- const resMembers = await this._client?.getGroupMembers(roomId) || [];
1106
+ const roomMemberDetail = await this._client?.getGroupMembersDetail(roomId);
1107
+ const resMembers = roomMemberDetail?.memberList || [];
1102
1108
  const roomMemberMap = {};
1103
1109
  for (const roomMember of resMembers) {
1104
1110
  const hasContact = await this._cacheMgr.hasContact(roomMember.wxid);
@@ -1110,6 +1116,7 @@ class PuppetMatrix extends PUPPET.Puppet {
1110
1116
  }
1111
1117
  else {
1112
1118
  MemberInfo = await this._cacheMgr.getContact(roomMember.wxid);
1119
+ MemberInfo = (0, index_js_1.mergeWithFallback)(MemberInfo, roomMember);
1113
1120
  roomMemberMap[roomMember.wxid] = MemberInfo;
1114
1121
  }
1115
1122
  }
@@ -1274,7 +1281,6 @@ class PuppetMatrix extends PUPPET.Puppet {
1274
1281
  }
1275
1282
  case mod_js_1.EventType.RoomJoin: {
1276
1283
  const roomJoin = event.payload;
1277
- await this._updateRoomMember(roomJoin.roomId);
1278
1284
  for (const joinId of roomJoin.inviteeIdList) {
1279
1285
  if (this._roomJoinTemp[`${roomJoin.roomId}-${joinId}`]) {
1280
1286
  roomJoin.inviteeIdList = roomJoin.inviteeIdList.filter(id => id !== joinId);
@@ -1291,16 +1297,46 @@ class PuppetMatrix extends PUPPET.Puppet {
1291
1297
  break;
1292
1298
  }
1293
1299
  case mod_js_1.EventType.RoomLeave: {
1300
+ const roomLeave = event.payload;
1301
+ this.emit('room-leave', roomLeave);
1294
1302
  break;
1295
1303
  }
1296
1304
  case mod_js_1.EventType.RoomTopic: {
1297
1305
  const roomTopic = event.payload;
1298
1306
  this.emit('room-topic', roomTopic);
1307
+ await this._refreshContact(roomTopic.roomId);
1299
1308
  break;
1300
1309
  }
1301
1310
  }
1302
1311
  }
1312
+ async _refreshRoomInfo(roomId) {
1313
+ const roomDetail = await this._client?.searchContact([roomId]);
1314
+ if (roomDetail && roomDetail.wxid) {
1315
+ await this._updateContactCache(roomDetail);
1316
+ return roomDetail;
1317
+ }
1318
+ return {
1319
+ wxNum: '',
1320
+ wxid: roomId || '',
1321
+ name: '',
1322
+ sex: 0,
1323
+ alias: '',
1324
+ province: '',
1325
+ city: '',
1326
+ country: '',
1327
+ avatar: '',
1328
+ description: '',
1329
+ labelIdlist: '',
1330
+ scene: '',
1331
+ sign: '',
1332
+ snsBgImg: '',
1333
+ };
1334
+ }
1303
1335
  async _refreshContact(wxid, isFriend) {
1336
+ if ((0, is_type_js_1.isRoomId)(wxid)) {
1337
+ const res = await this._refreshRoomInfo(wxid);
1338
+ return res;
1339
+ }
1304
1340
  const contact = await this._client?.searchContactDetail([wxid]);
1305
1341
  if (contact && !contact.wxid) {
1306
1342
  contact.wxid = wxid;
@@ -1388,16 +1424,12 @@ class PuppetMatrix extends PUPPET.Puppet {
1388
1424
  }
1389
1425
  return file_box_1.FileBox.fromUrl(url, { name: appPayload.title });
1390
1426
  }
1391
- async syncContact() {
1427
+ async syncContact(init) {
1392
1428
  if (!this.currentUserId) {
1393
1429
  throw new Error('Can not sync contact before login');
1394
1430
  }
1395
1431
  wechaty_puppet_1.log.info('syncContact');
1396
- await this._client.syncContact();
1397
- await this._client?.getGroupList(1, 100);
1398
- await this._client?.getContactList(1, 100);
1399
- await this._client?.getOpenImContactList(1, 100);
1400
- await this._client?.getOfficeList(1, 100);
1432
+ await this._client.syncContact(init);
1401
1433
  }
1402
1434
  }
1403
1435
  exports.PuppetMatrix = PuppetMatrix;
@@ -1,6 +1,4 @@
1
- import type { FileBox } from 'file-box';
2
1
  import { FileBoxInterface } from 'file-box';
3
2
  declare const canPassthrough: (fileBox: FileBoxInterface) => boolean;
4
- declare const normalizeFileBoxUuid: (FileBoxUuid: typeof FileBox) => (fileBox: FileBoxInterface) => Promise<FileBoxInterface | FileBox>;
5
- export { canPassthrough, normalizeFileBoxUuid, };
3
+ export { canPassthrough, };
6
4
  //# sourceMappingURL=normalize-filebox.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"normalize-filebox.d.ts","sourceRoot":"","sources":["../../../../src/utils/normalize-filebox.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACR,MAA0B,UAAU,CAAA;AACrC,OAAO,EAEL,gBAAgB,EACjB,MAA0B,UAAU,CAAA;AA4BrC,QAAA,MAAM,cAAc,GAAI,SAAS,gBAAgB,YA8BhD,CAAA;AAED,QAAA,MAAM,oBAAoB,GAAI,aAAa,OAAO,OAAO,MAAY,SAAS,gBAAgB,wCAkB7F,CAAA;AAED,OAAO,EACL,cAAc,EACd,oBAAoB,GACrB,CAAA"}
1
+ {"version":3,"file":"normalize-filebox.d.ts","sourceRoot":"","sources":["../../../../src/utils/normalize-filebox.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,gBAAgB,EACjB,MAA0B,UAAU,CAAA;AA4BrC,QAAA,MAAM,cAAc,GAAI,SAAS,gBAAgB,YA8BhD,CAAA;AAED,OAAO,EACL,cAAc,GACf,CAAA"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.normalizeFileBoxUuid = exports.canPassthrough = void 0;
3
+ exports.canPassthrough = void 0;
4
4
  const file_box_1 = require("file-box");
5
5
  const PASS_THROUGH_THRESHOLD_BYTES = 20 * 1024;
6
6
  const greenFileBoxTypes = [
@@ -28,19 +28,3 @@ const canPassthrough = (fileBox) => {
28
28
  }
29
29
  };
30
30
  exports.canPassthrough = canPassthrough;
31
- const normalizeFileBoxUuid = (FileBoxUuid) => async (fileBox) => {
32
- if (canPassthrough(fileBox)) {
33
- return fileBox;
34
- }
35
- const stream = await fileBox.toStream();
36
- const uuid = await FileBoxUuid
37
- .fromStream(stream, fileBox.name)
38
- .toUuid();
39
- const uuidFileBox = FileBoxUuid.fromUuid(uuid, {
40
- md5: fileBox.md5,
41
- name: fileBox.name,
42
- size: fileBox.size,
43
- });
44
- return uuidFileBox;
45
- };
46
- exports.normalizeFileBoxUuid = normalizeFileBoxUuid;
@@ -55,6 +55,7 @@ export interface ContactPayload {
55
55
  snsBgImg?: string;
56
56
  contactType?: number;
57
57
  announcement?: string;
58
+ displayName?: string;
58
59
  }
59
60
  export interface MessageRevokeInfo {
60
61
  fromWxid: string;
@@ -1 +1 @@
1
- {"version":3,"file":"engine-schema.d.ts","sourceRoot":"","sources":["../../../src/engine-schema.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAE1D,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;CACpB;AACD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAGD,oBAAY,OAAO;IACjB,GAAG,IAAI;IACP,MAAM,IAAI;CACX;AAKD,aAAK,aAAa;IAChB,OAAO,IAAI;IACX,IAAI,IAAI;IACR,MAAM,IAAI;CACX;AAED,MAAM,WAAW,cAAc;IAI7B,MAAM,EAAE,MAAM,CAAC;IAIf,IAAI,EAAE,MAAM,CAAC;IAIb,OAAO,EAAE,MAAM,CAAC;IAIhB,SAAS,CAAC,EAAE,MAAM,CAAC;IAInB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAIhC,IAAI,EAAE,MAAM,CAAC;IAIb,KAAK,EAAE,MAAM,CAAC;IAId,QAAQ,EAAE,MAAM,CAAC;IAIjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAIhB,GAAG,EAAE,aAAa,CAAC;IAInB,IAAI,CAAC,EAAE,MAAM,CAAC;IAKd,MAAM,CAAC,EAAE,MAAM,CAAC;IAIhB,IAAI,EAAE,MAAM,CAAC;IAIb,KAAK,EAAE,MAAM,CAAC;IAId,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAI9B,OAAO,CAAC,EAAE,MAAM,CAAC;IAIjB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IAItB,QAAQ,CAAC,EAAE,MAAM,CAAA;IAIjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IAIrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAKlB,WAAW,CAAC,EAAE,MAAM,CAAC;IAIrB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAC,MAAM,CAAC;IACX,OAAO,EAAC,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAA;CACjB"}
1
+ {"version":3,"file":"engine-schema.d.ts","sourceRoot":"","sources":["../../../src/engine-schema.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAE1D,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;CACpB;AACD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAGD,oBAAY,OAAO;IACjB,GAAG,IAAI;IACP,MAAM,IAAI;CACX;AAKD,aAAK,aAAa;IAChB,OAAO,IAAI;IACX,IAAI,IAAI;IACR,MAAM,IAAI;CACX;AAED,MAAM,WAAW,cAAc;IAI7B,MAAM,EAAE,MAAM,CAAC;IAIf,IAAI,EAAE,MAAM,CAAC;IAIb,OAAO,EAAE,MAAM,CAAC;IAIhB,SAAS,CAAC,EAAE,MAAM,CAAC;IAInB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAIhC,IAAI,EAAE,MAAM,CAAC;IAIb,KAAK,EAAE,MAAM,CAAC;IAId,QAAQ,EAAE,MAAM,CAAC;IAIjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAIhB,GAAG,EAAE,aAAa,CAAC;IAInB,IAAI,CAAC,EAAE,MAAM,CAAC;IAKd,MAAM,CAAC,EAAE,MAAM,CAAC;IAIhB,IAAI,EAAE,MAAM,CAAC;IAIb,KAAK,EAAE,MAAM,CAAC;IAId,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAI9B,OAAO,CAAC,EAAE,MAAM,CAAC;IAIjB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IAItB,QAAQ,CAAC,EAAE,MAAM,CAAA;IAIjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IAIrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAKlB,WAAW,CAAC,EAAE,MAAM,CAAC;IAIrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAC,MAAM,CAAC;IACX,OAAO,EAAC,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAA;CACjB"}
@@ -0,0 +1,8 @@
1
+ import type { MessagePayload } from '../../engine-schema.js';
2
+ import type * as PUPPET from '@juzi/wechaty-puppet';
3
+ import type { EventPayload } from './event.js';
4
+ export type Runner<T> = () => Promise<T | null>;
5
+ export declare function executeRunners<T>(runners: Runner<T>[]): Promise<T | null>;
6
+ declare const _default: (puppet: PUPPET.Puppet, message: MessagePayload) => Promise<EventPayload>;
7
+ export default _default;
8
+ //# sourceMappingURL=event-room-join-no-xml.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-room-join-no-xml.d.ts","sourceRoot":"","sources":["../../../../../src/matrix/events/event-room-join-no-xml.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,KAAK,KAAK,MAAM,MAAM,sBAAsB,CAAA;AAEnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AA4B9C,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,MAAM,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;AAEhD,wBAAsB,cAAc,CAAC,CAAC,EAAG,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAShF;yBAEqB,QAAQ,MAAM,CAAC,MAAM,EAAE,SAAS,cAAc,KAAG,OAAO,CAAC,YAAY,CAAC;AAA5F,wBAqIC"}
@@ -0,0 +1,122 @@
1
+ import { isRoomId } from '../utils/is-type.js';
2
+ import { WechatMessageType } from '../types.js';
3
+ const YOU_INVITE_OTHER_REGEX_LIST = [
4
+ /^你邀请"(.+)"加入了群聊 {2}/,
5
+ /^You invited (.+) to the group chat/,
6
+ ];
7
+ const OTHER_INVITE_YOU_REGEX_LIST = [
8
+ /^"([^"]+?)"邀请你加入了群聊,群聊参与人还有:(.+)/,
9
+ /^(.+) invited you to a group chat with (.+)/,
10
+ ];
11
+ const OTHER_INVITE_YOU_AND_OTHER_REGEX_LIST = [
12
+ /^"([^"]+?)"邀请你和"(.+?)"加入了群聊/,
13
+ /^(.+?) invited you and (.+?) to (the|a) group chat/,
14
+ ];
15
+ const OTHER_INVITE_OTHER_REGEX_LIST = [
16
+ /^"(.+)"邀请"(.+)"加入了群聊/,
17
+ /^(.+?) invited (.+?) to (the|a) group chat/,
18
+ ];
19
+ const OTHER_JOIN_VIA_YOUR_QRCODE_REGEX_LIST = [
20
+ /^"?(.+)"通过扫描你分享的二维码加入群聊/,
21
+ /^"?(.+)" joined group chat via the QR code you shared/,
22
+ ];
23
+ const OTHER_JOIN_VIA_OTHER_QRCODE_REGEX_LIST = [
24
+ /^"(.+)"通过扫描"(.+)"分享的二维码加入群聊/,
25
+ /^"(.+)" joined the group chat via the QR Code shared by "(.+)"/,
26
+ ];
27
+ export async function executeRunners(runners) {
28
+ for (const runner of runners) {
29
+ const ret = await runner();
30
+ if (ret) {
31
+ return ret;
32
+ }
33
+ }
34
+ return null;
35
+ }
36
+ export default async (puppet, message) => {
37
+ const roomId = message.fromWxid || '';
38
+ if (!isRoomId(roomId)) {
39
+ return null;
40
+ }
41
+ const timestamp = message.timeStamp;
42
+ if (message.msgType !== WechatMessageType.Sys && message.msgType !== WechatMessageType.SysTemplate) {
43
+ return null;
44
+ }
45
+ const youInviteOther = async () => {
46
+ let matches = null;
47
+ [...YOU_INVITE_OTHER_REGEX_LIST, ...OTHER_JOIN_VIA_YOUR_QRCODE_REGEX_LIST].some((re) => !!(matches = message.msg.match(re)));
48
+ if (matches) {
49
+ await puppet._updateRoom(roomId);
50
+ const inviteName = matches[1];
51
+ const inviteeId = await puppet._searchRoomMemberInfo(roomId, inviteName);
52
+ return {
53
+ inviteeIdList: [inviteeId],
54
+ inviterId: puppet.currentUserId,
55
+ roomId,
56
+ timestamp,
57
+ };
58
+ }
59
+ return null;
60
+ };
61
+ const otherInviteYou = async () => {
62
+ let matches = null;
63
+ OTHER_INVITE_YOU_REGEX_LIST.some((re) => !!(matches = message.msg.match(re)));
64
+ if (matches) {
65
+ await puppet._updateRoom(roomId);
66
+ const inviteName = matches[1];
67
+ const inviterId = await puppet._searchRoomMemberInfo(roomId, inviteName);
68
+ return {
69
+ inviteeIdList: [puppet.currentUserId],
70
+ inviterId,
71
+ roomId,
72
+ timestamp,
73
+ };
74
+ }
75
+ return null;
76
+ };
77
+ const otherInviteOther = async () => {
78
+ let matches = null;
79
+ [...OTHER_INVITE_YOU_AND_OTHER_REGEX_LIST, ...OTHER_INVITE_OTHER_REGEX_LIST].some((re) => !!(matches = message.msg.match(re)));
80
+ if (matches) {
81
+ await puppet._updateRoom(roomId);
82
+ const inviteeIdList = [];
83
+ const inviterName = matches[1];
84
+ const inviterId = await puppet._searchRoomMemberInfo(roomId, inviterName);
85
+ const inviteeName = matches[2];
86
+ const inviteeId = await puppet._searchRoomMemberInfo(roomId, inviteeName);
87
+ if (message.msg.includes('你')) {
88
+ inviteeIdList.push(puppet.currentUserId);
89
+ }
90
+ inviteeIdList.push(inviteeId);
91
+ return {
92
+ inviteeIdList,
93
+ inviterId,
94
+ roomId,
95
+ timestamp,
96
+ };
97
+ }
98
+ return null;
99
+ };
100
+ const otherJoinViaQrCode = async () => {
101
+ let matches = null;
102
+ OTHER_JOIN_VIA_OTHER_QRCODE_REGEX_LIST.some((re) => !!(matches = message.msg.match(re)));
103
+ if (matches) {
104
+ await puppet._updateRoom(roomId);
105
+ const inviteeIdList = [];
106
+ const inviteeName = matches[1];
107
+ const inviteeId = await puppet._searchRoomMemberInfo(roomId, inviteeName);
108
+ inviteeIdList.push(inviteeId);
109
+ const inviterName = matches[2];
110
+ const inviterId = await puppet._searchRoomMemberInfo(roomId, inviterName);
111
+ return {
112
+ inviteeIdList,
113
+ inviterId,
114
+ roomId,
115
+ timestamp,
116
+ };
117
+ }
118
+ return null;
119
+ };
120
+ const ret = await executeRunners([youInviteOther, otherInviteYou, otherInviteOther, otherJoinViaQrCode]);
121
+ return ret;
122
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"event-room-join.d.ts","sourceRoot":"","sources":["../../../../../src/matrix/events/event-room-join.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,KAAK,KAAK,MAAM,MAAM,sBAAsB,CAAA;AAEnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;yBAiCxB,QAAQ,MAAM,CAAC,MAAM,EAAE,SAAS,cAAc,KAAG,OAAO,CAAC,YAAY,CAAC;AAA5F,wBAmKC"}
1
+ {"version":3,"file":"event-room-join.d.ts","sourceRoot":"","sources":["../../../../../src/matrix/events/event-room-join.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,KAAK,KAAK,MAAM,MAAM,sBAAsB,CAAA;AAEnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;yBAiCxB,QAAQ,MAAM,CAAC,MAAM,EAAE,SAAS,cAAc,KAAG,OAAO,CAAC,YAAY,CAAC;AAA5F,wBAoKC"}
@@ -72,6 +72,7 @@ export default async (puppet, message) => {
72
72
  if (!matches) {
73
73
  return null;
74
74
  }
75
+ await puppet._updateRoom(roomId);
75
76
  const checkString = (inviteeIdList) => {
76
77
  return typeof inviteeIdList !== 'string'
77
78
  ? inviteeIdList
@@ -1 +1 @@
1
- {"version":3,"file":"event-room-leave.d.ts","sourceRoot":"","sources":["../../../../../src/matrix/events/event-room-leave.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,KAAK,KAAK,MAAM,MAAM,sBAAsB,CAAA;AAEnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAkC9C,wBAAgB,uBAAuB,CAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,QAGzE;AAED,wBAAgB,qBAAqB,CAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAGjF;yBAEqB,QAAQ,MAAM,CAAC,MAAM,EAAE,SAAS,cAAc,KAAG,OAAO,CAAC,YAAY,CAAC;AAA5F,wBA+DC"}
1
+ {"version":3,"file":"event-room-leave.d.ts","sourceRoot":"","sources":["../../../../../src/matrix/events/event-room-leave.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,KAAK,KAAK,MAAM,MAAM,sBAAsB,CAAA;AAEnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAkC9C,wBAAgB,uBAAuB,CAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,QAGzE;AAED,wBAAgB,qBAAqB,CAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAGjF;yBAEqB,QAAQ,MAAM,CAAC,MAAM,EAAE,SAAS,cAAc,KAAG,OAAO,CAAC,YAAY,CAAC;AAA5F,wBAiEC"}
@@ -38,13 +38,13 @@ export default async (puppet, message) => {
38
38
  if (!isRoomId(roomId) || message.msgType !== WechatMessageType.Sys) {
39
39
  return null;
40
40
  }
41
- await puppet._updateRoom(roomId);
42
41
  const youRemoveOther = async () => {
43
42
  let matches = null;
44
43
  YOU_REMOVE_OTHER_REGEX_LIST.some((re) => !!(matches = message.msg.match(re)));
45
44
  if (matches) {
45
+ await puppet._updateRoom(roomId);
46
46
  const removerName = matches[2];
47
- const removerId = (await puppet.roomMemberSearch(roomId, removerName))[0];
47
+ const removerId = await puppet._searchRoomMemberInfo(roomId, removerName);
48
48
  return {
49
49
  removeeIdList: [removerId],
50
50
  removerId: puppet.currentUserId,
@@ -59,7 +59,7 @@ export default async (puppet, message) => {
59
59
  OTHER_REMOVE_YOU_REGEX_LIST.some((re) => !!(matches = message.msg.match(re)));
60
60
  if (matches) {
61
61
  const removerName = matches[2];
62
- const removerId = (await puppet.roomMemberSearch(roomId, removerName))[0];
62
+ const removerId = await puppet._searchRoomMemberInfo(roomId, removerName);
63
63
  return {
64
64
  removeeIdList: [puppet.currentUserId],
65
65
  removerId,
@@ -1 +1 @@
1
- {"version":3,"file":"event-room-topic.d.ts","sourceRoot":"","sources":["../../../../../src/matrix/events/event-room-topic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,KAAK,KAAK,MAAM,MAAM,sBAAsB,CAAA;AAEnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;yBAgBxB,QAAQ,MAAM,CAAC,MAAM,EAAE,SAAS,cAAc,KAAG,OAAO,CAAC,YAAY,CAAC;AAA5F,wBAqDC"}
1
+ {"version":3,"file":"event-room-topic.d.ts","sourceRoot":"","sources":["../../../../../src/matrix/events/event-room-topic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,KAAK,KAAK,MAAM,MAAM,sBAAsB,CAAA;AAEnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;yBAgBxB,QAAQ,MAAM,CAAC,MAAM,EAAE,SAAS,cAAc,KAAG,OAAO,CAAC,YAAY,CAAC;AAA5F,wBAsDC"}
@@ -30,7 +30,7 @@ export default async (puppet, message) => {
30
30
  const changeName = match[1];
31
31
  let changeId = '';
32
32
  if (changeName) {
33
- changeId = (await puppet.roomMemberSearch(roomId, changeName))[0];
33
+ changeId = await puppet._searchRoomMemberInfo(roomId, changeName);
34
34
  }
35
35
  return {
36
36
  changerId: changeId,
@@ -1 +1 @@
1
- {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../../../src/matrix/events/mod.ts"],"names":[],"mappings":"AAMA,OAAO,EAAkB,SAAS,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AASlE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,CAAA"}
1
+ {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../../../src/matrix/events/mod.ts"],"names":[],"mappings":"AAOA,OAAO,EAAkB,SAAS,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAUlE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,CAAA"}
@@ -4,9 +4,11 @@ import roomJoinParser from './event-room-join.js';
4
4
  import roomLeaveParser from './event-room-leave.js';
5
5
  import roomTopicParser from './event-room-topic.js';
6
6
  import messageParser from './event-message.js';
7
+ import roomJoinNoXmlParser from './event-room-join-no-xml.js';
7
8
  import { addEventParser, EventType, parseEvent } from './event.js';
8
9
  addEventParser(EventType.Friendship, friendShipParser);
9
10
  addEventParser(EventType.RoomInvite, roomInviteParser);
11
+ addEventParser(EventType.RoomJoin, roomJoinNoXmlParser);
10
12
  addEventParser(EventType.RoomJoin, roomJoinParser);
11
13
  addEventParser(EventType.RoomLeave, roomLeaveParser);
12
14
  addEventParser(EventType.RoomTopic, roomTopicParser);
@@ -1 +1 @@
1
- {"version":3,"file":"message-revokemsg.d.ts","sourceRoot":"","sources":["../../../../../../src/matrix/messages/sysmsg/message-revokemsg.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,MAAM,sBAAsB,CAAA;AAGnD,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,OAAO,CAAC;AAE5C,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,aAAa,CAAC;CACrB;AAWD,wBAAsB,4BAA4B,CAAE,kBAAkB,EAAE,kBAAkB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAkB5H;AAED,wBAAsB,wBAAwB,CAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAC,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,CAOxJ;AAED,wBAAsB,iCAAiC,CAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAC,uBAAuB,GAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CASjJ"}
1
+ {"version":3,"file":"message-revokemsg.d.ts","sourceRoot":"","sources":["../../../../../../src/matrix/messages/sysmsg/message-revokemsg.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,MAAM,sBAAsB,CAAA;AAGnD,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,OAAO,CAAC;AAE5C,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,aAAa,CAAC;CACrB;AAWD,wBAAsB,4BAA4B,CAAE,kBAAkB,EAAE,kBAAkB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAkB5H;AAED,wBAAsB,wBAAwB,CAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAC,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,CAOxJ;AAED,wBAAsB,iCAAiC,CAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAC,uBAAuB,GAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAQjJ"}
@@ -34,10 +34,8 @@ export async function getRevokeOriginalMessage(puppet, revokemsgPayload) {
34
34
  }
35
35
  export async function getRevokeOperatorIdForRoomMessage(puppet, revokemsgPayload) {
36
36
  if (isRoomId(revokemsgPayload.session) || isIMRoomId(revokemsgPayload.session)) {
37
- const contactIdList = await puppet.roomMemberSearch(revokemsgPayload.session, revokemsgPayload.operatorNickName);
38
- if (contactIdList.length) {
39
- return contactIdList[0];
40
- }
37
+ const contactId = await puppet._searchRoomMemberInfo(revokemsgPayload.session, revokemsgPayload.operatorNickName);
38
+ return contactId;
41
39
  }
42
40
  return null;
43
41
  }
@@ -9,7 +9,7 @@ export function engineContactToWechaty(contact) {
9
9
  gender: contact.sex,
10
10
  id: contact.wxid,
11
11
  name: contact.name,
12
- friend: !!contact.isFriend,
12
+ friend: contact.contactType === 2 || !!contact.isFriend,
13
13
  phone: [],
14
14
  province: contact.province,
15
15
  signature: contact.sign,
@@ -27,7 +27,12 @@ export declare enum NotifyTypeEnum {
27
27
  RoomMemberAdd = 1046,
28
28
  RoomMemberUpdate = 1047,
29
29
  RoomMemberDel = 1048,
30
- SyncMsgFailed = 2006
30
+ SyncMsgFailed = 2006,
31
+ WxNotifyTypeCmdIdModContact = 1200,
32
+ WxNotifyTypeCmdIdDelContact = 1201,
33
+ WxNotifyTypeOpenImContactAdd = 1202,
34
+ WxNotifyTypeOpenImContactDel = 1203,
35
+ WxNotifyTypeOpenImRoomContactChange = 1204
31
36
  }
32
37
  declare enum ContactGender {
33
38
  Unknown = 0,
@@ -75,6 +80,8 @@ export interface ContactPayload {
75
80
  snsBgImg?: string;
76
81
  contactType?: number;
77
82
  announcement?: string;
83
+ chatroomVersion?: number;
84
+ chatroomInfoVersion?: number;
78
85
  }
79
86
  declare enum Status {
80
87
  normal = "normal",
@@ -260,6 +267,7 @@ declare class Client extends EventEmitter {
260
267
  server: any;
261
268
  tokenInfo: any;
262
269
  hasEmitLogout: boolean;
270
+ private lastInitSeqInfo;
263
271
  emit(event: 'hook', detail: BaseEvent): boolean;
264
272
  emit(event: 'login', detail: BaseEvent): boolean;
265
273
  emit(event: 'logout', message: string): boolean;
@@ -313,18 +321,23 @@ declare class Client extends EventEmitter {
313
321
  logout(): Promise<void>;
314
322
  searchContact(contactIds: string[]): Promise<ContactPayload | ContactPayload[] | undefined>;
315
323
  searchContactDetail(contactIds: string[], roomId?: string): Promise<ContactPayload | ContactPayload[] | undefined>;
316
- syncContact(): Promise<void>;
324
+ syncContact(init?: boolean): Promise<void>;
317
325
  getContactList(page?: number, pageSize?: number): Promise<void>;
318
326
  getOpenImContactList(page?: number, pageSize?: number): Promise<void>;
319
327
  getGroupList(page?: number, pageSize?: number): Promise<void>;
320
- getGroupMembersDetail(roomId: string): Promise<never[] | {
328
+ getGroupMembersDetail(roomId: string): Promise<{
321
329
  memeberIdList: string[];
322
330
  allMemberCount: any;
323
331
  ownerId: any;
324
332
  adminIdList: string[];
325
333
  memberList: ContactPayload[];
334
+ } | {
335
+ memeberIdList?: undefined;
336
+ allMemberCount?: undefined;
337
+ ownerId?: undefined;
338
+ adminIdList?: undefined;
339
+ memberList?: undefined;
326
340
  }>;
327
- getGroupMembers(roomId: string, page?: number, pageSize?: number): Promise<ContactPayload[]>;
328
341
  getOfficeList(page?: number, pageSize?: number): Promise<void>;
329
342
  sendText(contactId: string, msg: string, selfId?: string | undefined): Promise<MessagePayload | void>;
330
343
  sendAtText(contactId: string, msg: string, atList: string[], selfId: string | undefined): Promise<MessagePayload | void>;