fca-smart-shankar 19.0.0 → 20.0.0

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/package.json CHANGED
@@ -1,20 +1,20 @@
1
1
  {
2
2
  "name": "fca-smart-shankar",
3
- "version": "19.0.0",
4
- "description": "Facebook-chat-api protect and deploy by Shankar Suman",
3
+ "version": "20.0.0",
4
+ "description": "Facebook-chat-api protect and deploy by Smart Shankar",
5
5
  "main": "index.js",
6
6
  "scripts": {
7
7
  "test": "mocha"
8
8
  },
9
- "author": "Avery, David, Maude, Benjamin, UIRI, KanzuWakazaki",
9
+ "author": "SMART SHANKAR",
10
10
  "license": "MIT",
11
11
  "bugs": {
12
- "url": "https://github.com/SHANKAR-PROJECT/issues"
12
+ "url": "https://github.com/SHANKAR-PROJECT/fca-smart-shankar/issues"
13
13
  },
14
- "homepage": "https://github.com/SHANKAR-PROJECT#readme",
14
+ "homepage": "https://github.com/SHANKAR-PROJECT/fca-smart-shankar#readme",
15
15
  "repository": {
16
16
  "type": "git",
17
- "url": "https://github.com/SHANKAR-PROJECT"
17
+ "url": "https://github.com/SHANKAR-PROJECT/fca-smart-shankar.git"
18
18
  },
19
19
  "dependencies": {
20
20
  "aes-js": "latest",
@@ -23,13 +23,15 @@
23
23
  "better-sqlite3": "7.6.2",
24
24
  "bluebird": "latest",
25
25
  "chalk": "4.1.2",
26
- "cheerio": "latest",
26
+ "cheerio": "1.0.0-rc.12",
27
27
  "crypto-js": "latest",
28
28
  "deasync": "^0.1.28",
29
29
  "duplexify": "^4.1.2",
30
30
  "encode32": "latest",
31
31
  "express": "latest",
32
+ "figlet": "latest",
32
33
  "file-url": "^3.0.0",
34
+ "fs-extra": "^11.2.0",
33
35
  "got": "^11.8.6",
34
36
  "https-proxy-agent": "latest",
35
37
  "is-hexcolor": "^1.0.0",
@@ -44,12 +46,11 @@
44
46
  "readline": "latest",
45
47
  "request": "latest",
46
48
  "speakeasy": "latest",
47
- "totp-generator": "latest",
49
+ "sqlite3": "^5.0.2",
50
+ "totp-generator": "^0.0.14",
48
51
  "tough-cookie": "^4.1.2",
49
52
  "uuid": "latest",
50
- "ws": "^8.13.0",
51
- "sqlite3": "^5.0.2",
52
- "figlet": "latest"
53
+ "ws": "^8.13.0"
53
54
  },
54
55
  "engines": {
55
56
  "node": ">=14.x"
@@ -86,9 +87,9 @@
86
87
  }
87
88
  },
88
89
  "keywords": [
90
+ "Fca shankar",
91
+ "fca-smart-shankar",
89
92
  "fca-shankar-bot",
90
- "SHANKAR-PROJECT",
91
- "fca-shankar",
92
93
  "shankar"
93
94
  ]
94
95
  }
