wechaty-puppet-matrix 0.0.9 → 0.0.12

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 (39) hide show
  1. package/dist/cjs/src/matrix/cache-manager.js +1 -1
  2. package/dist/cjs/src/matrix/service/request.d.ts +63 -0
  3. package/dist/cjs/src/matrix/service/request.d.ts.map +1 -1
  4. package/dist/cjs/src/matrix/service/request.js +407 -4
  5. package/dist/cjs/src/matrix/utils/index.d.ts +3 -0
  6. package/dist/cjs/src/matrix/utils/index.d.ts.map +1 -1
  7. package/dist/cjs/src/matrix/utils/index.js +31 -0
  8. package/dist/cjs/src/puppet-matrix.d.ts +6 -0
  9. package/dist/cjs/src/puppet-matrix.d.ts.map +1 -1
  10. package/dist/cjs/src/puppet-matrix.js +84 -0
  11. package/dist/cjs/src/utils/normalize-filebox.d.ts +6 -0
  12. package/dist/cjs/src/utils/normalize-filebox.d.ts.map +1 -0
  13. package/dist/cjs/src/utils/normalize-filebox.js +46 -0
  14. package/dist/cjs/src/utils/sns-xml-generator.d.ts +19 -0
  15. package/dist/cjs/src/utils/sns-xml-generator.d.ts.map +1 -0
  16. package/dist/cjs/src/utils/sns-xml-generator.js +171 -0
  17. package/dist/esm/src/matrix/cache-manager.js +1 -1
  18. package/dist/esm/src/matrix/service/request.d.ts +63 -0
  19. package/dist/esm/src/matrix/service/request.d.ts.map +1 -1
  20. package/dist/esm/src/matrix/service/request.js +407 -4
  21. package/dist/esm/src/matrix/utils/index.d.ts +3 -0
  22. package/dist/esm/src/matrix/utils/index.d.ts.map +1 -1
  23. package/dist/esm/src/matrix/utils/index.js +28 -0
  24. package/dist/esm/src/puppet-matrix.d.ts +6 -0
  25. package/dist/esm/src/puppet-matrix.d.ts.map +1 -1
  26. package/dist/esm/src/puppet-matrix.js +85 -1
  27. package/dist/esm/src/utils/normalize-filebox.d.ts +6 -0
  28. package/dist/esm/src/utils/normalize-filebox.d.ts.map +1 -0
  29. package/dist/esm/src/utils/normalize-filebox.js +42 -0
  30. package/dist/esm/src/utils/sns-xml-generator.d.ts +19 -0
  31. package/dist/esm/src/utils/sns-xml-generator.d.ts.map +1 -0
  32. package/dist/esm/src/utils/sns-xml-generator.js +165 -0
  33. package/package.json +6 -5
  34. package/src/matrix/cache-manager.ts +1 -1
  35. package/src/matrix/service/request.ts +523 -8
  36. package/src/matrix/utils/index.ts +62 -0
  37. package/src/puppet-matrix.ts +112 -1
  38. package/src/utils/normalize-filebox.ts +90 -0
  39. package/src/utils/sns-xml-generator.ts +184 -0
