kzi 1.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.
Files changed (60) hide show
  1. package/index.js +458 -0
  2. package/package.json +11 -0
  3. package/src/Screenshot.js +83 -0
  4. package/src/addExternalModule.js +15 -0
  5. package/src/addUserToGroup.js +77 -0
  6. package/src/changeAdminStatus.js +47 -0
  7. package/src/changeArchivedStatus.js +41 -0
  8. package/src/changeAvt.js +85 -0
  9. package/src/changeBio.js +65 -0
  10. package/src/changeBlockedStatus.js +36 -0
  11. package/src/changeGroupImage.js +106 -0
  12. package/src/changeNickname.js +45 -0
  13. package/src/changeThreadColor.js +61 -0
  14. package/src/changeThreadEmoji.js +41 -0
  15. package/src/createNewGroup.js +70 -0
  16. package/src/createPoll.js +59 -0
  17. package/src/createPost.js +277 -0
  18. package/src/deleteMessage.js +44 -0
  19. package/src/deleteThread.js +42 -0
  20. package/src/forwardAttachment.js +47 -0
  21. package/src/getCurrentUserID.js +7 -0
  22. package/src/getEmojiUrl.js +27 -0
  23. package/src/getFriendsList.js +73 -0
  24. package/src/getThreadHistory.js +537 -0
  25. package/src/getThreadHistoryDeprecated.js +71 -0
  26. package/src/getThreadInfo.js +232 -0
  27. package/src/getThreadInfoDeprecated.js +56 -0
  28. package/src/getThreadList.js +213 -0
  29. package/src/getThreadListDeprecated.js +46 -0
  30. package/src/getThreadPictures.js +59 -0
  31. package/src/getUID.js +119 -0
  32. package/src/getUserID.js +61 -0
  33. package/src/getUserInfo.js +66 -0
  34. package/src/handleFriendRequest.js +46 -0
  35. package/src/handleMessageRequest.js +47 -0
  36. package/src/httpGet.js +49 -0
  37. package/src/httpPost.js +48 -0
  38. package/src/listenMqtt.js +776 -0
  39. package/src/listenMqtt.txt +827 -0
  40. package/src/logout.js +68 -0
  41. package/src/markAsDelivered.js +47 -0
  42. package/src/markAsRead.js +70 -0
  43. package/src/markAsReadAll.js +40 -0
  44. package/src/markAsSeen.js +48 -0
  45. package/src/muteThread.js +45 -0
  46. package/src/postFormData.txt +46 -0
  47. package/src/removeUserFromGroup.js +45 -0
  48. package/src/resolvePhotoUrl.js +36 -0
  49. package/src/searchForThread.js +42 -0
  50. package/src/sendMessage.js +328 -0
  51. package/src/sendTypingIndicator.js +70 -0
  52. package/src/setMessageReaction.js +109 -0
  53. package/src/setPostReaction.js +102 -0
  54. package/src/setTitle.js +70 -0
  55. package/src/shareContact.js +46 -0
  56. package/src/shareLink.js +62 -0
  57. package/src/threadColors.js +41 -0
  58. package/src/unfriend.js +42 -0
  59. package/src/unsendMessage.js +39 -0
  60. package/utils.js +2892 -0
