@juzi/wechaty-puppet-service 1.0.113 → 1.0.115
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.
- package/dist/cjs/src/client/call-raw-payload-parser.spec.d.ts +3 -0
- package/dist/cjs/src/client/call-raw-payload-parser.spec.d.ts.map +1 -0
- package/dist/cjs/src/client/call-raw-payload-parser.spec.js +128 -0
- package/dist/cjs/src/client/call-raw-payload-parser.spec.js.map +1 -0
- package/dist/cjs/src/client/payload-store.js +2 -2
- package/dist/cjs/src/client/payload-store.js.map +1 -1
- package/dist/cjs/src/client/puppet-service.d.ts +21 -0
- package/dist/cjs/src/client/puppet-service.d.ts.map +1 -1
- package/dist/cjs/src/client/puppet-service.js +230 -1
- package/dist/cjs/src/client/puppet-service.js.map +1 -1
- package/dist/cjs/src/client/puppet-service.spec.js.map +1 -1
- package/dist/cjs/src/package-json.js +4 -4
- package/dist/cjs/src/package-json.js.map +1 -1
- package/dist/cjs/src/pure-functions/timestamp.d.ts +15 -1
- package/dist/cjs/src/pure-functions/timestamp.d.ts.map +1 -1
- package/dist/cjs/src/pure-functions/timestamp.js +10 -1
- package/dist/cjs/src/pure-functions/timestamp.js.map +1 -1
- package/dist/cjs/src/pure-functions/timestamp.spec.d.ts +3 -0
- package/dist/cjs/src/pure-functions/timestamp.spec.d.ts.map +1 -0
- package/dist/cjs/src/pure-functions/timestamp.spec.js +48 -0
- package/dist/cjs/src/pure-functions/timestamp.spec.js.map +1 -0
- package/dist/cjs/src/server/event-stream-manager.d.ts.map +1 -1
- package/dist/cjs/src/server/event-stream-manager.js +7 -0
- package/dist/cjs/src/server/event-stream-manager.js.map +1 -1
- package/dist/cjs/src/server/puppet-implementation.d.ts.map +1 -1
- package/dist/cjs/src/server/puppet-implementation.js +296 -2
- package/dist/cjs/src/server/puppet-implementation.js.map +1 -1
- package/dist/cjs/src/utils/call-media-mapping.d.ts +17 -0
- package/dist/cjs/src/utils/call-media-mapping.d.ts.map +1 -0
- package/dist/cjs/src/utils/call-media-mapping.js +60 -0
- package/dist/cjs/src/utils/call-media-mapping.js.map +1 -0
- package/dist/cjs/src/utils/call-media-mapping.spec.d.ts +3 -0
- package/dist/cjs/src/utils/call-media-mapping.spec.d.ts.map +1 -0
- package/dist/cjs/src/utils/call-media-mapping.spec.js +65 -0
- package/dist/cjs/src/utils/call-media-mapping.spec.js.map +1 -0
- package/dist/esm/src/client/call-raw-payload-parser.spec.d.ts +3 -0
- package/dist/esm/src/client/call-raw-payload-parser.spec.d.ts.map +1 -0
- package/dist/esm/src/client/call-raw-payload-parser.spec.js +103 -0
- package/dist/esm/src/client/call-raw-payload-parser.spec.js.map +1 -0
- package/dist/esm/src/client/payload-store.js +2 -2
- package/dist/esm/src/client/payload-store.js.map +1 -1
- package/dist/esm/src/client/puppet-service.d.ts +21 -0
- package/dist/esm/src/client/puppet-service.d.ts.map +1 -1
- package/dist/esm/src/client/puppet-service.js +232 -3
- package/dist/esm/src/client/puppet-service.js.map +1 -1
- package/dist/esm/src/client/puppet-service.spec.js +1 -1
- package/dist/esm/src/client/puppet-service.spec.js.map +1 -1
- package/dist/esm/src/package-json.js +4 -4
- package/dist/esm/src/package-json.js.map +1 -1
- package/dist/esm/src/pure-functions/timestamp.d.ts +15 -1
- package/dist/esm/src/pure-functions/timestamp.d.ts.map +1 -1
- package/dist/esm/src/pure-functions/timestamp.js +9 -1
- package/dist/esm/src/pure-functions/timestamp.js.map +1 -1
- package/dist/esm/src/pure-functions/timestamp.spec.d.ts +3 -0
- package/dist/esm/src/pure-functions/timestamp.spec.d.ts.map +1 -0
- package/dist/esm/src/pure-functions/timestamp.spec.js +46 -0
- package/dist/esm/src/pure-functions/timestamp.spec.js.map +1 -0
- package/dist/esm/src/server/event-stream-manager.d.ts.map +1 -1
- package/dist/esm/src/server/event-stream-manager.js +7 -0
- package/dist/esm/src/server/event-stream-manager.js.map +1 -1
- package/dist/esm/src/server/puppet-implementation.d.ts.map +1 -1
- package/dist/esm/src/server/puppet-implementation.js +296 -2
- package/dist/esm/src/server/puppet-implementation.js.map +1 -1
- package/dist/esm/src/utils/call-media-mapping.d.ts +17 -0
- package/dist/esm/src/utils/call-media-mapping.d.ts.map +1 -0
- package/dist/esm/src/utils/call-media-mapping.js +32 -0
- package/dist/esm/src/utils/call-media-mapping.js.map +1 -0
- package/dist/esm/src/utils/call-media-mapping.spec.d.ts +3 -0
- package/dist/esm/src/utils/call-media-mapping.spec.d.ts.map +1 -0
- package/dist/esm/src/utils/call-media-mapping.spec.js +40 -0
- package/dist/esm/src/utils/call-media-mapping.spec.js.map +1 -0
- package/package.json +4 -4
- package/src/client/call-raw-payload-parser.spec.ts +131 -0
- package/src/client/payload-store.ts +2 -2
- package/src/client/puppet-service.spec.ts +3 -1
- package/src/client/puppet-service.ts +438 -4
- package/src/package-json.ts +4 -4
- package/src/pure-functions/timestamp.spec.ts +56 -0
- package/src/pure-functions/timestamp.ts +19 -0
- package/src/server/event-stream-manager.ts +7 -0
- package/src/server/puppet-implementation.ts +384 -3
- package/src/utils/call-media-mapping.spec.ts +53 -0
- package/src/utils/call-media-mapping.ts +35 -0
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
#!/usr/bin/env -S node --no-warnings --loader ts-node/esm
|
|
2
|
+
import { test } from 'tstest';
|
|
3
|
+
import { millisecondsFromTimestamp, millisecondsFromTimestampObject, timestampFromMilliseconds, } from './timestamp.js';
|
|
4
|
+
/**
|
|
5
|
+
* 1. ms -> Timestamp -> ms round-trips for millisecond-aligned values.
|
|
6
|
+
*/
|
|
7
|
+
test('timestampFromMilliseconds <-> millisecondsFromTimestamp round-trip', async (t) => {
|
|
8
|
+
const cases = [
|
|
9
|
+
0,
|
|
10
|
+
1_000,
|
|
11
|
+
1_700_000_000_000,
|
|
12
|
+
1_700_000_000_123,
|
|
13
|
+
];
|
|
14
|
+
for (const ms of cases) {
|
|
15
|
+
const roundTripped = millisecondsFromTimestamp(timestampFromMilliseconds(ms));
|
|
16
|
+
t.equal(roundTripped, ms, `round-trip identity for ${ms}ms`);
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
/**
|
|
20
|
+
* 2. The plain-object variant agrees with the instance variant for the same
|
|
21
|
+
* Timestamp (this is the `toObject()` shape used by callRawPayloadParser).
|
|
22
|
+
*/
|
|
23
|
+
test('millisecondsFromTimestampObject matches millisecondsFromTimestamp', async (t) => {
|
|
24
|
+
const cases = [
|
|
25
|
+
0,
|
|
26
|
+
1_000,
|
|
27
|
+
1_700_000_000_123,
|
|
28
|
+
];
|
|
29
|
+
for (const ms of cases) {
|
|
30
|
+
const timestamp = timestampFromMilliseconds(ms);
|
|
31
|
+
const fromInstance = millisecondsFromTimestamp(timestamp);
|
|
32
|
+
const fromObject = millisecondsFromTimestampObject(timestamp.toObject());
|
|
33
|
+
t.equal(fromObject, fromInstance, `instance and object conversion agree for ${ms}ms`);
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
/**
|
|
37
|
+
* 3. Sub-millisecond nanos are rounded to the nearest millisecond.
|
|
38
|
+
*/
|
|
39
|
+
test('millisecondsFromTimestampObject rounds nanos to nearest millisecond', async (t) => {
|
|
40
|
+
t.equal(millisecondsFromTimestampObject({ seconds: 1, nanos: 0 }), 1000, 'no nanos');
|
|
41
|
+
t.equal(millisecondsFromTimestampObject({ seconds: 1, nanos: 499_999 }), 1000, '0.499ms rounds down');
|
|
42
|
+
t.equal(millisecondsFromTimestampObject({ seconds: 1, nanos: 500_000 }), 1001, '0.5ms rounds up');
|
|
43
|
+
t.equal(millisecondsFromTimestampObject({ seconds: 1, nanos: 999_999 }), 1001, '0.999ms rounds up');
|
|
44
|
+
t.equal(millisecondsFromTimestampObject({ seconds: 0, nanos: 123_000_000 }), 123, '123ms from nanos');
|
|
45
|
+
});
|
|
46
|
+
//# sourceMappingURL=timestamp.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timestamp.spec.js","sourceRoot":"","sources":["../../../../src/pure-functions/timestamp.spec.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAE7B,OAAO,EACL,yBAAyB,EACzB,+BAA+B,EAC/B,yBAAyB,GAC1B,MAAkC,gBAAgB,CAAA;AAEnD;;GAEG;AACH,IAAI,CAAC,oEAAoE,EAAE,KAAK,EAAC,CAAC,EAAC,EAAE;IACnF,MAAM,KAAK,GAAG;QACZ,CAAC;QACD,KAAK;QACL,iBAAiB;QACjB,iBAAiB;KAClB,CAAA;IAED,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE;QACtB,MAAM,YAAY,GAAG,yBAAyB,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC,CAAA;QAC7E,CAAC,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,EAAE,2BAA2B,EAAE,IAAI,CAAC,CAAA;KAC7D;AACH,CAAC,CAAC,CAAA;AAEF;;;GAGG;AACH,IAAI,CAAC,mEAAmE,EAAE,KAAK,EAAC,CAAC,EAAC,EAAE;IAClF,MAAM,KAAK,GAAG;QACZ,CAAC;QACD,KAAK;QACL,iBAAiB;KAClB,CAAA;IAED,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE;QACtB,MAAM,SAAS,GAAG,yBAAyB,CAAC,EAAE,CAAC,CAAA;QAC/C,MAAM,YAAY,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAA;QACzD,MAAM,UAAU,GAAK,+BAA+B,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAA;QAC1E,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE,YAAY,EAAE,4CAA4C,EAAE,IAAI,CAAC,CAAA;KACtF;AACH,CAAC,CAAC,CAAA;AAEF;;GAEG;AACH,IAAI,CAAC,qEAAqE,EAAE,KAAK,EAAC,CAAC,EAAC,EAAE;IACpF,CAAC,CAAC,KAAK,CAAC,+BAA+B,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAU,IAAI,EAAE,UAAU,CAAC,CAAA;IAC5F,CAAC,CAAC,KAAK,CAAC,+BAA+B,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAI,IAAI,EAAE,qBAAqB,CAAC,CAAA;IACvG,CAAC,CAAC,KAAK,CAAC,+BAA+B,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAI,IAAI,EAAE,iBAAiB,CAAC,CAAA;IACnG,CAAC,CAAC,KAAK,CAAC,+BAA+B,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAI,IAAI,EAAE,mBAAmB,CAAC,CAAA;IACrG,CAAC,CAAC,KAAK,CAAC,+BAA+B,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAA;AACvG,CAAC,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-stream-manager.d.ts","sourceRoot":"","sources":["../../../../src/server/event-stream-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EACL,MAAM,IAAI,UAAU,EACpB,IAAI,EACL,MAAwC,oBAAoB,CAAA;AAE7D,OAAO,KAAK,MAAM,MAAM,sBAAsB,CAAA;AAO9C,cAAM,kBAAkB;IAQb,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,eAAe;IAN7C,SAAS,CAAC,WAAW,EAAE,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,aAAa,CAAC,CAAA;IAE/G,OAAO,CAAC,eAAe,CAAQ;IAC/B,OAAO,CAAC,eAAe,CAAqB;gBAGnC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,eAAe;IAKtC,IAAI,IAAK,OAAO;IAIhB,KAAK,CACV,MAAM,EAAE,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,aAAa,CAAC,GACnF,IAAI;IA8DA,IAAI,IAAK,IAAI;IAYb,QAAQ,CACb,IAAI,EAAG,UAAU,CAAC,YAAY,CAAC,MAAM,UAAU,CAAC,YAAY,CAAC,EAAG,+CAA+C;IAC/G,GAAG,EAAI,MAAM,GACZ,IAAI;IA+BA,iCAAiC;
|
|
1
|
+
{"version":3,"file":"event-stream-manager.d.ts","sourceRoot":"","sources":["../../../../src/server/event-stream-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EACL,MAAM,IAAI,UAAU,EACpB,IAAI,EACL,MAAwC,oBAAoB,CAAA;AAE7D,OAAO,KAAK,MAAM,MAAM,sBAAsB,CAAA;AAO9C,cAAM,kBAAkB;IAQb,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,eAAe;IAN7C,SAAS,CAAC,WAAW,EAAE,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,aAAa,CAAC,CAAA;IAE/G,OAAO,CAAC,eAAe,CAAQ;IAC/B,OAAO,CAAC,eAAe,CAAqB;gBAGnC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,eAAe;IAKtC,IAAI,IAAK,OAAO;IAIhB,KAAK,CACV,MAAM,EAAE,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,aAAa,CAAC,GACnF,IAAI;IA8DA,IAAI,IAAK,IAAI;IAYb,QAAQ,CACb,IAAI,EAAG,UAAU,CAAC,YAAY,CAAC,MAAM,UAAU,CAAC,YAAY,CAAC,EAAG,+CAA+C;IAC/G,GAAG,EAAI,MAAM,GACZ,IAAI;IA+BA,iCAAiC;IA0LxC;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAqF1B,qBAAqB;CAOtB;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAA"}
|
|
@@ -268,6 +268,13 @@ class EventStreamManager {
|
|
|
268
268
|
this.offCallbackList.push(off);
|
|
269
269
|
break;
|
|
270
270
|
}
|
|
271
|
+
case 'call': {
|
|
272
|
+
const listener = (payload) => this.grpcEmit(grpcPuppet.EventType.EVENT_TYPE_CALL, payload);
|
|
273
|
+
this.puppet.on('call', listener);
|
|
274
|
+
const off = () => this.puppet.off('call', listener);
|
|
275
|
+
this.offCallbackList.push(off);
|
|
276
|
+
break;
|
|
277
|
+
}
|
|
271
278
|
case 'reset':
|
|
272
279
|
// the `reset` event should be dealed internally, should not send out
|
|
273
280
|
break;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-stream-manager.js","sourceRoot":"","sources":["../../../../src/server/event-stream-manager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"event-stream-manager.js","sourceRoot":"","sources":["../../../../src/server/event-stream-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"puppet-implementation.d.ts","sourceRoot":"","sources":["../../../../src/server/puppet-implementation.ts"],"names":[],"mappings":"AAsBA,OAAO,EAKL,MAAM,IAAI,UAAU,EACrB,MAAgC,oBAAoB,CAAA;AACrD,OAAO,KAAK,EAEV,OAAO,EACR,MAAgC,UAAU,CAAA;AAC3C,OAAO,KAAK,MAAM,MAAe,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"puppet-implementation.d.ts","sourceRoot":"","sources":["../../../../src/server/puppet-implementation.ts"],"names":[],"mappings":"AAsBA,OAAO,EAKL,MAAM,IAAI,UAAU,EACrB,MAAgC,oBAAoB,CAAA;AACrD,OAAO,KAAK,EAEV,OAAO,EACR,MAAgC,UAAU,CAAA;AAC3C,OAAO,KAAK,MAAM,MAAe,sBAAsB,CAAA;AA8CvD,iBAAS,oBAAoB,CAC3B,MAAM,EAAQ,MAAM,CAAC,KAAK,CAAC,eAAe,EAC1C,WAAW,EAAG,OAAO,OAAO,GAC3B,UAAU,CAAC,aAAa,CAggG1B;AAED,OAAO,EAAE,oBAAoB,EAAE,CAAA"}
|
|
@@ -7,7 +7,21 @@ import { log } from '../config.js';
|
|
|
7
7
|
import { grpcError } from './grpc-error.js';
|
|
8
8
|
import { EventStreamManager } from './event-stream-manager.js';
|
|
9
9
|
import { OptionalBooleanUnwrapper, OptionalBooleanWrapper, callRecordPayloadToPb, channelPayloadToPb, chatHistoryPayloadToPb, postPbToPayload, urlLinkPayloadToPb, channelCardPayloadToPb } from '../utils/pb-payload-helper.js';
|
|
10
|
+
import { grpcCallTypeToPuppetMedia, puppetCallMediaTypeToGrpc } from '../utils/call-media-mapping.js';
|
|
10
11
|
import { TextContentType } from '@juzi/wechaty-puppet/types';
|
|
12
|
+
const setGrpcBatchResults = (response, ResultClass, payload) => {
|
|
13
|
+
response.setResultsList(payload.results.map(result => {
|
|
14
|
+
const pbResult = new ResultClass();
|
|
15
|
+
pbResult.setConversationId(result.conversationId);
|
|
16
|
+
if (result.id) {
|
|
17
|
+
pbResult.setId(result.id);
|
|
18
|
+
}
|
|
19
|
+
if (result.error) {
|
|
20
|
+
pbResult.setError(result.error);
|
|
21
|
+
}
|
|
22
|
+
return pbResult;
|
|
23
|
+
}));
|
|
24
|
+
};
|
|
11
25
|
function puppetImplementation(puppet, FileBoxUuid) {
|
|
12
26
|
/**
|
|
13
27
|
* Save scan payload to send it to the puppet-service right after connected (if needed)
|
|
@@ -1001,6 +1015,135 @@ function puppetImplementation(puppet, FileBoxUuid) {
|
|
|
1001
1015
|
return grpcError('messageSendText', e, callback);
|
|
1002
1016
|
}
|
|
1003
1017
|
},
|
|
1018
|
+
messageBatchSendText: async (call, callback) => {
|
|
1019
|
+
log.verbose('PuppetServiceImpl', 'messageBatchSendText()');
|
|
1020
|
+
try {
|
|
1021
|
+
const results = await puppet.messageBatchSendText(call.request.getConversationIdsList(), call.request.getText(), call.request.getBatchTaskId());
|
|
1022
|
+
const response = new grpcPuppet.MessageBatchSendTextResponse();
|
|
1023
|
+
setGrpcBatchResults(response, grpcPuppet.MessageBatchSendTextResponse.Result, results);
|
|
1024
|
+
return callback(null, response);
|
|
1025
|
+
}
|
|
1026
|
+
catch (e) {
|
|
1027
|
+
return grpcError('messageBatchSendText', e, callback);
|
|
1028
|
+
}
|
|
1029
|
+
},
|
|
1030
|
+
messageBatchSendFile: async (call, callback) => {
|
|
1031
|
+
log.verbose('PuppetServiceImpl', 'messageBatchSendFile()');
|
|
1032
|
+
try {
|
|
1033
|
+
const results = await puppet.messageBatchSendFile(call.request.getConversationIdsList(), FileBoxUuid.fromJSON(call.request.getFileBox()), call.request.getBatchTaskId());
|
|
1034
|
+
const response = new grpcPuppet.MessageBatchSendFileResponse();
|
|
1035
|
+
setGrpcBatchResults(response, grpcPuppet.MessageBatchSendFileResponse.Result, results);
|
|
1036
|
+
return callback(null, response);
|
|
1037
|
+
}
|
|
1038
|
+
catch (e) {
|
|
1039
|
+
return grpcError('messageBatchSendFile', e, callback);
|
|
1040
|
+
}
|
|
1041
|
+
},
|
|
1042
|
+
messageBatchForward: async (call, callback) => {
|
|
1043
|
+
log.verbose('PuppetServiceImpl', 'messageBatchForward()');
|
|
1044
|
+
try {
|
|
1045
|
+
const messageIds = call.request.getMessageIdsList();
|
|
1046
|
+
const results = await puppet.messageBatchForward(call.request.getConversationIdsList(), messageIds.length > 0 ? messageIds : call.request.getMessageId(), call.request.getBatchTaskId());
|
|
1047
|
+
const response = new grpcPuppet.MessageBatchForwardResponse();
|
|
1048
|
+
setGrpcBatchResults(response, grpcPuppet.MessageBatchForwardResponse.Result, results);
|
|
1049
|
+
return callback(null, response);
|
|
1050
|
+
}
|
|
1051
|
+
catch (e) {
|
|
1052
|
+
return grpcError('messageBatchForward', e, callback);
|
|
1053
|
+
}
|
|
1054
|
+
},
|
|
1055
|
+
messageBatchSendContact: async (call, callback) => {
|
|
1056
|
+
log.verbose('PuppetServiceImpl', 'messageBatchSendContact()');
|
|
1057
|
+
try {
|
|
1058
|
+
const results = await puppet.messageBatchSendContact(call.request.getConversationIdsList(), call.request.getContactId(), call.request.getBatchTaskId());
|
|
1059
|
+
const response = new grpcPuppet.MessageBatchSendContactResponse();
|
|
1060
|
+
setGrpcBatchResults(response, grpcPuppet.MessageBatchSendContactResponse.Result, results);
|
|
1061
|
+
return callback(null, response);
|
|
1062
|
+
}
|
|
1063
|
+
catch (e) {
|
|
1064
|
+
return grpcError('messageBatchSendContact', e, callback);
|
|
1065
|
+
}
|
|
1066
|
+
},
|
|
1067
|
+
messageBatchSendUrl: async (call, callback) => {
|
|
1068
|
+
log.verbose('PuppetServiceImpl', 'messageBatchSendUrl()');
|
|
1069
|
+
try {
|
|
1070
|
+
const payload = call.request.getUrlLink()?.toObject();
|
|
1071
|
+
if (!payload) {
|
|
1072
|
+
throw new Error('no url link payload found');
|
|
1073
|
+
}
|
|
1074
|
+
const results = await puppet.messageBatchSendUrl(call.request.getConversationIdsList(), payload, call.request.getBatchTaskId());
|
|
1075
|
+
const response = new grpcPuppet.MessageBatchSendUrlResponse();
|
|
1076
|
+
setGrpcBatchResults(response, grpcPuppet.MessageBatchSendUrlResponse.Result, results);
|
|
1077
|
+
return callback(null, response);
|
|
1078
|
+
}
|
|
1079
|
+
catch (e) {
|
|
1080
|
+
return grpcError('messageBatchSendUrl', e, callback);
|
|
1081
|
+
}
|
|
1082
|
+
},
|
|
1083
|
+
messageBatchSendMiniProgram: async (call, callback) => {
|
|
1084
|
+
log.verbose('PuppetServiceImpl', 'messageBatchSendMiniProgram()');
|
|
1085
|
+
try {
|
|
1086
|
+
const payload = call.request.getMiniProgram()?.toObject();
|
|
1087
|
+
if (!payload) {
|
|
1088
|
+
throw new Error('no mini program payload found');
|
|
1089
|
+
}
|
|
1090
|
+
const results = await puppet.messageBatchSendMiniProgram(call.request.getConversationIdsList(), payload, call.request.getBatchTaskId());
|
|
1091
|
+
const response = new grpcPuppet.MessageBatchSendMiniProgramResponse();
|
|
1092
|
+
setGrpcBatchResults(response, grpcPuppet.MessageBatchSendMiniProgramResponse.Result, results);
|
|
1093
|
+
return callback(null, response);
|
|
1094
|
+
}
|
|
1095
|
+
catch (e) {
|
|
1096
|
+
return grpcError('messageBatchSendMiniProgram', e, callback);
|
|
1097
|
+
}
|
|
1098
|
+
},
|
|
1099
|
+
messageBatchSendLocation: async (call, callback) => {
|
|
1100
|
+
log.verbose('PuppetServiceImpl', 'messageBatchSendLocation()');
|
|
1101
|
+
try {
|
|
1102
|
+
const payload = call.request.getLocation()?.toObject();
|
|
1103
|
+
if (!payload) {
|
|
1104
|
+
throw new Error('no location payload found');
|
|
1105
|
+
}
|
|
1106
|
+
const results = await puppet.messageBatchSendLocation(call.request.getConversationIdsList(), payload, call.request.getBatchTaskId());
|
|
1107
|
+
const response = new grpcPuppet.MessageBatchSendLocationResponse();
|
|
1108
|
+
setGrpcBatchResults(response, grpcPuppet.MessageBatchSendLocationResponse.Result, results);
|
|
1109
|
+
return callback(null, response);
|
|
1110
|
+
}
|
|
1111
|
+
catch (e) {
|
|
1112
|
+
return grpcError('messageBatchSendLocation', e, callback);
|
|
1113
|
+
}
|
|
1114
|
+
},
|
|
1115
|
+
messageBatchSendChannel: async (call, callback) => {
|
|
1116
|
+
log.verbose('PuppetServiceImpl', 'messageBatchSendChannel()');
|
|
1117
|
+
try {
|
|
1118
|
+
const payload = call.request.getChannel()?.toObject();
|
|
1119
|
+
if (!payload) {
|
|
1120
|
+
throw new Error('no channel payload found');
|
|
1121
|
+
}
|
|
1122
|
+
const results = await puppet.messageBatchSendChannel(call.request.getConversationIdsList(), payload, call.request.getBatchTaskId());
|
|
1123
|
+
const response = new grpcPuppet.MessageBatchSendChannelResponse();
|
|
1124
|
+
setGrpcBatchResults(response, grpcPuppet.MessageBatchSendChannelResponse.Result, results);
|
|
1125
|
+
return callback(null, response);
|
|
1126
|
+
}
|
|
1127
|
+
catch (e) {
|
|
1128
|
+
return grpcError('messageBatchSendChannel', e, callback);
|
|
1129
|
+
}
|
|
1130
|
+
},
|
|
1131
|
+
messageBatchSendChannelCard: async (call, callback) => {
|
|
1132
|
+
log.verbose('PuppetServiceImpl', 'messageBatchSendChannelCard()');
|
|
1133
|
+
try {
|
|
1134
|
+
const payload = call.request.getChannelCard()?.toObject();
|
|
1135
|
+
if (!payload) {
|
|
1136
|
+
throw new Error('no channel card payload found');
|
|
1137
|
+
}
|
|
1138
|
+
const results = await puppet.messageBatchSendChannelCard(call.request.getConversationIdsList(), payload, call.request.getBatchTaskId());
|
|
1139
|
+
const response = new grpcPuppet.MessageBatchSendChannelCardResponse();
|
|
1140
|
+
setGrpcBatchResults(response, grpcPuppet.MessageBatchSendChannelCardResponse.Result, results);
|
|
1141
|
+
return callback(null, response);
|
|
1142
|
+
}
|
|
1143
|
+
catch (e) {
|
|
1144
|
+
return grpcError('messageBatchSendChannelCard', e, callback);
|
|
1145
|
+
}
|
|
1146
|
+
},
|
|
1004
1147
|
messageSendUrl: async (call, callback) => {
|
|
1005
1148
|
log.verbose('PuppetServiceImpl', 'messageSendUrl()');
|
|
1006
1149
|
try {
|
|
@@ -1197,8 +1340,12 @@ function puppetImplementation(puppet, FileBoxUuid) {
|
|
|
1197
1340
|
const contactIds = call.request.getContactIdsList();
|
|
1198
1341
|
const inviteOnly = call.request.getInviteOnly();
|
|
1199
1342
|
const quoteIds = call.request.getQuoteIdsList();
|
|
1200
|
-
|
|
1201
|
-
|
|
1343
|
+
if (contactIds.length > 1) {
|
|
1344
|
+
await puppet.roomAddV2(roomId, contactIds, inviteOnly, quoteIds);
|
|
1345
|
+
}
|
|
1346
|
+
else {
|
|
1347
|
+
await puppet.roomAdd(roomId, contactId || contactIds[0] || '', inviteOnly, quoteIds);
|
|
1348
|
+
}
|
|
1202
1349
|
return callback(null, new grpcPuppet.RoomAddResponse());
|
|
1203
1350
|
}
|
|
1204
1351
|
catch (e) {
|
|
@@ -2212,6 +2359,153 @@ function puppetImplementation(puppet, FileBoxUuid) {
|
|
|
2212
2359
|
call.destroy(e);
|
|
2213
2360
|
}
|
|
2214
2361
|
},
|
|
2362
|
+
callInvite: async (call, callback) => {
|
|
2363
|
+
log.verbose('PuppetServiceImpl', 'callInvite()');
|
|
2364
|
+
try {
|
|
2365
|
+
const contactIds = call.request.getContactIdsList();
|
|
2366
|
+
if (contactIds.length === 0) {
|
|
2367
|
+
throw new Error('callInvite: contact_ids is required');
|
|
2368
|
+
}
|
|
2369
|
+
const media = grpcCallTypeToPuppetMedia(call.request.getMedia());
|
|
2370
|
+
if (media === undefined) {
|
|
2371
|
+
throw new Error('callInvite: media is required (got CALL_TYPE_UNKNOWN on the wire)');
|
|
2372
|
+
}
|
|
2373
|
+
const callId = await puppet.callInvite(contactIds, media);
|
|
2374
|
+
if (!callId) {
|
|
2375
|
+
throw new Error('callInvite: puppet returned empty callId');
|
|
2376
|
+
}
|
|
2377
|
+
const response = new grpcPuppet.CallInviteResponse();
|
|
2378
|
+
response.setCallId(callId);
|
|
2379
|
+
return callback(null, response);
|
|
2380
|
+
}
|
|
2381
|
+
catch (e) {
|
|
2382
|
+
return grpcError('callInvite', e, callback);
|
|
2383
|
+
}
|
|
2384
|
+
},
|
|
2385
|
+
callAdd: async (call, callback) => {
|
|
2386
|
+
log.verbose('PuppetServiceImpl', 'callAdd()');
|
|
2387
|
+
try {
|
|
2388
|
+
const callId = call.request.getCallId();
|
|
2389
|
+
if (!callId) {
|
|
2390
|
+
throw new Error('callAdd: call_id is required');
|
|
2391
|
+
}
|
|
2392
|
+
const contactIds = call.request.getContactIdsList();
|
|
2393
|
+
if (contactIds.length === 0) {
|
|
2394
|
+
throw new Error('callAdd: contact_ids is required');
|
|
2395
|
+
}
|
|
2396
|
+
await puppet.callAdd(callId, contactIds);
|
|
2397
|
+
return callback(null, new grpcPuppet.CallAddResponse());
|
|
2398
|
+
}
|
|
2399
|
+
catch (e) {
|
|
2400
|
+
return grpcError('callAdd', e, callback);
|
|
2401
|
+
}
|
|
2402
|
+
},
|
|
2403
|
+
callAccept: async (call, callback) => {
|
|
2404
|
+
log.verbose('PuppetServiceImpl', 'callAccept()');
|
|
2405
|
+
try {
|
|
2406
|
+
const callId = call.request.getCallId();
|
|
2407
|
+
if (!callId) {
|
|
2408
|
+
throw new Error('callAccept: call_id is required');
|
|
2409
|
+
}
|
|
2410
|
+
await puppet.callAccept(callId);
|
|
2411
|
+
return callback(null, new grpcPuppet.CallAcceptResponse());
|
|
2412
|
+
}
|
|
2413
|
+
catch (e) {
|
|
2414
|
+
return grpcError('callAccept', e, callback);
|
|
2415
|
+
}
|
|
2416
|
+
},
|
|
2417
|
+
callReject: async (call, callback) => {
|
|
2418
|
+
log.verbose('PuppetServiceImpl', 'callReject()');
|
|
2419
|
+
try {
|
|
2420
|
+
const callId = call.request.getCallId();
|
|
2421
|
+
if (!callId) {
|
|
2422
|
+
throw new Error('callReject: call_id is required');
|
|
2423
|
+
}
|
|
2424
|
+
const reason = call.request.getReason() || undefined;
|
|
2425
|
+
await puppet.callReject(callId, reason);
|
|
2426
|
+
return callback(null, new grpcPuppet.CallRejectResponse());
|
|
2427
|
+
}
|
|
2428
|
+
catch (e) {
|
|
2429
|
+
return grpcError('callReject', e, callback);
|
|
2430
|
+
}
|
|
2431
|
+
},
|
|
2432
|
+
callCancel: async (call, callback) => {
|
|
2433
|
+
log.verbose('PuppetServiceImpl', 'callCancel()');
|
|
2434
|
+
try {
|
|
2435
|
+
const callId = call.request.getCallId();
|
|
2436
|
+
if (!callId) {
|
|
2437
|
+
throw new Error('callCancel: call_id is required');
|
|
2438
|
+
}
|
|
2439
|
+
await puppet.callCancel(callId);
|
|
2440
|
+
return callback(null, new grpcPuppet.CallCancelResponse());
|
|
2441
|
+
}
|
|
2442
|
+
catch (e) {
|
|
2443
|
+
return grpcError('callCancel', e, callback);
|
|
2444
|
+
}
|
|
2445
|
+
},
|
|
2446
|
+
callHangup: async (call, callback) => {
|
|
2447
|
+
log.verbose('PuppetServiceImpl', 'callHangup()');
|
|
2448
|
+
try {
|
|
2449
|
+
const callId = call.request.getCallId();
|
|
2450
|
+
if (!callId) {
|
|
2451
|
+
throw new Error('callHangup: call_id is required');
|
|
2452
|
+
}
|
|
2453
|
+
const reason = call.request.getReason() || undefined;
|
|
2454
|
+
await puppet.callHangup(callId, reason);
|
|
2455
|
+
return callback(null, new grpcPuppet.CallHangupResponse());
|
|
2456
|
+
}
|
|
2457
|
+
catch (e) {
|
|
2458
|
+
return grpcError('callHangup', e, callback);
|
|
2459
|
+
}
|
|
2460
|
+
},
|
|
2461
|
+
callMediaEndpoint: async (call, callback) => {
|
|
2462
|
+
log.verbose('PuppetServiceImpl', 'callMediaEndpoint()');
|
|
2463
|
+
try {
|
|
2464
|
+
const callId = call.request.getCallId();
|
|
2465
|
+
if (!callId) {
|
|
2466
|
+
throw new Error('callMediaEndpoint: call_id is required');
|
|
2467
|
+
}
|
|
2468
|
+
const payload = await puppet.callMediaEndpoint(callId);
|
|
2469
|
+
const response = new grpcPuppet.CallMediaEndpointResponse();
|
|
2470
|
+
response.setUrl(payload.url);
|
|
2471
|
+
response.setToken(payload.token);
|
|
2472
|
+
if (payload.expiresAt !== undefined) {
|
|
2473
|
+
response.setExpiresAt(timestampFromMilliseconds(payload.expiresAt));
|
|
2474
|
+
}
|
|
2475
|
+
if (payload.protocol) {
|
|
2476
|
+
response.setProtocol(payload.protocol);
|
|
2477
|
+
}
|
|
2478
|
+
return callback(null, response);
|
|
2479
|
+
}
|
|
2480
|
+
catch (e) {
|
|
2481
|
+
return grpcError('callMediaEndpoint', e, callback);
|
|
2482
|
+
}
|
|
2483
|
+
},
|
|
2484
|
+
callPayload: async (call, callback) => {
|
|
2485
|
+
log.verbose('PuppetServiceImpl', 'callPayload()');
|
|
2486
|
+
try {
|
|
2487
|
+
const callId = call.request.getId();
|
|
2488
|
+
if (!callId) {
|
|
2489
|
+
throw new Error('callPayload: id is required');
|
|
2490
|
+
}
|
|
2491
|
+
const payload = await puppet.callPayload(callId);
|
|
2492
|
+
const response = new grpcPuppet.CallPayloadResponse();
|
|
2493
|
+
response.setId(payload.id);
|
|
2494
|
+
if (payload.starter) {
|
|
2495
|
+
response.setStarter(payload.starter);
|
|
2496
|
+
}
|
|
2497
|
+
response.setParticipantsList(payload.participants);
|
|
2498
|
+
response.setMedia(puppetCallMediaTypeToGrpc(payload.media));
|
|
2499
|
+
response.setStartTime(timestampFromMilliseconds(payload.startTime));
|
|
2500
|
+
if (payload.endTime !== undefined) {
|
|
2501
|
+
response.setEndTime(timestampFromMilliseconds(payload.endTime));
|
|
2502
|
+
}
|
|
2503
|
+
return callback(null, response);
|
|
2504
|
+
}
|
|
2505
|
+
catch (e) {
|
|
2506
|
+
return grpcError('callPayload', e, callback);
|
|
2507
|
+
}
|
|
2508
|
+
},
|
|
2215
2509
|
upload: async (call, callback) => {
|
|
2216
2510
|
log.verbose('PuppetServiceImpl', 'upload()');
|
|
2217
2511
|
const fileBox = FileBoxUuid.fromStream(call.pipe(chunkDecoder()), 'uuid.dat');
|