meta-horizonn 1.1.3 → 1.1.5

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.
@@ -252,7 +252,7 @@ module.exports = function(defaultFuncs, api, ctx) {
252
252
  }
253
253
  }
254
254
  }
255
-
255
+
256
256
  function handleUrl(msg, form, callback, cb) {
257
257
  if (msg.url) {
258
258
  form["shareable_attachment[share_type]"] = "100";
@@ -301,6 +301,11 @@ module.exports = function(defaultFuncs, api, ctx) {
301
301
  form["audio_ids"] = [];
302
302
 
303
303
  if (utils.getType(msg.attachment) !== "Array") msg.attachment = [msg.attachment];
304
+ if (msg.attachment.every(e => /_id$/.test(e[0]))) {
305
+ //console.log(msg.attachment)
306
+ msg.attachment.map(e => form[`${e[0]}s`].push(e[1]));
307
+ return cb();
308
+ }
304
309
 
305
310
  if (global.Fca.Require.FastConfig.AntiSendAppState) {
306
311
  try {
@@ -341,6 +346,33 @@ module.exports = function(defaultFuncs, api, ctx) {
341
346
  else cb();
342
347
  }
343
348
 
349
+ // function handleAttachment(msg, form, callback, cb) {
350
+ // if (msg.attachment) {
351
+ // form["image_ids"] = [];
352
+ // form["gif_ids"] = [];
353
+ // form["file_ids"] = [];
354
+ // form["video_ids"] = [];
355
+ // form["audio_ids"] = [];
356
+
357
+ // if (utils.getType(msg.attachment) !== "Array") msg.attachment = [msg.attachment];
358
+ // if (msg.attachment.every(e=>/_id$/.test(e[0]))) {
359
+ // //console.log(msg.attachment)
360
+ // msg.attachment.map(e=>form[`${e[0]}s`].push(e[1]));
361
+ // return cb();
362
+ // }
363
+ // uploadAttachment(msg.attachment, function (err, files) {
364
+ // if (err) return callback(err);
365
+ // files.forEach(function (file) {
366
+ // var key = Object.keys(file);
367
+ // var type = key[0]; // image_id, file_id, etc
368
+ // form["" + type + "s"].push(file[type]); // push the id
369
+ // });
370
+ // cb();
371
+ // });
372
+ // }
373
+ // else cb();
374
+ // }
375
+
344
376
  function handleMention(msg, form, callback, cb) {
345
377
  if (msg.mentions) {
346
378
  for (let i = 0; i < msg.mentions.length; i++) {
@@ -436,7 +468,7 @@ module.exports = function(defaultFuncs, api, ctx) {
436
468
  signatureID: utils.getSignatureID(),
437
469
  replied_to_message_id: replyToMessage
438
470
  };
439
-
471
+
440
472
  handleLocation(msg, form, callback, () =>
441
473
  handleSticker(msg, form, callback, () =>
442
474
  handleAttachment(msg, form, callback, () =>
@@ -0,0 +1,71 @@
1
+ /* eslint-disable linebreak-style */
2
+ "use strict";
3
+
4
+ var utils = require("../utils");
5
+
6
+ module.exports = function (defaultFuncs, api, ctx) {
7
+ return function(text, threadID, messageID ,callback) {
8
+ var resolveFunc = function () { };
9
+ var rejectFunc = function () { };
10
+
11
+ var returnPromise = new Promise(function (resolve, reject) {
12
+ resolveFunc = resolve;
13
+ rejectFunc = reject;
14
+ });
15
+
16
+ if (!callback && utils.getType(messageID) === "AsyncFunction" || !callback && utils.getType(messageID) === "Function") messageID = callback;
17
+
18
+ if (!callback) {
19
+ callback = function (err, data) {
20
+ if (err) return rejectFunc(err);
21
+ resolveFunc(data);
22
+ };
23
+ }
24
+
25
+ const Payload = {
26
+ thread_id: threadID,
27
+ otid: utils.generateOfflineThreadingID(),
28
+ source: 524289,
29
+ send_type: 1,
30
+ sync_group: 1,
31
+ mark_thread_read: 0,
32
+ text: text || "test",
33
+ initiating_source: 0
34
+ };
35
+
36
+ if (messageID != undefined || messageID != null) Payload.reply_metadata = {
37
+ reply_source_id: messageID,
38
+ reply_source_type: 1,
39
+ reply_type: 0
40
+ };
41
+
42
+ const Form = JSON.stringify({
43
+ app_id: "2220391788200892",
44
+ payload: JSON.stringify({
45
+ tasks: [{
46
+ label: 46,
47
+ payload: JSON.stringify(Payload),
48
+ queue_name: threadID,
49
+ task_id: Math.random() * 1001 << 0,
50
+ failure_count: null,
51
+ }],
52
+ epoch_id: utils.generateOfflineThreadingID(),
53
+ version_id: '7553237234719461',
54
+
55
+ }),
56
+ request_id: ++ctx.req_ID,
57
+ type: 3
58
+ });
59
+
60
+ ctx.mqttClient.publish('/ls_req', Form,{
61
+ qos: 1,
62
+ retain: false,
63
+ });
64
+ ctx.callback_Task[ctx.req_ID] = new Object({
65
+ callback,
66
+ type: "sendMqttMessage"
67
+ });
68
+
69
+ return returnPromise;
70
+ };
71
+ };
@@ -0,0 +1,55 @@
1
+ /* eslint-disable linebreak-style */
2
+ "use strict";
3
+
4
+ var utils = require("../utils");
5
+
6
+ module.exports = function (defaultFuncs, api, ctx) {
7
+ return function shareContact(text, senderID, threadID, callback) {
8
+ var resolveFunc = function () { };
9
+ var rejectFunc = function () { };
10
+
11
+ var returnPromise = new Promise(function (resolve, reject) {
12
+ resolveFunc = resolve;
13
+ rejectFunc = reject;
14
+ });
15
+
16
+ if (!callback) {
17
+ callback = function (err, data) {
18
+ if (err) return rejectFunc(err);
19
+ resolveFunc(data);
20
+ };
21
+ }
22
+ ctx.mqttClient.publish('/ls_req',
23
+ JSON.stringify({
24
+ app_id: "2220391788200892",
25
+ payload: JSON.stringify({
26
+ tasks: [{
27
+ label: 359,
28
+ payload: JSON.stringify({
29
+ "contact_id": senderID,
30
+ "sync_group": 1,
31
+ "text": text || "",
32
+ "thread_id": threadID
33
+ }),
34
+ queue_name: 'xma_open_contact_share',
35
+ task_id: Math.random() * 1001 << 0,
36
+ failure_count: null,
37
+ }],
38
+ epoch_id: utils.generateOfflineThreadingID(),
39
+ version_id: '7214102258676893',
40
+ }),
41
+ request_id: ++ctx.req_ID,
42
+ type: 3
43
+ }),
44
+ {
45
+ qos: 1,
46
+ retain: false,
47
+ }
48
+ );
49
+ ctx.callback_Task[ctx.req_ID] = new Object({
50
+ callback,
51
+ type: "shareContact"
52
+ });
53
+ return returnPromise;
54
+ };
55
+ };
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ var utils = require("../utils");
4
+ var log = require("npmlog");
5
+
6
+ module.exports = function (defaultFuncs, api, ctx) {
7
+ return async function shareLink(text, url, threadID, callback) {
8
+ var resolveFunc = function () { };
9
+ var rejectFunc = function () { };
10
+ var returnPromise = new Promise(function (resolve, reject) {
11
+ resolveFunc = resolve;
12
+ rejectFunc = reject;
13
+ });
14
+ if (!callback) {
15
+ callback = function (err, data) {
16
+ if (err) return rejectFunc(err);
17
+ resolveFunc(data);
18
+ };
19
+ }
20
+ mqttClient.publish('/ls_req',
21
+ JSON.stringify({
22
+ "app_id": "2220391788200892",
23
+ "payload": JSON.stringify({
24
+ tasks: [{
25
+ label: 46,
26
+ payload: JSON.stringify({
27
+ "otid": utils.generateOfflineThreadingID(),
28
+ "source": 524289,
29
+ "sync_group": 1,
30
+ "send_type": 6,
31
+ "mark_thread_read": 0,
32
+ "url": url || "https://www.facebook.com/Lazic.Kanzu",
33
+ "text": text || "",
34
+ "thread_id": threadID,
35
+ "initiating_source": 0
36
+ }),
37
+ queue_name: threadID,
38
+ task_id: Math.random() * 1001 << 0,
39
+ failure_count: null,
40
+ }],
41
+ epoch_id: utils.generateOfflineThreadingID(),
42
+ version_id: '7191105584331330',
43
+ }),
44
+ "request_id": ++ctx.req_ID,
45
+ "type": 3
46
+ }),
47
+ {
48
+ qos: 1,
49
+ retain: false,
50
+ }
51
+ )
52
+ ctx.callback_Task[ctx.req_ID] = new Object({
53
+ callback,
54
+ type: "shareLink"
55
+ });
56
+ return returnPromise;
57
+ };
58
+ };