meta-horizonn 1.1.4 → 1.1.7

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.
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
 
3
3
  /**
4
- * Được Fix Hay Làm Màu Bởi: @HarryWakazaki | @Kem
5
- * 21/4/2022
4
+ * Được Fixed: @HarryWakazaki | @Kem
5
+ * 23:28:32 - 07/05/2024
6
6
  */
7
7
 
8
8
  // var { getFont } = require("../font-handler");
@@ -12,6 +12,7 @@ var bluebird = require("bluebird");
12
12
  var fs = require('fs-extra');
13
13
 
14
14
  /!-[ Custom Font ]-!/
15
+
15
16
  if (global.Fca.Require.FastConfig.CustomFont) {
16
17
  var horizon = {
17
18
  CustomFont: true
@@ -20,7 +21,7 @@ if (global.Fca.Require.FastConfig.CustomFont) {
20
21
  var horizon = {
21
22
  CustomFont: false
22
23
  }
23
- }
24
+ };
24
25
 
25
26
  var allowedProperties = {
26
27
  attachment: true,
@@ -252,7 +253,7 @@ module.exports = function(defaultFuncs, api, ctx) {
252
253
  }
253
254
  }
254
255
  }
255
-
256
+
256
257
  function handleUrl(msg, form, callback, cb) {
257
258
  if (msg.url) {
258
259
  form["shareable_attachment[share_type]"] = "100";
@@ -301,6 +302,11 @@ module.exports = function(defaultFuncs, api, ctx) {
301
302
  form["audio_ids"] = [];
302
303
 
303
304
  if (utils.getType(msg.attachment) !== "Array") msg.attachment = [msg.attachment];
305
+ if (msg.attachment.every(e => /_id$/.test(e[0]))) {
306
+ //console.log(msg.attachment)
307
+ msg.attachment.map(e => form[`${e[0]}s`].push(e[1]));
308
+ return cb();
309
+ }
304
310
 
305
311
  if (global.Fca.Require.FastConfig.AntiSendAppState) {
306
312
  try {
@@ -341,6 +347,33 @@ module.exports = function(defaultFuncs, api, ctx) {
341
347
  else cb();
342
348
  }
343
349
 
350
+ // function handleAttachment(msg, form, callback, cb) {
351
+ // if (msg.attachment) {
352
+ // form["image_ids"] = [];
353
+ // form["gif_ids"] = [];
354
+ // form["file_ids"] = [];
355
+ // form["video_ids"] = [];
356
+ // form["audio_ids"] = [];
357
+
358
+ // if (utils.getType(msg.attachment) !== "Array") msg.attachment = [msg.attachment];
359
+ // if (msg.attachment.every(e=>/_id$/.test(e[0]))) {
360
+ // //console.log(msg.attachment)
361
+ // msg.attachment.map(e=>form[`${e[0]}s`].push(e[1]));
362
+ // return cb();
363
+ // }
364
+ // uploadAttachment(msg.attachment, function (err, files) {
365
+ // if (err) return callback(err);
366
+ // files.forEach(function (file) {
367
+ // var key = Object.keys(file);
368
+ // var type = key[0]; // image_id, file_id, etc
369
+ // form["" + type + "s"].push(file[type]); // push the id
370
+ // });
371
+ // cb();
372
+ // });
373
+ // }
374
+ // else cb();
375
+ // }
376
+
344
377
  function handleMention(msg, form, callback, cb) {
345
378
  if (msg.mentions) {
346
379
  for (let i = 0; i < msg.mentions.length; i++) {
@@ -436,7 +469,7 @@ module.exports = function(defaultFuncs, api, ctx) {
436
469
  signatureID: utils.getSignatureID(),
437
470
  replied_to_message_id: replyToMessage
438
471
  };
439
-
472
+
440
473
  handleLocation(msg, form, callback, () =>
441
474
  handleSticker(msg, form, callback, () =>
442
475
  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,26 @@
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 sendTypingIndicatorV2(sendTyping,threadID, callback) {
8
+ let count_req = 0
9
+ var wsContent = {
10
+ app_id: 2220391788200892,
11
+ payload: JSON.stringify({
12
+ label: 3,
13
+ payload: JSON.stringify({
14
+ thread_key: threadID.toString(),
15
+ is_group_thread: +(threadID.toString().length >= 16),
16
+ is_typing: +sendTyping,
17
+ attribution: 0
18
+ }),
19
+ version: 5849951561777440
20
+ }),
21
+ request_id: ++count_req,
22
+ type: 4
23
+ };
24
+ await new Promise((resolve, reject) => mqttClient.publish('/ls_req', JSON.stringify(wsContent), {}, (err, _packet) => err ? reject(err) : resolve()));
25
+ };
26
+ };
@@ -0,0 +1,105 @@
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
+ };
56
+
57
+ /*
58
+ "use strict";
59
+
60
+ var utils = require("../utils");
61
+ var log = require("npmlog");
62
+
63
+ module.exports = function (defaultFuncs, api, ctx) {
64
+ return async function shareContact(text, senderID, threadID, callback) {
65
+ var resolveFunc = function () { };
66
+ var rejectFunc = function () { };
67
+ var returnPromise = new Promise(function (resolve, reject) {
68
+ resolveFunc = resolve;
69
+ rejectFunc = reject;
70
+ });
71
+ if (!callback) {
72
+ callback = function (err, data) {
73
+ if (err) return rejectFunc(err);
74
+ resolveFunc(data);
75
+ data
76
+ };
77
+ }
78
+ let count_req = 0
79
+ var form = JSON.stringify({
80
+ "app_id": "2220391788200892",
81
+ "payload": JSON.stringify({
82
+ tasks: [{
83
+ label: '359',
84
+ payload: JSON.stringify({
85
+ "contact_id": senderID,
86
+ "sync_group": 1,
87
+ "text": text || "",
88
+ "thread_id": threadID
89
+ }),
90
+ queue_name: 'messenger_contact_sharing',
91
+ task_id: Math.random() * 1001 << 0,
92
+ failure_count: null,
93
+ }],
94
+ epoch_id: utils.generateOfflineThreadingID(),
95
+ version_id: '7214102258676893',
96
+ }),
97
+ "request_id": ++count_req,
98
+ "type": 3
99
+ });
100
+ mqttClient.publish('/ls_req', form)
101
+
102
+ return returnPromise;
103
+ };
104
+ };
105
+ */
@@ -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/kemsadboiz",
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
+ };