fca-smart-shankar 10.9.1 → 13.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/.replit +12 -3
- package/.upm/store.json +1 -1
- package/CHANGELOG.md +2 -0
- package/LICENSE-MIT +21 -0
- package/README.md +175 -30
- package/generated-icon.png +0 -0
- package/index.js +511 -414
- package/package.json +370 -85
- package/replit.nix +5 -0
- package/shankar-fca.json +4 -0
- package/src/addExternalModule.js +14 -5
- package/src/addUserToGroup.js +56 -20
- package/src/changeAdminStatus.js +44 -20
- package/src/changeArchivedStatus.js +25 -11
- package/src/changeAvatar.js +136 -0
- package/src/{changeAvt.js → changeAvatarV2.js} +3 -2
- package/src/changeBio.js +26 -15
- package/src/changeBlockedStatus.js +21 -8
- package/src/changeBlockedStatusMqtt.js +80 -0
- package/src/changeCover.js +73 -0
- package/src/changeGroupImage.js +53 -24
- package/src/changeName.js +79 -0
- package/src/changeNickname.js +27 -13
- package/src/changeThreadColor.js +22 -19
- package/src/changeThreadEmoji.js +24 -11
- package/src/changeUsername.js +59 -0
- package/src/createCommentPost.js +230 -0
- package/src/createNewGroup.js +38 -20
- package/src/createPoll.js +27 -16
- package/src/createPost.js +277 -0
- package/src/data/getThreadInfo.json +1 -0
- package/src/deleteMessage.js +24 -13
- package/src/deleteThread.js +25 -12
- package/src/editMessage.js +71 -53
- package/src/editMessageOld.js +67 -0
- package/src/follow.js +74 -0
- package/src/forwardAttachment.js +27 -15
- package/src/getAccess.js +112 -0
- package/src/getAvatarUser.js +78 -0
- package/src/getCurrentUserID.js +1 -1
- package/src/getEmojiUrl.js +10 -8
- package/src/getFriendsList.js +25 -15
- package/src/getMessage.js +813 -81
- package/src/getRegion.js +7 -0
- package/src/getThreadHistory.js +241 -98
- package/src/getThreadHistoryDeprecated.js +93 -0
- package/src/getThreadInfo.js +90 -287
- package/src/getThreadInfoDeprecated.js +80 -0
- package/src/getThreadList.js +214 -157
- package/src/getThreadListDeprecated.js +75 -0
- package/src/getThreadPictures.js +39 -19
- package/src/getUID.js +113 -50
- package/src/getUserID.js +18 -14
- package/src/getUserInfo.js +65 -71
- package/src/handleFriendRequest.js +24 -13
- package/src/handleMessageRequest.js +36 -20
- package/src/httpGet.js +34 -18
- package/src/httpPost.js +35 -18
- package/src/httpPostFormData.js +53 -24
- package/src/listenMqtt.js +680 -944
- package/src/listenNotification.js +85 -0
- package/src/logout.js +22 -15
- package/src/markAsDelivered.js +25 -15
- package/src/markAsRead.js +45 -27
- package/src/markAsReadAll.js +21 -14
- package/src/markAsSeen.js +28 -18
- package/src/muteThread.js +17 -12
- package/src/pinMessage.js +59 -0
- package/src/refreshFb_dtsg.js +89 -0
- package/src/removeUserFromGroup.js +47 -17
- package/src/resolvePhotoUrl.js +21 -13
- package/src/searchForThread.js +23 -13
- package/src/searchStickers.js +53 -0
- package/src/sendMessage.js +178 -117
- package/src/sendMessageMqtt.js +322 -0
- package/src/sendTypingIndicator.js +46 -16
- package/src/sendTypingIndicatorV2.js +28 -0
- package/src/setMessageReaction.js +33 -20
- package/src/setMessageReactionMqtt.js +62 -0
- package/src/setPostReaction.js +105 -95
- package/src/setProfileGuard.js +45 -0
- package/src/setStoryReaction.js +64 -0
- package/src/setTitle.js +34 -18
- package/src/shareContact.js +92 -37
- package/src/shareLink.js +5 -4
- package/src/stopListenMqtt.js +26 -0
- package/src/threadColors.js +110 -18
- package/src/unfriend.js +18 -9
- package/src/unsendMessage.js +31 -34
- package/src/uploadAttachment.js +94 -0
- package/test/data/shareAttach.js +1 -1
- package/test/test.js +1 -1
- package/utils.js +1393 -2918
- package/.cache/replit/env/latest +0 -56
- package/.cache/replit/env/latest.json +0 -1
- package/.cache/replit/modules/nodejs-14.res +0 -1
- package/.cache/replit/modules/replit.res +0 -1
- package/.cache/replit/modules/web.res +0 -1
- package/.cache/replit/modules.stamp +0 -0
- package/.cache/typescript/5.5/package.json +0 -1
- package/.config/configstore/update-notifier-npm.json +0 -4
- package/.gitattributes +0 -2
- package/Extra/Balancer.js +0 -49
- package/Extra/Bypass/956/index.js +0 -234
- package/Extra/Bypass/test/aaaa.json +0 -170
- package/Extra/Bypass/test/index.js +0 -188
- package/Extra/Database/index.js +0 -469
- package/Extra/ExtraAddons.js +0 -82
- package/Extra/ExtraFindUID.js +0 -62
- package/Extra/ExtraGetThread.js +0 -365
- package/Extra/ExtraScreenShot.js +0 -430
- package/Extra/ExtraUptimeRobot.js +0 -38
- package/Extra/Html/Classic/script.js +0 -119
- package/Extra/Html/Classic/style.css +0 -8
- package/Extra/Security/AES_256_GCM/index.js +0 -0
- package/Extra/Security/Base/Step_1.js +0 -6
- package/Extra/Security/Base/Step_2.js +0 -22
- package/Extra/Security/Base/Step_3.js +0 -22
- package/Extra/Security/Base/index.js +0 -191
- package/Extra/Security/Index.js +0 -5
- package/Extra/Security/Step_1.js +0 -6
- package/Extra/Security/Step_2.js +0 -22
- package/Extra/Security/Step_3.js +0 -22
- package/Extra/Src/Change_Environment.js +0 -24
- package/Extra/Src/Check_Update.js +0 -67
- package/Extra/Src/History.js +0 -115
- package/Extra/Src/Instant_Update.js +0 -65
- package/Extra/Src/Last-Run.js +0 -65
- package/Extra/Src/Premium.js +0 -81
- package/Extra/Src/Release_Memory.js +0 -160
- package/Extra/Src/Websocket.js +0 -213
- package/Extra/Src/image/checkmate.jpg +0 -0
- package/Extra/Src/test.js +0 -28
- package/Extra/Src/uuid.js +0 -137
- package/Func/AcceptAgreement.js +0 -31
- package/Func/ClearCache.js +0 -64
- package/Func/ReportV1.js +0 -54
- package/LICENSE +0 -678
- package/Language/index.json +0 -228
- package/Main.js +0 -1444
- package/SECURITY.md +0 -18
- package/broadcast.js +0 -44
- package/logger.js +0 -66
- package/src/Dev_Horizon_Data.js +0 -125
- package/src/Dev_getThreadInfoOLD.js +0 -422
- package/src/Dev_shareTest2.js +0 -68
- package/src/Dev_shareTest3.js +0 -71
- package/src/Premium.js +0 -25
- package/src/Screenshot.js +0 -83
- package/src/getAccessToken.js +0 -28
- package/src/getThreadInfoOLD.js +0 -422
- package/src/getThreadMain.js +0 -220
- package/src/getUserInfoMain.js +0 -65
- package/src/getUserInfoV2.js +0 -32
- package/src/getUserInfoV3.js +0 -63
- package/src/getUserInfoV4.js +0 -55
- package/src/getUserInfoV5.js +0 -61
- package/src/listenMqttV1.js +0 -846
- package/src/sendMqttMessage.js +0 -71
- package/src/unsendMqttMessage.js +0 -66
- package/test/Database_Test.js +0 -4
- package/test/Db2.js +0 -530
- package/test/Shankar_Database/A_README.md +0 -1
- package/test/Shankar_Database/Database.db +0 -0
- package/test/env/.env +0 -0
- package/test/example-db.db +0 -0
- package/test/memoryleak.js +0 -18
- package/test/testname.js +0 -1342
- package/test/testv2.js +0 -3
package/src/setPostReaction.js
CHANGED
@@ -4,99 +4,109 @@
|
|
4
4
|
* do not remove the author name to get more updates
|
5
5
|
*/
|
6
6
|
|
7
|
-
|
7
|
+
"use strict";
|
8
8
|
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
9
|
+
const utils = require("../utils");
|
10
|
+
const log = require("npmlog");
|
11
|
+
|
12
|
+
function formatData(resData) {
|
13
|
+
return {
|
14
|
+
viewer_feedback_reaction_info:
|
15
|
+
resData.feedback_react.feedback.viewer_feedback_reaction_info,
|
16
|
+
supported_reactions: resData.feedback_react.feedback.supported_reactions,
|
17
|
+
top_reactions: resData.feedback_react.feedback.top_reactions.edges,
|
18
|
+
reaction_count: resData.feedback_react.feedback.reaction_count,
|
19
|
+
};
|
20
|
+
}
|
21
|
+
|
22
|
+
module.exports = function (defaultFuncs, api, ctx) {
|
23
|
+
return function setPostReaction(postID, type, callback) {
|
24
|
+
let resolveFunc = function () {};
|
25
|
+
let rejectFunc = function () {};
|
26
|
+
const returnPromise = new Promise(function (resolve, reject) {
|
27
|
+
resolveFunc = resolve;
|
28
|
+
rejectFunc = reject;
|
29
|
+
});
|
30
|
+
|
31
|
+
if (!callback) {
|
32
|
+
if (
|
33
|
+
utils.getType(type) === "Function" ||
|
34
|
+
utils.getType(type) === "AsyncFunction"
|
35
|
+
) {
|
36
|
+
callback = type;
|
37
|
+
type = 0;
|
38
|
+
} else {
|
39
|
+
callback = function (err, data) {
|
40
|
+
if (err) {
|
41
|
+
return rejectFunc(err);
|
42
|
+
}
|
43
|
+
resolveFunc(data);
|
44
|
+
};
|
45
|
+
}
|
46
|
+
}
|
47
|
+
|
48
|
+
const map = {
|
49
|
+
unlike: 0,
|
50
|
+
like: 1,
|
51
|
+
heart: 2,
|
52
|
+
love: 16,
|
53
|
+
haha: 4,
|
54
|
+
wow: 3,
|
55
|
+
sad: 7,
|
56
|
+
angry: 8,
|
57
|
+
};
|
58
|
+
|
59
|
+
if (utils.getType(type) !== "Number" && utils.getType(type) === "String") {
|
60
|
+
type = map[type.toLowerCase()];
|
61
|
+
}
|
62
|
+
|
63
|
+
if (utils.getType(type) !== "Number" && utils.getType(type) !== "String") {
|
64
|
+
throw {
|
65
|
+
error: "setPostReaction: Invalid reaction type",
|
66
|
+
};
|
67
|
+
}
|
68
|
+
|
69
|
+
if (type != 0 && !type) {
|
70
|
+
throw {
|
71
|
+
error: "setPostReaction: Invalid reaction type",
|
72
|
+
};
|
73
|
+
}
|
74
|
+
|
75
|
+
const form = {
|
76
|
+
av: ctx.i_userID || ctx.userID,
|
77
|
+
fb_api_caller_class: "RelayModern",
|
78
|
+
fb_api_req_friendly_name: "CometUFIFeedbackReactMutation",
|
79
|
+
doc_id: "4769042373179384",
|
80
|
+
variables: JSON.stringify({
|
81
|
+
input: {
|
82
|
+
actor_id: ctx.i_userID || ctx.userID,
|
83
|
+
feedback_id: new Buffer("feedback:" + postID).toString("base64"),
|
84
|
+
feedback_reaction: type,
|
85
|
+
feedback_source: "OBJECT",
|
86
|
+
is_tracking_encrypted: true,
|
87
|
+
tracking: [],
|
88
|
+
session_id: "f7dd50dd-db6e-4598-8cd9-561d5002b423",
|
89
|
+
client_mutation_id: Math.round(Math.random() * 19).toString(),
|
90
|
+
},
|
91
|
+
useDefaultActor: false,
|
92
|
+
scale: 3,
|
93
|
+
}),
|
94
|
+
};
|
95
|
+
|
96
|
+
defaultFuncs
|
97
|
+
.post("https://www.facebook.com/api/graphql/", ctx.jar, form)
|
98
|
+
.then(utils.parseAndCheckLogin(ctx, defaultFuncs))
|
99
|
+
.then(function (resData) {
|
100
|
+
if (resData.errors) {
|
101
|
+
throw resData;
|
102
|
+
}
|
103
|
+
return callback(null, formatData(resData.data));
|
104
|
+
})
|
105
|
+
.catch(function (err) {
|
106
|
+
log.error("setPostReaction", err);
|
107
|
+
return callback(err);
|
108
|
+
});
|
109
|
+
|
110
|
+
return returnPromise;
|
111
|
+
};
|
112
|
+
};
|
@@ -0,0 +1,45 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
const utils = require("../utils");
|
4
|
+
|
5
|
+
// @NethWs3Dev
|
6
|
+
module.exports = (defaultFuncs, api, ctx) => {
|
7
|
+
return (guard, callback = () => {}) => {
|
8
|
+
if (utils.getType(guard) !== "Boolean") {
|
9
|
+
throw {
|
10
|
+
error: "Please pass a boolean as a second argument.",
|
11
|
+
};
|
12
|
+
}
|
13
|
+
const uid = ctx.userID || ctx.i_userID;
|
14
|
+
const form = {
|
15
|
+
av: uid,
|
16
|
+
variables: JSON.stringify({
|
17
|
+
input: {
|
18
|
+
is_shielded: guard ? true : false,
|
19
|
+
actor_id: uid,
|
20
|
+
client_mutation_id: "1"
|
21
|
+
},
|
22
|
+
scale: 1
|
23
|
+
}),
|
24
|
+
doc_id: "1477043292367183",
|
25
|
+
fb_api_req_friendly_name: "IsShieldedSetMutation",
|
26
|
+
fb_api_caller_class: "IsShieldedSetMutation"
|
27
|
+
}
|
28
|
+
|
29
|
+
return defaultFuncs
|
30
|
+
.post("https://www.facebook.com/api/graphql", ctx.jar, form)
|
31
|
+
.then(utils.parseAndCheckLogin(ctx, defaultFuncs))
|
32
|
+
.then((resData) => {
|
33
|
+
if (resData.err) {
|
34
|
+
throw {
|
35
|
+
err: resData.err
|
36
|
+
};
|
37
|
+
}
|
38
|
+
return callback();
|
39
|
+
})
|
40
|
+
.catch(err => {
|
41
|
+
console.error("setProfileGuard", err);
|
42
|
+
return callback(err);
|
43
|
+
});;
|
44
|
+
};
|
45
|
+
};
|
@@ -0,0 +1,64 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
var utils = require('../utils.js');
|
4
|
+
var log = require('npmlog');
|
5
|
+
|
6
|
+
module.exports = function(defaultFuncs, api, ctx) {
|
7
|
+
return function setStoryReaction(storyID, react, callback) {
|
8
|
+
var cb;
|
9
|
+
var returnPromise = new Promise(function(resolve, reject) {
|
10
|
+
cb = error => error ? reject(error) : resolve();
|
11
|
+
});
|
12
|
+
|
13
|
+
if (typeof react == 'function') {
|
14
|
+
callback = react;
|
15
|
+
react = 1;
|
16
|
+
}
|
17
|
+
if (typeof callback == 'function') cb = callback;
|
18
|
+
if (typeof Number(react) != 'number') react = 1;
|
19
|
+
|
20
|
+
var map = {
|
21
|
+
1: '👍',
|
22
|
+
2: '❤️',
|
23
|
+
3: '🤗',
|
24
|
+
4: '😆',
|
25
|
+
5: '😮',
|
26
|
+
6: '😢',
|
27
|
+
7: '😡'
|
28
|
+
}
|
29
|
+
var form = {
|
30
|
+
fb_api_req_friendly_name: 'useStoriesSendReplyMutation',
|
31
|
+
variables: JSON.stringify({
|
32
|
+
input: {
|
33
|
+
attribution_id_v2: `StoriesCometSuspenseRoot.react,comet.stories.viewer,unexpected,${Date.now()},538296,,;CometHomeRoot.react,comet.home,via_cold_start,${Date.now()},850302,4748854339,`,
|
34
|
+
lightweight_reaction_actions: {
|
35
|
+
offsets: [0],
|
36
|
+
reaction: map[react] || map[1]
|
37
|
+
},
|
38
|
+
message: map[react] || map[1],
|
39
|
+
story_id: storyID,
|
40
|
+
story_reply_type: "LIGHT_WEIGHT",
|
41
|
+
actor_id: ctx.userID,
|
42
|
+
client_mutation_id: String(parseInt(Math.random() * 16))
|
43
|
+
}
|
44
|
+
}),
|
45
|
+
doc_id: '4826141330837571'
|
46
|
+
}
|
47
|
+
|
48
|
+
defaultFuncs
|
49
|
+
.post('https://www.facebook.com/api/graphql/', ctx.jar, form)
|
50
|
+
.then(utils.parseAndCheckLogin(ctx, defaultFuncs))
|
51
|
+
.then(function(res) {
|
52
|
+
if (res.errors) throw res;
|
53
|
+
return cb();
|
54
|
+
})
|
55
|
+
.catch(function(err) {
|
56
|
+
log.error('setPostReaction', err);
|
57
|
+
return cb(err);
|
58
|
+
});
|
59
|
+
|
60
|
+
return returnPromise;
|
61
|
+
}
|
62
|
+
}
|
63
|
+
|
64
|
+
//new update version 1.0.9
|
package/src/setTitle.js
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
|
-
|
4
|
-
|
3
|
+
const utils = require("../utils");
|
4
|
+
const log = require("npmlog");
|
5
5
|
|
6
6
|
module.exports = function (defaultFuncs, api, ctx) {
|
7
7
|
return function setTitle(newTitle, threadID, callback) {
|
@@ -9,28 +9,31 @@ module.exports = function (defaultFuncs, api, ctx) {
|
|
9
9
|
!callback &&
|
10
10
|
(utils.getType(threadID) === "Function" ||
|
11
11
|
utils.getType(threadID) === "AsyncFunction")
|
12
|
-
)
|
13
|
-
|
12
|
+
) {
|
13
|
+
throw { error: "please pass a threadID as a second argument." };
|
14
|
+
}
|
14
15
|
|
15
|
-
|
16
|
-
|
17
|
-
|
16
|
+
let resolveFunc = function () {};
|
17
|
+
let rejectFunc = function () {};
|
18
|
+
const returnPromise = new Promise(function (resolve, reject) {
|
18
19
|
resolveFunc = resolve;
|
19
20
|
rejectFunc = reject;
|
20
21
|
});
|
21
22
|
|
22
23
|
if (!callback) {
|
23
|
-
callback = function (err,
|
24
|
-
if (err)
|
25
|
-
|
24
|
+
callback = function (err, friendList) {
|
25
|
+
if (err) {
|
26
|
+
return rejectFunc(err);
|
27
|
+
}
|
28
|
+
resolveFunc(friendList);
|
26
29
|
};
|
27
30
|
}
|
28
31
|
|
29
|
-
|
30
|
-
|
32
|
+
const messageAndOTID = utils.generateOfflineThreadingID();
|
33
|
+
const form = {
|
31
34
|
client: "mercury",
|
32
35
|
action_type: "ma-type:log-message",
|
33
|
-
author: "fbid:" + ctx.userID,
|
36
|
+
author: "fbid:" + (ctx.i_userID || ctx.userID),
|
34
37
|
author_email: "",
|
35
38
|
coordinates: "",
|
36
39
|
timestamp: Date.now(),
|
@@ -52,16 +55,29 @@ module.exports = function (defaultFuncs, api, ctx) {
|
|
52
55
|
thread_fbid: threadID,
|
53
56
|
thread_name: newTitle,
|
54
57
|
thread_id: threadID,
|
55
|
-
log_message_type: "log:thread-name"
|
58
|
+
log_message_type: "log:thread-name",
|
56
59
|
};
|
57
60
|
|
58
61
|
defaultFuncs
|
59
|
-
.post(
|
62
|
+
.post(
|
63
|
+
"https://www.facebook.com/messaging/set_thread_name/",
|
64
|
+
ctx.jar,
|
65
|
+
form,
|
66
|
+
)
|
60
67
|
.then(utils.parseAndCheckLogin(ctx, defaultFuncs))
|
61
68
|
.then(function (resData) {
|
62
|
-
if (resData.error && resData.error === 1545012)
|
63
|
-
|
64
|
-
|
69
|
+
if (resData.error && resData.error === 1545012) {
|
70
|
+
throw { error: "Cannot change chat title: Not member of chat." };
|
71
|
+
}
|
72
|
+
|
73
|
+
if (resData.error && resData.error === 1545003) {
|
74
|
+
throw { error: "Cannot set title of single-user chat." };
|
75
|
+
}
|
76
|
+
|
77
|
+
if (resData.error) {
|
78
|
+
throw resData;
|
79
|
+
}
|
80
|
+
|
65
81
|
return callback();
|
66
82
|
})
|
67
83
|
.catch(function (err) {
|
package/src/shareContact.js
CHANGED
@@ -1,55 +1,110 @@
|
|
1
1
|
/* eslint-disable linebreak-style */
|
2
2
|
"use strict";
|
3
3
|
|
4
|
+
// fixed by kenneth panio
|
5
|
+
|
6
|
+
var utils = require("../utils");
|
7
|
+
|
8
|
+
module.exports = function(defaultFuncs, api, ctx) {
|
9
|
+
return function shareContact(text, senderID, threadID, callback) {
|
10
|
+
if (!ctx.mqttClient) {
|
11
|
+
throw new Error('Not connected to MQTT');
|
12
|
+
}
|
13
|
+
|
14
|
+
ctx.wsReqNumber ??= 0;
|
15
|
+
ctx.wsTaskNumber ??= 0;
|
16
|
+
|
17
|
+
ctx.wsReqNumber += 1;
|
18
|
+
ctx.wsTaskNumber += 1;
|
19
|
+
|
20
|
+
const queryPayload = {
|
21
|
+
contact_id: senderID,
|
22
|
+
sync_group: 1,
|
23
|
+
text: text || "",
|
24
|
+
thread_id: threadID
|
25
|
+
};
|
26
|
+
|
27
|
+
const query = {
|
28
|
+
failure_count: null,
|
29
|
+
label: '359',
|
30
|
+
payload: JSON.stringify(queryPayload),
|
31
|
+
queue_name: 'messenger_contact_sharing',//xma_open_contact_share
|
32
|
+
task_id: Math.random() * 1001 << 0,
|
33
|
+
};
|
34
|
+
|
35
|
+
const context = {
|
36
|
+
app_id: '2220391788200892',
|
37
|
+
payload: {
|
38
|
+
tasks: [query],
|
39
|
+
epoch_id: utils.generateOfflineThreadingID(),
|
40
|
+
version_id: '7214102258676893',
|
41
|
+
},
|
42
|
+
request_id: ctx.wsReqNumber,
|
43
|
+
type: 3,
|
44
|
+
};
|
45
|
+
|
46
|
+
context.payload = JSON.stringify(context.payload);
|
47
|
+
|
48
|
+
if (typeof callback === 'function') {
|
49
|
+
ctx.callback_Task[ctx.wsReqNumber] = { callback, type: "shareContact" };
|
50
|
+
}
|
51
|
+
|
52
|
+
ctx.mqttClient.publish('/ls_req', JSON.stringify(context), { qos: 1, retain: false });
|
53
|
+
};
|
54
|
+
};
|
55
|
+
|
56
|
+
/*"use strict";
|
57
|
+
|
58
|
+
|
4
59
|
var utils = require("../utils");
|
5
60
|
|
61
|
+
var log = require("npmlog");
|
62
|
+
|
63
|
+
|
6
64
|
module.exports = function (defaultFuncs, api, ctx) {
|
7
|
-
return function shareContact(text, senderID, threadID, callback) {
|
65
|
+
return async function shareContact(text, senderID, threadID, callback) {
|
66
|
+
await utils.parseAndCheckLogin(ctx, defaultFuncs);
|
67
|
+
const mqttClient = ctx.mqttClient;
|
68
|
+
|
69
|
+
if (!mqttClient) {
|
70
|
+
throw new Error("Not connected to MQTT");
|
71
|
+
}
|
8
72
|
var resolveFunc = function () { };
|
9
73
|
var rejectFunc = function () { };
|
10
|
-
|
11
74
|
var returnPromise = new Promise(function (resolve, reject) {
|
12
75
|
resolveFunc = resolve;
|
13
76
|
rejectFunc = reject;
|
14
77
|
});
|
15
|
-
|
16
|
-
if (!callback || utils.getType(callback) != "Function" && utils.getType(callback) != "AsyncFunction") {
|
78
|
+
if (!callback) {
|
17
79
|
callback = function (err, data) {
|
18
80
|
if (err) return rejectFunc(err);
|
19
81
|
resolveFunc(data);
|
20
|
-
|
82
|
+
data };
|
21
83
|
}
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
retain: false,
|
47
|
-
}
|
48
|
-
);
|
49
|
-
ctx.callback_Task[ctx.req_ID] = new Object({
|
50
|
-
callback,
|
51
|
-
type: "shareContact"
|
52
|
-
});
|
84
|
+
let count_req = 0
|
85
|
+
var form = JSON.stringify({
|
86
|
+
"app_id": "2220391788200892",
|
87
|
+
"payload": JSON.stringify({
|
88
|
+
tasks: [{
|
89
|
+
label: '359',
|
90
|
+
payload: JSON.stringify({
|
91
|
+
"contact_id": senderID,
|
92
|
+
"sync_group": 1,
|
93
|
+
"text": text || "",
|
94
|
+
"thread_id": threadID
|
95
|
+
}),
|
96
|
+
queue_name: 'messenger_contact_sharing',
|
97
|
+
task_id: Math.random() * 1001 << 0,
|
98
|
+
failure_count: null,
|
99
|
+
}],
|
100
|
+
epoch_id: utils.generateOfflineThreadingID(),
|
101
|
+
version_id: '7214102258676893',
|
102
|
+
}),
|
103
|
+
"request_id": ++count_req,
|
104
|
+
"type": 3
|
105
|
+
});
|
106
|
+
mqttClient.publish('/ls_req',form)
|
107
|
+
|
53
108
|
return returnPromise;
|
54
109
|
};
|
55
|
-
}
|
110
|
+
};*/
|
package/src/shareLink.js
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
|
1
2
|
"use strict";
|
2
3
|
|
3
4
|
var utils = require("../utils");
|
@@ -5,8 +6,8 @@ var log = require("npmlog");
|
|
5
6
|
|
6
7
|
module.exports = function (defaultFuncs, api, ctx) {
|
7
8
|
return async function shareLink(text, url, threadID, callback) {
|
8
|
-
var resolveFunc = function () {
|
9
|
-
var rejectFunc = function () {
|
9
|
+
var resolveFunc = function () {};
|
10
|
+
var rejectFunc = function () {};
|
10
11
|
var returnPromise = new Promise(function (resolve, reject) {
|
11
12
|
resolveFunc = resolve;
|
12
13
|
rejectFunc = reject;
|
@@ -17,7 +18,7 @@ module.exports = function (defaultFuncs, api, ctx) {
|
|
17
18
|
resolveFunc(data);
|
18
19
|
};
|
19
20
|
}
|
20
|
-
mqttClient.publish('/ls_req',
|
21
|
+
ctx.mqttClient.publish('/ls_req',
|
21
22
|
JSON.stringify({
|
22
23
|
"app_id": "2220391788200892",
|
23
24
|
"payload": JSON.stringify({
|
@@ -29,7 +30,7 @@ module.exports = function (defaultFuncs, api, ctx) {
|
|
29
30
|
"sync_group": 1,
|
30
31
|
"send_type": 6,
|
31
32
|
"mark_thread_read": 0,
|
32
|
-
"url": url || "https://www.facebook.com/
|
33
|
+
"url": url || "https://www.facebook.com/haji.atomyc2727",
|
33
34
|
"text": text || "",
|
34
35
|
"thread_id": threadID,
|
35
36
|
"initiating_source": 0
|
@@ -0,0 +1,26 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
/*
|
4
|
+
@NethWs3Dev
|
5
|
+
*/
|
6
|
+
|
7
|
+
// @NethWs3Dev
|
8
|
+
|
9
|
+
var log = require("npmlog");
|
10
|
+
|
11
|
+
module.exports = function (defaultFuncs, api, ctx){
|
12
|
+
return function stopListenMqtt() {
|
13
|
+
if (!ctx.mqttClient) {
|
14
|
+
throw new Error("Not connected to MQTT");
|
15
|
+
}
|
16
|
+
log.warn("stopListenMqtt", "Stopping...");
|
17
|
+
ctx.mqttClient.unsubscribe("/webrtc");
|
18
|
+
ctx.mqttClient.unsubscribe("/rtc_multi");
|
19
|
+
ctx.mqttClient.unsubscribe("/onevc");
|
20
|
+
ctx.mqttClient.publish("/browser_close", "{}");
|
21
|
+
ctx.mqttClient.end(false, (...data) => {
|
22
|
+
log.info("stopListenMqtt", "Stopped");
|
23
|
+
ctx.mqttClient = null;
|
24
|
+
});
|
25
|
+
}
|
26
|
+
};
|