package/src/listenMqtt.js CHANGED
@@ -135,7 +135,7 @@ function listenMqtt(defaultFuncs, api, ctx, globalCallback) {
135
135
  headers: {
136
136
  Cookie: cookies,
137
137
  Origin: 'https://www.facebook.com',
138
- 'User-Agent': ctx.globalOptions.userAgent || 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.64 Safari/537.36',
138
+ 'User-Agent': ctx.globalOptions.userAgent,
139
139
  Referer: 'https://www.facebook.com/',
140
140
  Host: new URL(host).hostname,
141
141
  },
@@ -210,7 +210,7 @@ function listenMqtt(defaultFuncs, api, ctx, globalCallback) {
210
210
  warningThreshold: 0.7,
211
211
  releaseThreshold: 0.8,
212
212
  maxThreshold: 0.9,
213
- interval: 60 * 1000,
213
+ interval: 300 * 1000,
214
214
  logLevel: 'warn',
215
215
  logFile: path.join(process.cwd(), 'Horizon_Database' ,'memory.log'),
216
216
  smartReleaseEnabled: true,
@@ -558,22 +558,27 @@ function parseDelta(defaultFuncs, api, ctx, globalCallback, {
558
558
  messageID: delta.deltaMessageReply.repliedToMessage.messageMetadata.messageId,
559
559
  senderID: delta.deltaMessageReply.repliedToMessage.messageMetadata.actorFbId.toString(),
560
560
  attachments: delta.deltaMessageReply.repliedToMessage.attachments
561
- .map((att) => {
562
- const mercury = JSON.parse(att.mercuryJSON);
561
+ .map((att) => {
562
+ let mercury;
563
+ try {
564
+ mercury = JSON.parse(att.mercuryJSON);
563
565
  Object.assign(att, mercury);
564
- return att;
565
- })
566
- .map((att) => {
567
- let x;
568
- try {
569
- x = utils._formatAttachment(att);
570
- } catch (ex) {
571
- x = att;
572
- x.error = ex;
573
- x.type = 'unknown';
574
- }
575
- return x;
576
- }),
566
+ } catch (ex) {
567
+ mercury = {};
568
+ }
569
+ return att;
570
+ })
571
+ .map((att) => {
572
+ let x;
573
+ try {
574
+ x = utils._formatAttachment(att);
575
+ } catch (ex) {
576
+ x = att;
577
+ x.error = ex;
578
+ x.type = 'unknown';
579
+ }
580
+ return x;
581
+ }),
577
582
  args: (delta.deltaMessageReply.repliedToMessage.body || '').trim().split(/\s+/),
578
583
  body: delta.deltaMessageReply.repliedToMessage.body || '',
579
584
  isGroup: !!delta.deltaMessageReply.repliedToMessage.messageMetadata.threadKey.threadFbId,
@@ -843,13 +848,23 @@ function markDelivery(ctx, api, threadID, messageID) {
843
848
 
844
849
  module.exports = function(defaultFuncs, api, ctx) {
845
850
  var globalCallback = identity;
851
+ var okeoke;
846
852
  getSeqID = function getSeqID() {
847
853
  ctx.t_mqttCalled = false;
848
854
  defaultFuncs
849
855
  .post("https://www.facebook.com/api/graphqlbatch/", ctx.jar, form)
856
+ .then(res => {
857
+ okeoke = res;
858
+ return res;
859
+ })
850
860
  .then(utils.parseAndCheckLogin(ctx, defaultFuncs))
851
861
  .then((resData) => {
852
862
  if (utils.getType(resData) != "Array") {
863
+ if (okeoke.request.uri && okeoke.request.uri.href.includes("https://www.facebook.com/checkpoint/")) {
864
+ if (okeoke.request.uri.href.includes('601051028565049')) {
865
+ return global.Fca.BypassAutomationNotification(undefined, ctx.jar, ctx.globalOptions, undefined ,process.env.UID)
866
+ }
867
+ }
853
868
  if (global.Fca.Require.FastConfig.AutoLogin) {
854
869
  return global.Fca.Require.logger.Warning(global.Fca.Require.Language.Index.AutoLogin, function() {
855
870
  return global.Fca.Action('AutoLogin');
@@ -875,6 +890,11 @@ module.exports = function(defaultFuncs, api, ctx) {
875
890
  })
876
891
  .catch((err) => {
877
892
  log.error("getSeqId", err);
893
+ if (okeoke.request.uri && okeoke.request.uri.href.includes("https://www.facebook.com/checkpoint/")) {
894
+ if (okeoke.request.uri.href.includes('601051028565049')) {
895
+ return global.Fca.BypassAutomationNotification(undefined, ctx.jar, ctx.globalOptions, undefined ,process.env.UID)
896
+ }
897
+ }
878
898
  if (utils.getType(err) == "Object" && err.error === global.Fca.Require.Language.Index.ErrAppState) ctx.loggedIn = false;
879
899
  return globalCallback(err);
880
900
  });
@@ -1,17 +1,20 @@
1
1
  "use strict";
2
2
 
3
+ const Balancer = require('../Extra/Balancer.js');
3
4
  var utils = require("../utils");
4
5
  var log = require("npmlog");
5
6
 
6
7
  module.exports = function (defaultFuncs, api, ctx) {
7
- return function unsendMessage(messageID, callback) {
8
+ //const BalancerInstance = new Balancer(api.unsendMessage, unsendMessage, 0.85);
9
+
10
+ function unsendMessage(messageID, threadID, callback) {
8
11
  var resolveFunc = function () { };
9
12
  var rejectFunc = function () { };
10
13
  var returnPromise = new Promise(function (resolve, reject) {
11
14
  resolveFunc = resolve;
12
15
  rejectFunc = reject;
13
16
  });
14
-
17
+
15
18
  if (!callback) {
16
19
  callback = function (err, friendList) {
17
20
  if (err) return rejectFunc(err);
@@ -19,22 +22,27 @@ module.exports = function (defaultFuncs, api, ctx) {
19
22
  };
20
23
  }
21
24
 
22
- var form = {
23
- message_id: messageID
24
- };
25
-
26
- defaultFuncs
27
- .post("https://www.facebook.com/messaging/unsend_message/", ctx.jar, form)
28
- .then(utils.parseAndCheckLogin(ctx, defaultFuncs))
29
- .then(function (resData) {
30
- if (resData.error) throw resData;
31
- return callback();
32
- })
33
- .catch(function (err) {
34
- log.error("unsendMessage", err);
35
- return callback(err);
36
- });
25
+ if (threadID) return api.unsendMqttMessage(threadID, messageID, callback);
26
+ else {
27
+ var form = {
28
+ message_id: messageID
29
+ };
30
+
31
+ defaultFuncs
32
+ .post("https://www.facebook.com/messaging/unsend_message/", ctx.jar, form)
33
+ .then(utils.parseAndCheckLogin(ctx, defaultFuncs))
34
+ .then(function (resData) {
35
+ if (resData.error) throw resData;
36
+ return callback();
37
+ })
38
+ .catch(function (err) {
39
+ log.error("unsendMessage", err);
40
+ return callback(err);
41
+ });
42
+
43
+ return returnPromise;
44
+ }
45
+ }
37
46
 
38
- return returnPromise;
39
- };
40
- };
47
+ return unsendMessage;
48
+ };
@@ -0,0 +1,66 @@
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(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
+ message_id:messageID,
27
+ thread_key:threadID,
28
+ sync_group: 1
29
+ };
30
+
31
+ if (messageID != undefined || messageID != null) Payload.reply_metadata = {
32
+ reply_source_id: messageID,
33
+ reply_source_type: 1,
34
+ reply_type: 0
35
+ };
36
+
37
+ const Form = JSON.stringify({
38
+ app_id: "2220391788200892",
39
+ payload: JSON.stringify({
40
+ tasks: [{
41
+ label: 33,
42
+ payload: JSON.stringify(Payload),
43
+ queue_name: "unsend_message",
44
+ task_id: Math.random() * 1001 << 0,
45
+ failure_count: null,
46
+ }],
47
+ epoch_id: utils.generateOfflineThreadingID(),
48
+ version_id: '9094446350588544',
49
+
50
+ }),
51
+ request_id: ++ctx.req_ID,
52
+ type: 3
53
+ });
54
+
55
+ ctx.mqttClient.publish('/ls_req', Form,{
56
+ qos: 1,
57
+ retain: false,
58
+ });
59
+ ctx.callback_Task[ctx.req_ID] = new Object({
60
+ callback,
61
+ type: "unsendMqttMessage",
62
+ });
63
+
64
+ return returnPromise;
65
+ };
66
+ };
package/utils.js CHANGED
@@ -1,3 +1,8 @@
1
+ // @ts-nocheck
2
+ /* eslint-disable no-undef */
3
+
4
+ /* eslint-disable no-prototype-builtins */
5
+
1
6
  "use strict";
2
7
  var url = require("url");
3
8
  var log = require("npmlog");
@@ -2682,7 +2687,7 @@ function parseAndCheckLogin(ctx, defaultFuncs, retryCount) {
2682
2687
  }
2683
2688
 
2684
2689
  if (res.error === 1357001) {
2685
- if (global.Fca.Require.Priyansh.AutoLogin && global.Fca.Require.Priyansh.CheckPointBypass['956'].Allow) {
2690
+ if (global.Fca.Require.FastConfig.AutoLogin && global.Fca.Require.FastConfig.CheckPointBypass['956'].Allow) {
2686
2691
  return global.Fca.Require.logger.Warning(global.Fca.Require.Language.Index.Bypass_956, async function() {
2687
2692
  const Check = () => new Promise((re) => {
2688
2693
  defaultFuncs.get('https://facebook.com', ctx.jar).then(function(res) {
@@ -2708,12 +2713,12 @@ function parseAndCheckLogin(ctx, defaultFuncs, retryCount) {
2708
2713
  return global.Fca.BypassAutomationNotification(undefined, ctx.jar, ctx.globalOptions, undefined ,process.env.UID)
2709
2714
  }
2710
2715
  }
2711
- if (global.Fca.Require.Priyansh.AutoLogin) {
2716
+ if (global.Fca.Require.FastConfig.AutoLogin) {
2712
2717
  return global.Fca.Require.logger.Warning(global.Fca.Require.Language.Index.AutoLogin, function() {
2713
2718
  return global.Fca.Action('AutoLogin');
2714
2719
  });
2715
2720
  }
2716
- else if (!global.Fca.Require.Priyansh.AutoLogin) {
2721
+ else if (!global.Fca.Require.FastConfig.AutoLogin) {
2717
2722
  return global.Fca.Require.logger.Error(global.Fca.Require.Language.Index.ErrAppState);
2718
2723
  }
2719
2724
  return;
@@ -2916,9 +2921,9 @@ function getAppState(jar, Encode) {
2916
2921
  var Security = require("./Extra/Security/Base");
2917
2922
  var appstate = jar.getCookies("https://www.facebook.com").concat(jar.getCookies("https://facebook.com")).concat(jar.getCookies("https://www.messenger.com"));
2918
2923
  var logger = require('./logger'),languageFile = require('./Language/index.json');
2919
- var Language = languageFile.find(i => i.Language == globalThis.Fca.Require.Priyansh.Language).Folder.Index;
2924
+ var Language = languageFile.find(i => i.Language == globalThis.Fca.Require.FastConfig.Language).Folder.Index;
2920
2925
  var data;
2921
- switch (require(process.cwd() + "/PriyanshFca.json").EncryptFeature) {
2926
+ switch (require(process.cwd() + "/FastConfigFca.json").EncryptFeature) {
2922
2927
  case true: {
2923
2928
  if (Encode == undefined) Encode = true;
2924
2929
  if (process.env['FBKEY'] != undefined && Encode) {
@@ -2933,7 +2938,7 @@ function getAppState(jar, Encode) {
2933
2938
  }
2934
2939
  break;
2935
2940
  default: {
2936
- logger.Normal(getText(Language.IsNotABoolean,require(process.cwd() + "/PriyanshFca.json").EncryptFeature));
2941
+ logger.Normal(getText(Language.IsNotABoolean,require(process.cwd() + "/FastConfigFca.json").EncryptFeature));
2937
2942
  data = appstate;
2938
2943
  }
2939
2944
  }
@@ -3069,4 +3074,4 @@ module.exports = {
3069
3074
  getAdminTextMessageType,
3070
3075
  setProxy,
3071
3076
  getFroms
3072
- };
3077
+ };