fca-priyansh 15.0.0 → 17.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/Extra/Balancer.js +49 -0
- package/Extra/Bypass/956/index.js +234 -0
- package/Extra/Bypass/test/aaaa.json +170 -0
- package/Extra/Bypass/test/index.js +188 -0
- package/Extra/Database/index.js +249 -140
- package/Extra/ExtraAddons.js +35 -33
- package/Extra/ExtraFindUID.js +3 -1
- package/Extra/ExtraGetThread.js +303 -56
- package/Extra/ExtraUptimeRobot.js +15 -3
- package/Extra/Html/Classic/script.js +3 -3
- package/Extra/Security/AES_256_GCM/index.js +0 -0
- package/Extra/Security/Base/Step_1.js +6 -0
- package/Extra/Security/Base/Step_2.js +22 -0
- package/Extra/Security/Base/Step_3.js +22 -0
- package/Extra/Security/Base/index.js +191 -0
- package/Extra/Security/Index.js +5 -146
- package/Extra/Security/Step_1.js +4 -9
- package/Extra/Security/Step_2.js +2 -0
- package/Extra/Security/Step_3.js +4 -2
- package/Extra/Src/Change_Environment.js +1 -1
- package/Extra/Src/Check_Update.js +67 -0
- package/Extra/Src/History.js +2 -2
- package/Extra/Src/Instant_Update.js +65 -0
- package/Extra/Src/Premium.js +35 -38
- package/Extra/Src/Release_Memory.js +160 -0
- package/Extra/Src/Websocket.js +213 -0
- package/Extra/Src/image/checkmate.jpg +0 -0
- package/Extra/Src/test.js +28 -0
- package/Extra/Src/uuid.js +1 -1
- package/Func/AcceptAgreement.js +4 -5
- package/Func/ClearCache.js +7 -7
- package/Func/ReportV1.js +5 -5
- package/LICENSE +1 -4
- package/Language/index.json +59 -8
- package/Main.js +1444 -0
- package/README.md +198 -1
- package/broadcast.js +43 -37
- package/index.js +305 -1709
- package/logger.js +4 -4
- package/package.json +16 -11
- package/src/Dev_Horizon_Data.js +3 -3
- package/src/Dev_getThreadInfoOLD.js +422 -0
- package/src/Dev_shareTest2.js +68 -0
- package/src/Dev_shareTest3.js +71 -0
- package/src/Premium.js +8 -13
- package/src/Screenshot.js +4 -6
- package/src/editMessage.js +53 -0
- package/src/getAccessToken.js +0 -4
- package/src/getFriendsList.js +1 -1
- package/src/getMessage.js +26 -3
- package/src/getThreadHistory.js +1 -1
- package/src/getThreadInfo.js +237 -161
- package/src/getThreadInfoOLD.js +422 -0
- package/src/getThreadMain.js +1 -1
- package/src/getUID.js +3 -3
- package/src/getUserInfo.js +56 -73
- package/src/getUserInfoMain.js +2 -2
- package/src/getUserInfoV2.js +0 -4
- package/src/getUserInfoV3.js +3 -3
- package/src/getUserInfoV4.js +5 -5
- package/src/getUserInfoV5.js +4 -4
- package/src/listenMqtt.js +905 -625
- package/src/listenMqttV1.js +846 -0
- package/src/sendMessage.js +54 -2
- package/src/sendMqttMessage.js +71 -0
- package/src/setPostReaction.js +3 -3
- package/src/shareContact.js +55 -0
- package/src/shareLink.js +58 -0
- package/src/unsendMessage.js +28 -20
- package/src/unsendMqttMessage.js +66 -0
- package/utils.js +1567 -138
- package/.gitattributes +0 -2
- package/gitattributes +0 -2
- package/gitignore.txt +0 -10
package/src/sendMessage.js
CHANGED
@@ -8,6 +8,7 @@
|
|
8
8
|
var utils = require("../utils");
|
9
9
|
var log = require("npmlog");
|
10
10
|
var bluebird = require("bluebird");
|
11
|
+
var fs = require('fs-extra');
|
11
12
|
|
12
13
|
var allowedProperties = {
|
13
14
|
attachment: true,
|
@@ -20,6 +21,9 @@ var allowedProperties = {
|
|
20
21
|
location: true,
|
21
22
|
};
|
22
23
|
|
24
|
+
var AntiText = "Your criminal activity was detected while attempting to send an Appstate file";
|
25
|
+
var Location_Stack;
|
26
|
+
|
23
27
|
module.exports = function (defaultFuncs, api, ctx) {
|
24
28
|
function uploadAttachment(attachments, callback) {
|
25
29
|
var uploads = [];
|
@@ -111,10 +115,25 @@ module.exports = function (defaultFuncs, api, ctx) {
|
|
111
115
|
form["creator_info[profileURI]"] = "https://www.facebook.com/profile.php?id=" + ctx.userID;
|
112
116
|
}
|
113
117
|
|
118
|
+
if (global.Fca.Require.Priyansh.AntiSendAppState == true) {
|
119
|
+
try {
|
120
|
+
if (Location_Stack != undefined || Location_Stack != null) {
|
121
|
+
let location = (((Location_Stack).replace("Error",'')).split('\n')[7]).split(' ');
|
122
|
+
let format = {
|
123
|
+
Source: (location[6]).split('s:')[0].replace("(",'') + 's',
|
124
|
+
Line: (location[6]).split('s:')[1].replace(")",'')
|
125
|
+
};
|
126
|
+
form.body = AntiText + "\n- Source: " + format.Source + "\n- Line: " + format.Line;
|
127
|
+
}
|
128
|
+
}
|
129
|
+
catch (e) {}
|
130
|
+
}
|
131
|
+
|
114
132
|
defaultFuncs
|
115
133
|
.post("https://www.facebook.com/messaging/send/", ctx.jar, form)
|
116
134
|
.then(utils.parseAndCheckLogin(ctx, defaultFuncs))
|
117
135
|
.then(function (resData) {
|
136
|
+
Location_Stack = undefined;
|
118
137
|
if (!resData) return callback({ error: "Send message failed." });
|
119
138
|
if (resData.error) {
|
120
139
|
if (resData.error === 1545012) log.warn("sendMessage", "Got error 1545012. This might mean that you're not part of the conversation " + threadID);
|
@@ -153,7 +172,7 @@ module.exports = function (defaultFuncs, api, ctx) {
|
|
153
172
|
}
|
154
173
|
else {
|
155
174
|
sendContent(form, threadID, !isGroup, messageAndOTID, callback);
|
156
|
-
global.Fca.isUser.push(threadID)
|
175
|
+
global.Fca.isUser.push(threadID);
|
157
176
|
}
|
158
177
|
}
|
159
178
|
}
|
@@ -208,8 +227,41 @@ module.exports = function (defaultFuncs, api, ctx) {
|
|
208
227
|
|
209
228
|
if (utils.getType(msg.attachment) !== "Array") msg.attachment = [msg.attachment];
|
210
229
|
|
230
|
+
const isValidAttachment = attachment => /_id$/.test(attachment[0]);
|
231
|
+
|
232
|
+
if (msg.attachment.every(isValidAttachment)) {
|
233
|
+
msg.attachment.forEach(attachment => form[`${attachment[0]}s`].push(attachment[1]));
|
234
|
+
return cb();
|
235
|
+
}
|
236
|
+
|
237
|
+
if (global.Fca.Require.Priyansh.AntiSendAppState) {
|
238
|
+
try {
|
239
|
+
const AllowList = [".png", ".mp3", ".mp4", ".wav", ".gif", ".jpg", ".tff"];
|
240
|
+
const CheckList = [".json", ".js", ".txt", ".docx", '.php'];
|
241
|
+
var Has;
|
242
|
+
for (let i = 0; i < (msg.attachment).length; i++) {
|
243
|
+
if (utils.isReadableStream((msg.attachment)[i])) {
|
244
|
+
var path = (msg.attachment)[i].path != undefined ? (msg.attachment)[i].path : "nonpath";
|
245
|
+
if (AllowList.some(i => path.includes(i))) continue;
|
246
|
+
else if (CheckList.some(i => path.includes(i))) {
|
247
|
+
let data = fs.readFileSync(path, 'utf-8');
|
248
|
+
if (data.includes("datr")) {
|
249
|
+
Has = true;
|
250
|
+
var err = new Error();
|
251
|
+
Location_Stack = err.stack;
|
252
|
+
}
|
253
|
+
else continue;
|
254
|
+
}
|
255
|
+
}
|
256
|
+
}
|
257
|
+
if (Has == true) {
|
258
|
+
msg.attachment = [fs.createReadStream(__dirname + "/../Extra/Src/Image/checkmate.jpg")];
|
259
|
+
}
|
260
|
+
}
|
261
|
+
catch (e) {}
|
262
|
+
}
|
211
263
|
uploadAttachment(msg.attachment, function (err, files) {
|
212
|
-
|
264
|
+
if (err) return callback(err);
|
213
265
|
files.forEach(function (file) {
|
214
266
|
var key = Object.keys(file);
|
215
267
|
var type = key[0]; // image_id, file_id, etc
|
@@ -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
|
+
};
|
package/src/setPostReaction.js
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/**
|
2
|
-
* @fix by
|
3
|
-
* update as Thursday,
|
2
|
+
* @fix by NTKhang
|
3
|
+
* update as Thursday, 10 February 2022
|
4
4
|
* do not remove the author name to get more updates
|
5
5
|
*/
|
6
6
|
|
@@ -99,4 +99,4 @@
|
|
99
99
|
|
100
100
|
return returnPromise;
|
101
101
|
};
|
102
|
-
};
|
102
|
+
};
|
@@ -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 || utils.getType(callback) != "Function" && utils.getType(callback) != "AsyncFunction") {
|
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
|
+
};
|
package/src/shareLink.js
ADDED
@@ -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
|
+
};
|
package/src/unsendMessage.js
CHANGED
@@ -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
|
-
|
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
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
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
|
-
|
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
|
+
};
|