@@ -30,7 +30,7 @@ class CacheManager {
30
30
  if (this._messageCache) {
31
31
  throw new Error('already initialized');
32
32
  }
33
- const baseDir = path_1.default.join(os_1.default.homedir(), path_1.default.sep, '.wechaty', 'puppet-engine-cache', path_1.default.sep, this._userName, path_1.default.sep);
33
+ const baseDir = path_1.default.join(os_1.default.homedir(), path_1.default.sep, '.wechaty', 'puppet-matrix-cache', path_1.default.sep, this._userName, path_1.default.sep);
34
34
  const baseDirExist = await fs_extra_1.default.pathExists(baseDir);
35
35
  if (!baseDirExist) {
36
36
  await fs_extra_1.default.mkdirp(baseDir);
@@ -1,4 +1,5 @@
1
1
  import { EventEmitter } from 'events';
2
+ import * as PUPPET from '@juzi/wechaty-puppet';
2
3
  export type PuppetMatrixOptions = {
3
4
  httpServer?: string;
4
5
  endpoint?: string;
@@ -133,6 +134,24 @@ export interface ImageMessagePayload {
133
134
  file_size: string | number;
134
135
  file_name?: string;
135
136
  }
137
+ export interface SnsImageMessagePayload {
138
+ errcode: number;
139
+ file_key: string;
140
+ file_url: string;
141
+ thumb_url: string;
142
+ }
143
+ export interface SnsVideoMessagePayload {
144
+ errcode: number;
145
+ mp4_identify: string;
146
+ file_key: string;
147
+ file_url: string;
148
+ thumb_url: string;
149
+ thumb_width: string;
150
+ thumb_height: string;
151
+ video_duration: string;
152
+ video_width: string;
153
+ video_height: string;
154
+ }
136
155
  export interface AudioMessagePayload {
137
156
  aesKey: string;
138
157
  length: string;
@@ -194,13 +213,46 @@ export interface RoomLeavPayload {
194
213
  roomId: string;
195
214
  leaveIds: string[];
196
215
  }
216
+ export interface Media {
217
+ fileId: string;
218
+ file_size: number;
219
+ fileType: number;
220
+ video_duration: number;
221
+ url: string;
222
+ video_width: number;
223
+ video_height: number;
224
+ file_url: string;
225
+ file_key: string;
226
+ thumb_url: string;
227
+ thumb_width: number;
228
+ thumb_height: number;
229
+ image_width: number;
230
+ image_height: number;
231
+ }
232
+ export interface MomentInfo {
233
+ content: string;
234
+ mentionIdList: string[];
235
+ visibledList: string[];
236
+ imageUrls: string[];
237
+ videoUrl: string;
238
+ urlLink: null | PUPPET.payloads.UrlLink;
239
+ channel: null | PUPPET.payloads.Channel;
240
+ miniInfo: null | PUPPET.payloads.MiniProgram;
241
+ location: null | PUPPET.payloads.Location;
242
+ rootId: string;
243
+ parentId: string;
244
+ }
197
245
  declare class Client extends EventEmitter {
198
246
  private readonly options;
199
247
  private connectionStatus;
200
248
  private readonly MAX_RECONNECT_ATTEMPTS;
201
249
  private readonly INITIAL_RECONNECT_DELAY;
202
250
  private readonly MAX_RECONNECT_DELAY;
251
+ private readonly HEARTBEAT_INTERVAL;
252
+ private readonly HEARTBEAT_TIMEOUT;
203
253
  private reconnectAttempts;
254
+ private heartbeatTimer?;
255
+ private heartbeatTimeoutTimer?;
204
256
  socket: any;
205
257
  server: any;
206
258
  tokenInfo: any;
@@ -221,6 +273,10 @@ declare class Client extends EventEmitter {
221
273
  initServer(): Promise<void>;
222
274
  createWebSocket(): Promise<void>;
223
275
  private setupWebSocketListeners;
276
+ private startHeartbeat;
277
+ private stopHeartbeat;
278
+ private setHeartbeatTimeout;
279
+ private resetHeartbeatTimeout;
224
280
  private handleWebSocketClose;
225
281
  private reconnect;
226
282
  eventParse(eventData: any): Promise<void>;
@@ -296,6 +352,13 @@ declare class Client extends EventEmitter {
296
352
  roomQuit(roomId: string): Promise<void>;
297
353
  sendContactCard(contactId: string, xml: string | any, selfId: string | undefined): Promise<MessagePayload | void>;
298
354
  sendAnnouncement(roomId: string, content: string): Promise<void>;
355
+ uploadSnsImage(url: string): Promise<SnsImageMessagePayload | void>;
356
+ uploadSnsVideo(url: string): Promise<SnsVideoMessagePayload | void>;
357
+ sendSnsMoment(wxid: string, momentInfo: MomentInfo): Promise<string | void>;
358
+ sendMoment(content: string): Promise<string | void>;
359
+ unSendMoment(objectId: string): Promise<string | void>;
360
+ sendMomentLike(objectId: string, status: PUPPET.types.Tap): Promise<string | void>;
361
+ sendMomentReply(objectId: string, content: string, commentId?: string): Promise<string | void>;
299
362
  }
300
363
  export default Client;
301
364
  //# sourceMappingURL=request.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../../../../src/matrix/service/request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../../../../src/matrix/service/request.ts"],"names":[],"mappings":"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"}
@@ -45,6 +45,10 @@ const PUPPET = __importStar(require("@juzi/wechaty-puppet"));
45
45
  const date_fns_1 = require("date-fns");
46
46
  const xml_to_json_js_1 = require("../utils/xml-to-json.js");
47
47
  const is_type_js_1 = require("../utils/is-type.js");
48
+ const image_size_1 = __importDefault(require("image-size"));
49
+ const fs_extra_1 = __importDefault(require("fs-extra"));
50
+ const os_1 = __importDefault(require("os"));
51
+ const path_1 = __importDefault(require("path"));
48
52
  const PRE = '[PuppetMatrix]';
49
53
  var NotifyTypeEnum;
50
54
  (function (NotifyTypeEnum) {
@@ -126,13 +130,210 @@ async function getAtWxidList(source) {
126
130
  }
127
131
  return [];
128
132
  }
133
+ async function getImageInfo(imageUrl) {
134
+ try {
135
+ const response = await (0, axios_1.default)({
136
+ method: 'get',
137
+ url: imageUrl,
138
+ responseType: 'arraybuffer',
139
+ });
140
+ const fileSize = response.data.length;
141
+ const tempFilePath = path_1.default.join(os_1.default.homedir(), path_1.default.sep, '.wechaty', 'puppet-matrix-cache', path_1.default.sep, 'temp_image_' + Date.now() + path_1.default.extname(imageUrl), path_1.default.sep);
142
+ const baseDirExist = await fs_extra_1.default.pathExists(tempFilePath);
143
+ if (!baseDirExist) {
144
+ await fs_extra_1.default.mkdirp(tempFilePath);
145
+ }
146
+ await fs_extra_1.default.writeFile(tempFilePath, response.data);
147
+ const dimensions = (0, image_size_1.default)(tempFilePath);
148
+ await fs_extra_1.default.unlink(tempFilePath);
149
+ return {
150
+ file_size: fileSize,
151
+ image_width: dimensions.width,
152
+ image_height: dimensions.height,
153
+ file_type: dimensions.type,
154
+ };
155
+ }
156
+ catch (error) {
157
+ console.error('获取图片信息错误:', error);
158
+ throw error;
159
+ }
160
+ }
161
+ const genTextSnsXml = (wxid, content) => {
162
+ const xmlTemplate = `
163
+ <TimelineObject>
164
+ <id><![CDATA[0]]></id>
165
+ <username><![CDATA[${wxid}]]></username>
166
+ <createTime><![CDATA[${Math.floor(Date.now() / 1000)}]]></createTime>
167
+ <contentDescShowType>0</contentDescShowType>
168
+ <contentDescScene>0</contentDescScene>
169
+ <private><![CDATA[0]]></private>
170
+ <contentDesc><![CDATA[${content}]]></contentDesc>
171
+ <contentattr><![CDATA[0]]></contentattr>
172
+ <sourceUserName></sourceUserName>
173
+ <sourceNickName></sourceNickName>
174
+ <statisticsData></statisticsData>
175
+ <weappInfo>
176
+ <appUserName></appUserName>
177
+ <pagePath></pagePath>
178
+ <version><![CDATA[0]]></version>
179
+ <isHidden>0</isHidden>
180
+ <debugMode><![CDATA[0]]></debugMode>
181
+ <shareActionId></shareActionId>
182
+ <isGame><![CDATA[0]]></isGame>
183
+ <messageExtraData></messageExtraData>
184
+ <subType><![CDATA[0]]></subType>
185
+ <preloadResources></preloadResources>
186
+ </weappInfo>
187
+ <canvasInfoXml></canvasInfoXml>
188
+ <ContentObject>
189
+ <contentStyle><![CDATA[2]]></contentStyle>
190
+ <contentSubStyle><![CDATA[0]]></contentSubStyle>
191
+ <title></title>
192
+ <description></description>
193
+ <contentUrl></contentUrl>
194
+ </ContentObject>
195
+ <actionInfo>
196
+ <appMsg>
197
+ <mediaTagName></mediaTagName>
198
+ <messageExt></messageExt>
199
+ <messageAction></messageAction>
200
+ </appMsg>
201
+ </actionInfo>
202
+ <appInfo><id></id></appInfo>
203
+ <publicUserName></publicUserName>
204
+ <streamvideo>
205
+ <streamvideourl></streamvideourl>
206
+ <streamvideothumburl></streamvideothumburl>
207
+ <streamvideoweburl></streamvideoweburl>
208
+ </streamvideo>
209
+ </TimelineObject>`.replace(/\s+/g, '');
210
+ return xmlTemplate;
211
+ };
212
+ const genVideoSnsXml = (wxid, content, media) => {
213
+ const xmlTemplate = `
214
+ <TimelineObject>
215
+ <id>0</id>
216
+ <username>${wxid}</username>
217
+ <createTime>${Math.floor(Date.now() / 1000)}</createTime>
218
+ <contentDesc>${content}</contentDesc>
219
+ <contentDescShowType>0</contentDescShowType>
220
+ <contentDescScene>0</contentDescScene>
221
+ <private>0</private>
222
+ <sightFolded>0</sightFolded>
223
+ <showFlag>0</showFlag>
224
+ <appInfo>
225
+ <id></id>
226
+ <version></version>
227
+ <appName></appName>
228
+ <installUrl></installUrl>
229
+ <fromUrl></fromUrl>
230
+ <isForceUpdate>0</isForceUpdate>
231
+ <isHidden>0</isHidden>
232
+ </appInfo>
233
+ <sourceUserName></sourceUserName>
234
+ <sourceNickName></sourceNickName>
235
+ <statisticsData></statisticsData>
236
+ <statExtStr></statExtStr>
237
+ <ContentObject>
238
+ <contentStyle>15</contentStyle>
239
+ <title></title>
240
+ <description>Sight</description>
241
+ <mediaList>
242
+ <media>
243
+ <id>0</id>
244
+ <type>6</type>
245
+ <title></title>
246
+ <description>测试</description>
247
+ <private>0</private>
248
+ <userData></userData>
249
+ <subType>0</subType>
250
+ <videoSize width="${media.video_width}" height="${media.video_height}"/>
251
+ <url type="1" md5="951a7d7864d685a92fd2624155794bf9" videomd5="577f55635faf44f595a69ded26d87bcc">${media.file_url}</url>
252
+ <thumb type="1">${media.thumb_url}</thumb>
253
+ <size width="${media.thumb_width}.000000" height="${media.thumb_height}.000000" totalSize="${media.file_size}"/>
254
+ <videoDuration>${media.video_duration}.000000</videoDuration>
255
+ </media>
256
+ </mediaList>
257
+ </ContentObject>
258
+ </TimelineObject>`;
259
+ return xmlTemplate;
260
+ };
261
+ const genImageSnsXml = (wxid, contentDesc, mediaList) => {
262
+ const mediaTemplate = (media) => `
263
+ <media>
264
+ <id><![CDATA[0]]></id>
265
+ <type><![CDATA[2]]></type>
266
+ <title></title>
267
+ <description></description>
268
+ <private><![CDATA[0]]></private>
269
+ <url type="1" md5="951a7d7864d685a92fd2624155794bf9"><![CDATA[${media.file_url}]]></url>
270
+ <thumb type="1"><![CDATA[${media.thumb_url}]]></thumb>
271
+ <videoDuration><![CDATA[0.0]]></videoDuration>
272
+ <size totalSize="${media.file_size}" width="${media.image_width}" height="${media.image_height}"></size>
273
+ </media>`;
274
+ const mediaString = mediaList.map(media => mediaTemplate(media)).join('');
275
+ const xmlTemplate = `
276
+ <TimelineObject>
277
+ <id><![CDATA[0]]></id>
278
+ <username><![CDATA[${wxid}]]></username>
279
+ <createTime><![CDATA[${Math.floor(Date.now() / 1000)}]]></createTime>
280
+ <contentDescShowType>0</contentDescShowType>
281
+ <contentDescScene>0</contentDescScene>
282
+ <private><![CDATA[0]]></private>
283
+ <contentDesc><![CDATA[${contentDesc}]]></contentDesc>
284
+ <contentattr><![CDATA[0]]></contentattr>
285
+ <sourceUserName></sourceUserName>
286
+ <sourceNickName></sourceNickName>
287
+ <statisticsData></statisticsData>
288
+ <weappInfo>
289
+ <appUserName></appUserName>
290
+ <pagePath></pagePath>
291
+ <version><![CDATA[0]]></version>
292
+ <isHidden>0</isHidden>
293
+ <debugMode><![CDATA[0]]></debugMode>
294
+ <shareActionId></shareActionId>
295
+ <isGame><![CDATA[0]]></isGame>
296
+ <messageExtraData></messageExtraData>
297
+ <subType><![CDATA[0]]></subType>
298
+ <preloadResources></preloadResources>
299
+ </weappInfo>
300
+ <canvasInfoXml></canvasInfoXml>
301
+ <ContentObject>
302
+ <contentStyle><![CDATA[1]]></contentStyle>
303
+ <contentSubStyle><![CDATA[0]]></contentSubStyle>
304
+ <title></title>
305
+ <description></description>
306
+ <contentUrl></contentUrl>
307
+ <mediaList>${mediaString}</mediaList>
308
+ </ContentObject>
309
+ <actionInfo>
310
+ <appMsg>
311
+ <mediaTagName></mediaTagName>
312
+ <messageExt></messageExt>
313
+ <messageAction></messageAction>
314
+ </appMsg>
315
+ </actionInfo>
316
+ <appInfo><id></id></appInfo>
317
+ <publicUserName></publicUserName>
318
+ <streamvideo>
319
+ <streamvideourl></streamvideourl>
320
+ <streamvideothumburl></streamvideothumburl>
321
+ <streamvideoweburl></streamvideoweburl>
322
+ </streamvideo>
323
+ </TimelineObject>`;
324
+ return xmlTemplate;
325
+ };
129
326
  class Client extends events_1.EventEmitter {
130
327
  options;
131
328
  connectionStatus = { status: 'disconnected' };
132
329
  MAX_RECONNECT_ATTEMPTS = 10;
133
330
  INITIAL_RECONNECT_DELAY = 1000;
134
331
  MAX_RECONNECT_DELAY = 30000;
332
+ HEARTBEAT_INTERVAL = 40 * 1000;
333
+ HEARTBEAT_TIMEOUT = 5000;
135
334
  reconnectAttempts = 0;
335
+ heartbeatTimer;
336
+ heartbeatTimeoutTimer;
136
337
  socket;
137
338
  server;
138
339
  tokenInfo;
@@ -190,7 +391,7 @@ class Client extends events_1.EventEmitter {
190
391
  ws.once('open', () => {
191
392
  this.connectionStatus.status = 'connected';
192
393
  this.reconnectAttempts = 0;
193
- wechaty_puppet_1.log.silly('WebSocket connection opened');
394
+ wechaty_puppet_1.log.info('WebSocket connection opened');
194
395
  resolve();
195
396
  });
196
397
  ws.once('error', (error) => {
@@ -202,12 +403,17 @@ class Client extends events_1.EventEmitter {
202
403
  reject(new Error(`WebSocket closed: ${code} - ${reason}`));
203
404
  });
204
405
  });
205
- this.setupWebSocketListeners(ws);
206
406
  this.socket = ws;
407
+ this.setupWebSocketListeners(ws);
207
408
  }
208
409
  setupWebSocketListeners(ws) {
209
410
  ws.on('message', (data) => {
411
+ this.resetHeartbeatTimeout();
210
412
  wechaty_puppet_1.log.silly(PRE, 'initWebSocket() ws.on(message): %s', data);
413
+ if (data.toString() === 'pong') {
414
+ wechaty_puppet_1.log.info('Received heartbeat');
415
+ return;
416
+ }
211
417
  try {
212
418
  const payload = JSON.parse(data);
213
419
  wechaty_puppet_1.log.info('Received payload', JSON.stringify(payload));
@@ -227,13 +433,59 @@ class Client extends events_1.EventEmitter {
227
433
  this.emit('error', error);
228
434
  });
229
435
  ws.on('close', (code, reason) => {
436
+ this.stopHeartbeat();
230
437
  void this.handleWebSocketClose(code, reason);
231
438
  });
439
+ this.startHeartbeat();
440
+ }
441
+ startHeartbeat() {
442
+ this.stopHeartbeat();
443
+ this.socket?.send('ping');
444
+ this.heartbeatTimer = setInterval(() => {
445
+ if (this.socket?.readyState === ws_1.default.OPEN) {
446
+ try {
447
+ this.socket.send('ping');
448
+ this.setHeartbeatTimeout();
449
+ }
450
+ catch (error) {
451
+ wechaty_puppet_1.log.error('Failed to send heartbeat:', error);
452
+ void this.handleWebSocketClose(1006, 'Heartbeat failed');
453
+ }
454
+ }
455
+ }, this.HEARTBEAT_INTERVAL);
456
+ }
457
+ stopHeartbeat() {
458
+ if (this.heartbeatTimer) {
459
+ clearInterval(this.heartbeatTimer);
460
+ this.heartbeatTimer = undefined;
461
+ }
462
+ if (this.heartbeatTimeoutTimer) {
463
+ clearTimeout(this.heartbeatTimeoutTimer);
464
+ this.heartbeatTimeoutTimer = undefined;
465
+ }
466
+ }
467
+ setHeartbeatTimeout() {
468
+ if (this.heartbeatTimeoutTimer) {
469
+ clearTimeout(this.heartbeatTimeoutTimer);
470
+ }
471
+ this.heartbeatTimeoutTimer = setTimeout(() => {
472
+ wechaty_puppet_1.log.warn('Heartbeat timeout, reconnecting...');
473
+ void this.handleWebSocketClose(1006, 'Heartbeat timeout');
474
+ }, this.HEARTBEAT_TIMEOUT);
475
+ }
476
+ resetHeartbeatTimeout() {
477
+ if (this.heartbeatTimeoutTimer) {
478
+ clearTimeout(this.heartbeatTimeoutTimer);
479
+ this.heartbeatTimeoutTimer = undefined;
480
+ }
232
481
  }
233
482
  async handleWebSocketClose(code, reason) {
234
483
  this.connectionStatus.status = 'disconnected';
235
484
  wechaty_puppet_1.log.warn(`WebSocket closed: Code ${code}, Reason ${reason}`);
236
- this.socket = null;
485
+ if (this.socket) {
486
+ this.socket.close();
487
+ this.socket = null;
488
+ }
237
489
  await this.reconnect();
238
490
  }
239
491
  async reconnect() {
@@ -1382,7 +1634,7 @@ class Client extends events_1.EventEmitter {
1382
1634
  announcement: content,
1383
1635
  },
1384
1636
  });
1385
- if (res.baseResponse.ret) {
1637
+ if (res?.baseResponse?.ret) {
1386
1638
  wechaty_puppet_1.log.error('sendAnnouncement error: %s', JSON.stringify(res.baseResponse));
1387
1639
  }
1388
1640
  }
@@ -1390,5 +1642,156 @@ class Client extends events_1.EventEmitter {
1390
1642
  wechaty_puppet_1.log.error(PRE, 'sendAnnouncement(%s, %s): %s', roomId, content, error);
1391
1643
  }
1392
1644
  }
1645
+ async uploadSnsImage(url) {
1646
+ try {
1647
+ const res = await this.postData({
1648
+ path: '/cloud/cdn_upload_sns_image',
1649
+ data: {
1650
+ url,
1651
+ },
1652
+ });
1653
+ if (res?.errcode !== 0) {
1654
+ wechaty_puppet_1.log.error('uploadSnsImage error: %s', JSON.stringify(res));
1655
+ return;
1656
+ }
1657
+ return res;
1658
+ }
1659
+ catch (error) {
1660
+ wechaty_puppet_1.log.error(PRE, 'uploadSnsImage(%s): %s', url, error);
1661
+ }
1662
+ }
1663
+ async uploadSnsVideo(url) {
1664
+ try {
1665
+ const res = await this.postData({
1666
+ path: '/cloud/cdn_upload_sns_video',
1667
+ data: {
1668
+ url,
1669
+ },
1670
+ });
1671
+ wechaty_puppet_1.log.info('uploadSnsVideo result:%s', res.data);
1672
+ if (res?.errcode !== 0) {
1673
+ wechaty_puppet_1.log.error('uploadSnsVideo error: %s', JSON.stringify(res));
1674
+ }
1675
+ return res;
1676
+ }
1677
+ catch (error) {
1678
+ wechaty_puppet_1.log.error(PRE, 'updateSnsImage(%s): %s', url, error);
1679
+ }
1680
+ }
1681
+ async sendSnsMoment(wxid, momentInfo) {
1682
+ try {
1683
+ wechaty_puppet_1.log.info('momentInfo: %s', JSON.stringify(momentInfo));
1684
+ let xmlContent = '';
1685
+ if (momentInfo.parentId && momentInfo.rootId) {
1686
+ return await this.sendMomentReply(momentInfo.rootId, momentInfo.content, momentInfo.parentId === momentInfo.rootId ? '' : momentInfo.parentId);
1687
+ }
1688
+ if (momentInfo.imageUrls.length) {
1689
+ const imageInfo = [];
1690
+ for (const image of momentInfo.imageUrls) {
1691
+ const res = await this.uploadSnsImage(image);
1692
+ if (res) {
1693
+ const imageBaseInfo = await getImageInfo(image);
1694
+ imageInfo.push({ ...res, ...imageBaseInfo });
1695
+ }
1696
+ xmlContent = genImageSnsXml(wxid, momentInfo.content, imageInfo);
1697
+ }
1698
+ }
1699
+ else if (momentInfo.videoUrl) {
1700
+ const mediaInfo = await this.uploadSnsVideo(momentInfo.videoUrl);
1701
+ if (mediaInfo) {
1702
+ const thumbInfo = await getImageInfo(mediaInfo.thumb_url);
1703
+ xmlContent = genVideoSnsXml(wxid, momentInfo.content, { ...mediaInfo, ...thumbInfo });
1704
+ }
1705
+ }
1706
+ else {
1707
+ xmlContent = genTextSnsXml(wxid, momentInfo.content);
1708
+ }
1709
+ return await this.sendMoment(xmlContent);
1710
+ }
1711
+ catch (error) {
1712
+ wechaty_puppet_1.log.error(PRE, 'sendSnsMoment(%s): %s', JSON.stringify(momentInfo), error);
1713
+ }
1714
+ }
1715
+ async sendMoment(content) {
1716
+ try {
1717
+ const res = await this.postData({
1718
+ path: '/sns/sns_post',
1719
+ data: {
1720
+ object_desc: content,
1721
+ with_user_list: [],
1722
+ block_user_list: [],
1723
+ group_user_list: [],
1724
+ group_contact_tag_id_list: [],
1725
+ black_contact_tag_id_list: [],
1726
+ },
1727
+ });
1728
+ if (res?.baseResponse?.ret !== 0) {
1729
+ wechaty_puppet_1.log.error('sendMoment error: %s', JSON.stringify(res));
1730
+ return;
1731
+ }
1732
+ wechaty_puppet_1.log.info(PRE, 'sendMomen success: %s', res?.snsObject?.id);
1733
+ return res?.snsObject?.id;
1734
+ }
1735
+ catch (error) {
1736
+ wechaty_puppet_1.log.error(PRE, 'sendMoment(%s): %s', content, error);
1737
+ }
1738
+ }
1739
+ async unSendMoment(objectId) {
1740
+ try {
1741
+ const res = await this.postData({
1742
+ path: '/sns/sns_delete',
1743
+ data: {
1744
+ object_id: objectId,
1745
+ },
1746
+ });
1747
+ if (res?.baseResponse?.ret !== 0) {
1748
+ wechaty_puppet_1.log.error('unSendMoment error: %s', JSON.stringify(res));
1749
+ return;
1750
+ }
1751
+ return objectId;
1752
+ }
1753
+ catch (error) {
1754
+ wechaty_puppet_1.log.error(PRE, 'unSendMoment(%s): %s', objectId, error);
1755
+ }
1756
+ }
1757
+ async sendMomentLike(objectId, status) {
1758
+ try {
1759
+ const res = await this.postData({
1760
+ path: '/sns/sns_like',
1761
+ data: {
1762
+ object_id: objectId,
1763
+ status,
1764
+ },
1765
+ });
1766
+ if (res?.baseResponse?.ret !== 0) {
1767
+ wechaty_puppet_1.log.error('sendMomentLike error: %s', JSON.stringify(res));
1768
+ return;
1769
+ }
1770
+ return res?.snsObject?.id;
1771
+ }
1772
+ catch (error) {
1773
+ wechaty_puppet_1.log.error(PRE, 'sendMomentLike(%s): %s', objectId, error);
1774
+ }
1775
+ }
1776
+ async sendMomentReply(objectId, content, commentId) {
1777
+ try {
1778
+ const res = await this.postData({
1779
+ path: '/sns/sns_comment',
1780
+ data: {
1781
+ object_id: objectId,
1782
+ content,
1783
+ reply_comment_id: commentId || '0',
1784
+ },
1785
+ });
1786
+ if (res?.baseResponse?.ret !== 0) {
1787
+ wechaty_puppet_1.log.error('sendMomentLike error: %s', JSON.stringify(res));
1788
+ return;
1789
+ }
1790
+ return res?.snsObject?.id;
1791
+ }
1792
+ catch (error) {
1793
+ wechaty_puppet_1.log.error(PRE, 'sendMomentLike(%s): %s', objectId, error);
1794
+ }
1795
+ }
1393
1796
  }
1394
1797
  exports.default = Client;
@@ -1,4 +1,7 @@
1
1
  export declare function delay(ms: number): Promise<void>;
2
2
  export declare function putFileTransfer(fileName: string, fileData: Buffer): Promise<string>;
3
3
  export declare function getFileName(path: string): string;
4
+ export declare function generateUniqueNumeric(digits?: number): number;
5
+ export declare function generateRandomString(length: number): string;
6
+ export declare function generateCustomRandomString(prefix: string, length: number): string;
4
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/matrix/utils/index.ts"],"names":[],"mappings":"AAOA,wBAAsB,KAAK,CAAE,EAAE,EAAC,MAAM,GAAE,OAAO,CAAC,IAAI,CAAC,CAEpD;AAKD,wBAAsB,eAAe,CAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAO1F;AAOD,wBAAgB,WAAW,CAAE,IAAI,EAAC,MAAM,GAAG,MAAM,CAKhD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/matrix/utils/index.ts"],"names":[],"mappings":"AAOA,wBAAsB,KAAK,CAAE,EAAE,EAAC,MAAM,GAAE,OAAO,CAAC,IAAI,CAAC,CAEpD;AAKD,wBAAsB,eAAe,CAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAO1F;AAOD,wBAAgB,WAAW,CAAE,IAAI,EAAC,MAAM,GAAG,MAAM,CAKhD;AAOD,wBAAgB,qBAAqB,CAAE,MAAM,SAAK,UAoBjD;AAOD,wBAAgB,oBAAoB,CAAE,MAAM,EAAE,MAAM,UAUnD;AAQD,wBAAgB,0BAA0B,CAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,UAUzE"}