fca-rqzax-remake 0.0.1-security → 4.0.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of fca-rqzax-remake might be problematic. Click here for more details.
- package/.breakpoints +58 -0
- package/.cache/replit/__replit_disk_meta.json +1 -0
- package/.cache/replit/modules.stamp +1 -0
- package/.cache/replit/nix/env.json +1 -0
- package/.gitattributes +2 -0
- package/.replit +1 -0
- package/.travis.yml +6 -0
- package/.upm/store.json +1 -0
- package/CHANGELOG.md +2 -0
- package/DOCS.md +1738 -0
- package/GetThreads/GetThreadInfo.js +118 -0
- package/LICENSE-MIT +21 -0
- package/README.md +126 -3
- package/StateCrypt.js +28 -0
- package/broadcast.js +1 -0
- package/index.js +685 -0
- package/languages/index.json +150 -0
- package/lib/getInfoNew.js +34 -0
- package/lib/getToken.js +44 -0
- package/logger.js +24 -0
- package/package.json +133 -3
- package/replit.nix +9 -0
- package/src/ReportV1.js +55 -0
- package/src/addExternalModule.js +16 -0
- package/src/addUserToGroup.js +78 -0
- package/src/changeAdminStatus.js +79 -0
- package/src/changeArchivedStatus.js +41 -0
- package/src/changeAvt.js +86 -0
- package/src/changeBio.js +65 -0
- package/src/changeBlockedStatus.js +36 -0
- package/src/changeGroupImage.js +106 -0
- package/src/changeNickname.js +45 -0
- package/src/changeThreadColor.js +62 -0
- package/src/changeThreadEmoji.js +42 -0
- package/src/createNewGroup.js +70 -0
- package/src/createPoll.js +60 -0
- package/src/data/getThreadInfo.json +25094 -0
- package/src/deleteMessage.js +45 -0
- package/src/deleteThread.js +43 -0
- package/src/forwardAttachment.js +48 -0
- package/src/getAccessToken.js +33 -0
- package/src/getCurrentUserID.js +7 -0
- package/src/getEmojiUrl.js +27 -0
- package/src/getFriendsList.js +73 -0
- package/src/getMessage.js +80 -0
- package/src/getThreadHistory.js +537 -0
- package/src/getThreadHistoryDeprecated.js +71 -0
- package/src/getThreadInfo.js +193 -0
- package/src/getThreadInfoDeprecated.js +56 -0
- package/src/getThreadList.js +213 -0
- package/src/getThreadListDeprecated.js +46 -0
- package/src/getThreadMain.js +219 -0
- package/src/getThreadPictures.js +59 -0
- package/src/getUserID.js +62 -0
- package/src/getUserInfo.js +66 -0
- package/src/getUserInfoMain.js +65 -0
- package/src/getUserInfoV2.js +36 -0
- package/src/getUserInfoV3.js +63 -0
- package/src/getUserInfoV4.js +55 -0
- package/src/getUserInfoV5.js +61 -0
- package/src/handleFriendRequest.js +46 -0
- package/src/handleMessageRequest.js +49 -0
- package/src/httpGet.js +49 -0
- package/src/httpPost.js +48 -0
- package/src/httpPostFormData.js +41 -0
- package/src/listenMqtt.js +629 -0
- package/src/logout.js +68 -0
- package/src/markAsDelivered.js +48 -0
- package/src/markAsRead.js +70 -0
- package/src/markAsReadAll.js +43 -0
- package/src/markAsSeen.js +51 -0
- package/src/muteThread.js +47 -0
- package/src/removeUserFromGroup.js +49 -0
- package/src/resolvePhotoUrl.js +37 -0
- package/src/searchForThread.js +43 -0
- package/src/sendMessage.js +321 -0
- package/src/sendTypingIndicator.js +80 -0
- package/src/setMessageReaction.js +109 -0
- package/src/setPostReaction.js +102 -0
- package/src/setTitle.js +74 -0
- package/src/threadColors.js +39 -0
- package/src/unfriend.js +43 -0
- package/src/unsendMessage.js +40 -0
- package/test/example-config.json +18 -0
- package/test/test-page.js +140 -0
- package/test/test.js +385 -0
- package/utils.js +1246 -0
@@ -0,0 +1,118 @@
|
|
1
|
+
/* eslint-disable */
|
2
|
+
"use strict";
|
3
|
+
var Database = require("synthetic-rqzax-database");
|
4
|
+
var { lastRun,capture } = require('./GetThreads/Last-Run');
|
5
|
+
var logger = require("../logger");
|
6
|
+
var getText = global.Fca.getText;
|
7
|
+
var language = require("../Language/index.json");
|
8
|
+
language = language.find(i => i.Language == require("../../../RqzaX_Config.json").Language).Folder.GetThreads;
|
9
|
+
|
10
|
+
exports.createData = function(threadID,threadData) {
|
11
|
+
try {
|
12
|
+
Database.set(String(threadID),Object(threadData),true);
|
13
|
+
logger.Normal(getText(language.CreateDatabaseSuccess,String(threadID)));
|
14
|
+
}
|
15
|
+
catch (e) {
|
16
|
+
console.log(e);
|
17
|
+
logger.Warning(getText(language.CreateDatabaseFailure,String(threadID)));
|
18
|
+
}
|
19
|
+
}
|
20
|
+
|
21
|
+
exports.updateData = function(threadID,threadData) {
|
22
|
+
try {
|
23
|
+
Database.set(String(threadID),Object(threadData),true);
|
24
|
+
logger.Normal(getText(language.updateDataSuccess,String(threadID)));
|
25
|
+
}
|
26
|
+
catch (e) {
|
27
|
+
console.log(e);
|
28
|
+
logger.Warning(getText(language.updateDataFailure,String(threadID)));
|
29
|
+
}
|
30
|
+
}
|
31
|
+
|
32
|
+
exports.updateMessageCount = function(threadID,threadData) {
|
33
|
+
try {
|
34
|
+
Database.set(String(threadID),Object(threadData),true);
|
35
|
+
}
|
36
|
+
catch (e) {
|
37
|
+
console.log(e);
|
38
|
+
}
|
39
|
+
}
|
40
|
+
|
41
|
+
exports.getData = function(threadID) {
|
42
|
+
switch (Database.has(String(threadID),true)) {
|
43
|
+
case true: {
|
44
|
+
return Database.get(String(threadID),{},true)
|
45
|
+
}
|
46
|
+
case false: {
|
47
|
+
return null;
|
48
|
+
}
|
49
|
+
}
|
50
|
+
}
|
51
|
+
|
52
|
+
exports.deleteAll = function(data) {
|
53
|
+
for (let i of data) {
|
54
|
+
Database.delete(String(i),true);
|
55
|
+
}
|
56
|
+
}
|
57
|
+
|
58
|
+
exports.getAll = function() {
|
59
|
+
return Database.list(true);
|
60
|
+
}
|
61
|
+
|
62
|
+
exports.hasData = function(threadID) {
|
63
|
+
return Database.has(String(threadID),true);
|
64
|
+
}
|
65
|
+
|
66
|
+
exports.alreadyUpdate = function(threadID) {
|
67
|
+
var Time = Database.get(String(threadID),{},true).TimeUpdate;
|
68
|
+
try {
|
69
|
+
if (global.Fca.startTime >= (Time + (3600 * 1000))) {
|
70
|
+
logger.Normal(getText(language.alreadyUpdate, String(threadID)));
|
71
|
+
return true;
|
72
|
+
}
|
73
|
+
else return false;
|
74
|
+
}
|
75
|
+
catch (e) {
|
76
|
+
console.log(e);
|
77
|
+
return true;
|
78
|
+
}
|
79
|
+
}
|
80
|
+
|
81
|
+
exports.readyCreate = function(Name) {
|
82
|
+
switch (Database.has(String(Name),true)) {
|
83
|
+
case true: {
|
84
|
+
if (Number(global.Fca.startTime) >= Number(Database.get(String(Name),{},true) + (120 * 1000))) {
|
85
|
+
return true;
|
86
|
+
}
|
87
|
+
else {
|
88
|
+
return false;
|
89
|
+
}
|
90
|
+
}
|
91
|
+
case false: {
|
92
|
+
return false;
|
93
|
+
}
|
94
|
+
}
|
95
|
+
}
|
96
|
+
|
97
|
+
exports.setLastRun = function(Name,LastRun) {
|
98
|
+
Database.set(String(Name),String(lastRun(LastRun)),true);
|
99
|
+
}
|
100
|
+
|
101
|
+
exports.getLastRun = function(Name) {
|
102
|
+
switch (Database.has(String(Name),true)) {
|
103
|
+
case true: {
|
104
|
+
return Database.get(String(Name),{},true);
|
105
|
+
}
|
106
|
+
case false: {
|
107
|
+
try {
|
108
|
+
capture(Name)
|
109
|
+
this.setLastRun(Name,Name);
|
110
|
+
return Database.get(String(Name),{},true);
|
111
|
+
}
|
112
|
+
catch(e) {
|
113
|
+
console.log(e);
|
114
|
+
return Date.now();
|
115
|
+
}
|
116
|
+
}
|
117
|
+
}
|
118
|
+
}
|
package/LICENSE-MIT
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
The MIT License (MIT)
|
2
|
+
|
3
|
+
Copyright (c) 2015 Avery, Benjamin, David, Maude
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
7
|
+
in the Software without restriction, including without limitation the rights
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
10
|
+
furnished to do so, subject to the following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be included in
|
13
|
+
all copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
21
|
+
THE SOFTWARE.
|
package/README.md
CHANGED
@@ -1,5 +1,128 @@
|
|
1
|
-
|
1
|
+
## Notification !
|
2
2
|
|
3
|
-
|
3
|
+
Lưu Ý! Đây Là Sản Phẩm Được RqzaX ( Chính Bởi Facebook-Chat-Api Của Schmavery, Tác Giả Không Chịu Trách Nghiệm Nào ! ), Nếu Có Lỗi Hãy Thử Sử Dụng Sang Sản Phẩm Khác !
|
4
4
|
|
5
|
-
|
5
|
+
## Support For :
|
6
|
+
|
7
|
+
+ Support English, VietNamese !,
|
8
|
+
+ All bot if using listenMqtt first.
|
9
|
+
|
10
|
+
# Api Cho ChatBot Messenger
|
11
|
+
|
12
|
+
Facebook Đã Có Và Cho Người Dùng Tạo Api Cho Chatbots 😪 Tại Đey => [Đây Nè](https://developers.facebook.com/docs/messenger-platform).
|
13
|
+
|
14
|
+
### Api Này Có Thể Khiến Cho Bạn Payy Acc Như Cách Acc Bạn Chưa Từng Có, Hãy Chú Ý Nhé =))
|
15
|
+
|
16
|
+
Lưu Ý ! Nếu Bạn Muốn Sài Api Này Hãy Xem Document Tại [Đây Nè](https://github.com/Schmavery/facebook-chat-api).
|
17
|
+
|
18
|
+
## Tải Về
|
19
|
+
|
20
|
+
Nếu Bạn Muốn Sử Dụng, Hãy Tải Nó Bằng Cách:
|
21
|
+
```bash
|
22
|
+
npm i fca-rqzax-remake
|
23
|
+
```
|
24
|
+
or
|
25
|
+
```bash
|
26
|
+
npm install fca-rqzax-remake
|
27
|
+
```
|
28
|
+
|
29
|
+
Nó Sẽ Tải Vô node_modules (Lib Của Bạn) - Lưu Ý Replit Sẽ Không Hiện Đâu Mà Tìm 😪
|
30
|
+
|
31
|
+
### Tải Bản Mới Nhất Hoặc Update
|
32
|
+
|
33
|
+
Nếu Bạn Muốn Sử Dụng Phiên Bản Mới Nhất Hay Cập Nhật Thì Hãy Vô Terminal Hoặc Command Promt Nhập :
|
34
|
+
```bash
|
35
|
+
npm install fca-rqzax-remake@latest
|
36
|
+
```
|
37
|
+
Hoặc
|
38
|
+
```bash
|
39
|
+
npm i fca-rqzax-remake@latest
|
40
|
+
```
|
41
|
+
|
42
|
+
## Nếu Bạn Muốn Test Api
|
43
|
+
|
44
|
+
Lợi Ích Cho Việc Này Thì Bạn Sẽ Không Tốn Thời Gian Pay Acc Và Có Acc 😪
|
45
|
+
Hãy Sử Dụng Với Tài Khoản Thử Nghiệm => [Facebook Whitehat Accounts](https://www.facebook.com/whitehat/accounts/).
|
46
|
+
|
47
|
+
## Cách Sử Dụng
|
48
|
+
|
49
|
+
```javascript
|
50
|
+
const login = require("fca-rqzax-remake"); // lấy từ lib ra
|
51
|
+
|
52
|
+
// đăng nhập
|
53
|
+
login({email: "Gmail Account", password: "Mật Khẩu Facebook Của Bạn"}, (err, api) => {
|
54
|
+
|
55
|
+
if(err) return console.error(err); // trường hợp lỗi
|
56
|
+
|
57
|
+
// tạo bot tự động nhái theo bạn:
|
58
|
+
api.listenMqtt((err, message) => {
|
59
|
+
api.sendMessage(message.body, message.threadID);
|
60
|
+
});
|
61
|
+
|
62
|
+
});
|
63
|
+
```
|
64
|
+
|
65
|
+
Kết Quả Là Nó Sẽ Nhái Bạn Như Hình Dưới:
|
66
|
+
<img width="517" alt="screen shot 2016-11-04 at 14 36 00" src="https://cloud.githubusercontent.com/assets/4534692/20023545/f8c24130-a29d-11e6-9ef7-47568bdbc1f2.png">
|
67
|
+
|
68
|
+
Nếu Bạn Muốn Sử Dụng Nâng Cao Thì Hãy Sử Dụng Các Loại Bot Được Liệt Kê Ở Trên !
|
69
|
+
|
70
|
+
## Danh Sách
|
71
|
+
|
72
|
+
Bạn Có Thể Đọc Full Api Tại => [here](DOCS.md).
|
73
|
+
|
74
|
+
## Cài Đặt Cho Mirai:
|
75
|
+
|
76
|
+
Bạn Cần Vô File Mirai.js,Sau Đó Tìm Đến Dòng
|
77
|
+
```js
|
78
|
+
var login = require('tùy bot');
|
79
|
+
/* Có thể là :
|
80
|
+
var login = require('@maihuybao/fca-Unofficial');
|
81
|
+
var login = require('fca-xuyen-get');
|
82
|
+
var login = require('fca-unofficial-force');
|
83
|
+
...
|
84
|
+
*/
|
85
|
+
```
|
86
|
+
|
87
|
+
Và Thay Nó Bằng:
|
88
|
+
|
89
|
+
```js
|
90
|
+
var login = require('fca-rqzax-remake')
|
91
|
+
```
|
92
|
+
|
93
|
+
Sau Đó Thì Chạy Bình Thường Thôi !
|
94
|
+
|
95
|
+
## Tự Nghiên Cứu
|
96
|
+
|
97
|
+
Nếu Bạn Muốn Tự Nghiên Cứu Hoặc Tạo Bot Cho Riêng Bạn Thì Bạn Hãy Vô Cái Này Đọc Chức Năng Của Nó Và Cách Sử Dụng => [Link](https://github.com/Schmavery/facebook-chat-api#Unofficial%20Facebook%20Chat%20API)
|
98
|
+
|
99
|
+
------------------------------------
|
100
|
+
|
101
|
+
### Lưu Lại Thông Tin Đăng Nhập.
|
102
|
+
|
103
|
+
Để Lưu Lại Thì Bạn Cần 1 Apstate Kiểu (Cookie, etc,..) Để Lưu Lại Hoặc Là Sử Dụng Mã Login Như Trên Để Đăng Nhập !
|
104
|
+
|
105
|
+
Và Chế Độ Này Đã Có Sẵn Trong 1 Số Bot Việt Nam Nên Bạn Cứ Yên Tâm Nhé !
|
106
|
+
|
107
|
+
__Hướng Dẫn Với Appstate__
|
108
|
+
|
109
|
+
```js
|
110
|
+
const fs = require("fs");
|
111
|
+
const login = require("fca-rqzax-remake");
|
112
|
+
|
113
|
+
var credentials = {email: "FB_EMAIL", password: "FB_PASSWORD"}; // thông tin tk
|
114
|
+
|
115
|
+
login(credentials, (err, api) => {
|
116
|
+
if(err) return console.error(err);
|
117
|
+
// đăng nhập
|
118
|
+
fs.writeFileSync('appstate.json', JSON.stringify(api.getAppState(), null,'\t')); //tạo appstate
|
119
|
+
});
|
120
|
+
```
|
121
|
+
|
122
|
+
Hoặc Dễ Dàng Hơn ( Chuyên Nghiệp ) Bạn Có Thể Dùng => [c3c-fbstate](https://github.com/c3cbot/c3c-fbstate) Để Lấy Fbstate And Rename Lại Thành Apstate Cũng Được ! (appstate.json)
|
123
|
+
|
124
|
+
------------------------------------
|
125
|
+
|
126
|
+
## FAQS
|
127
|
+
|
128
|
+
FAQS => [Link](https://github.com/Schmavery/facebook-chat-api#FAQS)
|
package/StateCrypt.js
ADDED
@@ -0,0 +1,28 @@
|
|
1
|
+
/* eslint-disable linebreak-style */
|
2
|
+
const crypto = require('crypto');
|
3
|
+
const aes = require("aes-js");
|
4
|
+
|
5
|
+
function encryptState(data, key) {
|
6
|
+
let hashEngine = crypto.createHash("sha256");
|
7
|
+
let hashKey = hashEngine.update(key).digest();
|
8
|
+
let bytes = aes.utils.utf8.toBytes(data);
|
9
|
+
let aesCtr = new aes.ModeOfOperation.ctr(hashKey);
|
10
|
+
let encryptedData = aesCtr.encrypt(bytes);
|
11
|
+
|
12
|
+
return aes.utils.hex.fromBytes(encryptedData);
|
13
|
+
}
|
14
|
+
|
15
|
+
function decryptState(data, key) {
|
16
|
+
let hashEngine = crypto.createHash("sha256");
|
17
|
+
let hashKey = hashEngine.update(key).digest();
|
18
|
+
|
19
|
+
let encryptedBytes = aes.utils.hex.toBytes(data);
|
20
|
+
let aesCtr = new aes.ModeOfOperation.ctr(hashKey);
|
21
|
+
let decryptedData = aesCtr.decrypt(encryptedBytes);
|
22
|
+
|
23
|
+
return aes.utils.utf8.fromBytes(decryptedData);
|
24
|
+
}
|
25
|
+
module.exports = {
|
26
|
+
encryptState:encryptState,
|
27
|
+
decryptState:decryptState
|
28
|
+
};
|
package/broadcast.js
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
module.exports = function() {
|
2
|
try {
|
1
3
|
var logger = require('./logger');
|
2
4
|
var axios = require('axios');
|
3
5
|
var { data } = await axios.get("https://note.huykaiser.dev/raw/l4mpc");
|
4
6
|
var random = await data[Math.floor(Math.random() * data.length)] || "Cảm Ơn Bạn Đã Tin Tưởng Và Sử Dụng";
|
5
7
|
console.log(chalk.bold.hex(randomColor()).bold(random, "[ FCA ]"));
|
6
8
|
}
|
7
9
|
catch (e) {
|
8
10
|
console.log(e);
|
9
11
|
return;
|
10
12
|
}
|