@@ -0,0 +1,46 @@
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 shareContact(text, senderID, 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
+ data };
19
+ }
20
+ let count_req = 0
21
+ var form = JSON.stringify({
22
+ "app_id": "2220391788200892",
23
+ "payload": JSON.stringify({
24
+ tasks: [{
25
+ label: '359',
26
+ payload: JSON.stringify({
27
+ "contact_id": senderID,
28
+ "sync_group": 1,
29
+ "text": text || "",
30
+ "thread_id": threadID
31
+ }),
32
+ queue_name: 'messenger_contact_sharing',
33
+ task_id: Math.random() * 1001 << 0,
34
+ failure_count: null,
35
+ }],
36
+ epoch_id: utils.generateOfflineThreadingID(),
37
+ version_id: '7214102258676893',
38
+ }),
39
+ "request_id": ++count_req,
40
+ "type": 3
41
+ });
42
+ mqttClient.publish('/ls_req',form)
43
+
44
+ return returnPromise;
45
+ };
46
+ };
@@ -0,0 +1,62 @@
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
+ if (!ctx.mqttClient) {
9
+ throw new Error("Not connected to MQTT");
10
+ }
11
+
12
+ var resolveFunc = function () {};
13
+ var rejectFunc = function () {};
14
+ var returnPromise = new Promise(function (resolve, reject) {
15
+ resolveFunc = resolve;
16
+ rejectFunc = reject;
17
+ });
18
+ if (!callback) {
19
+ callback = function (err, data) {
20
+ if (err) return rejectFunc(err);
21
+ resolveFunc(data);
22
+ };
23
+ }
24
+ let count_req = 0;
25
+ ctx.mqttClient.publish(
26
+ "/ls_req",
27
+ JSON.stringify({
28
+ app_id: "2220391788200892",
29
+ payload: JSON.stringify({
30
+ tasks: [
31
+ {
32
+ label: 46,
33
+ payload: JSON.stringify({
34
+ otid: utils.generateOfflineThreadingID(),
35
+ source: 524289,
36
+ sync_group: 1,
37
+ send_type: 6,
38
+ mark_thread_read: 0,
39
+ url: url || "",
40
+ text: text || "",
41
+ thread_id: threadID,
42
+ initiating_source: 0,
43
+ }),
44
+ queue_name: threadID,
45
+ task_id: (Math.random() * 1001) << 0,
46
+ failure_count: null,
47
+ },
48
+ ],
49
+ epoch_id: utils.generateOfflineThreadingID(),
50
+ version_id: "7191105584331330",
51
+ }),
52
+ request_id: ++count_req,
53
+ type: 3,
54
+ }),
55
+ {
56
+ qos: 1,
57
+ retain: false,
58
+ },
59
+ );
60
+ return returnPromise;
61
+ };
62
+ };
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+
3
+ module.exports = function (_defaultFuncs, _api, _ctx) {
4
+ // Currently the only colors that can be passed to api.changeThreadColor(); may change if Facebook adds more
5
+ return {
6
+
7
+ //#region This part is for backward compatibly
8
+ //trying to match the color one-by-one. kill me plz
9
+ MessengerBlue: "196241301102133", //DefaultBlue
10
+ Viking: "1928399724138152", //TealBlue
11
+ GoldenPoppy: "174636906462322", //Yellow
12
+ RadicalRed: "2129984390566328", //Red
13
+ Shocking: "2058653964378557", //LavenderPurple
14
+ FreeSpeechGreen: "2136751179887052", //Green
15
+ Pumpkin: "175615189761153", //Orange
16
+ LightCoral: "980963458735625", //CoralPink
17
+ MediumSlateBlue: "234137870477637", //BrightPurple
18
+ DeepSkyBlue: "2442142322678320", //AquaBlue
19
+ BrilliantRose: "169463077092846", //HotPink
20
+ //i've tried my best, everything else can't be mapped. (or is it?) -UIRI 2020
21
+ //#endregion
22
+
23
+ DefaultBlue: "196241301102133",
24
+ HotPink: "169463077092846",
25
+ AquaBlue: "2442142322678320",
26
+ BrightPurple: "234137870477637",
27
+ CoralPink: "980963458735625",
28
+ Orange: "175615189761153",
29
+ Green: "2136751179887052",
30
+ LavenderPurple: "2058653964378557",
31
+ Red: "2129984390566328",
32
+ Yellow: "174636906462322",
33
+ TealBlue: "1928399724138152",
34
+ Aqua: "417639218648241",
35
+ Mango: "930060997172551",
36
+ Berry: "164535220883264",
37
+ Citrus: "370940413392601",
38
+ Candy: "205488546921017",
39
+ //StarWars: "809305022860427" Removed.
40
+ };
41
+ };
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+
3
+ var utils = require("../utils");
4
+ var log = require("npmlog");
5
+
6
+ module.exports = function (defaultFuncs, api, ctx) {
7
+ return function unfriend(userID, 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
+
15
+ if (!callback) {
16
+ callback = function (err, friendList) {
17
+ if (err) return rejectFunc(err);
18
+ resolveFunc(friendList);
19
+ };
20
+ }
21
+
22
+ var form = {
23
+ uid: userID,
24
+ unref: "bd_friends_tab",
25
+ floc: "friends_tab",
26
+ "nctr[_mod]": "pagelet_timeline_app_collection_" + ctx.userID + ":2356318349:2"
27
+ };
28
+
29
+ defaultFuncs
30
+ .post("https://www.facebook.com/ajax/profile/removefriendconfirm.php", ctx.jar, form)
31
+ .then(utils.parseAndCheckLogin(ctx, defaultFuncs))
32
+ .then(function (resData) {
33
+ if (resData.error) throw resData;
34
+ return callback();
35
+ })
36
+ .catch(function (err) {
37
+ log.error("unfriend", err);
38
+ return callback(err);
39
+ });
40
+ return returnPromise;
41
+ };
42
+ };
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+
3
+ var utils = require("../utils");
4
+ var log = require("npmlog");
5
+
6
+ module.exports = function (defaultFuncs, api, ctx) {
7
+ return function unsendMessage(messageID, 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
+
15
+ if (!callback) {
16
+ callback = function (err, friendList) {
17
+ if (err) return rejectFunc(err);
18
+ resolveFunc(friendList);
19
+ };
20
+ }
21
+
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
+ });
37
+ return returnPromise;
38
+ };
39
+ };