fca-smart-shankar 10.9.1 → 12.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 (363) hide show
  1. package/.cache/nix/binary-cache-v6.sqlite +0 -0
  2. package/.cache/replit/env/latest +117 -48
  3. package/.cache/replit/env/latest.json +1 -1
  4. package/.cache/replit/modules/nix.res +1 -0
  5. package/.cache/replit/modules/nodejs-20.res +1 -0
  6. package/.cache/replit/nix/env.json +1 -0
  7. package/.cache/typescript/5.6/node_modules/.package-lock.json +171 -0
  8. package/.cache/typescript/5.6/node_modules/@types/bluebird/LICENSE +21 -0
  9. package/.cache/typescript/5.6/node_modules/@types/bluebird/README.md +15 -0
  10. package/.cache/typescript/5.6/node_modules/@types/bluebird/index.d.ts +1365 -0
  11. package/.cache/typescript/5.6/node_modules/@types/bluebird/package.json +25 -0
  12. package/.cache/typescript/5.6/node_modules/@types/caseless/LICENSE +21 -0
  13. package/.cache/typescript/5.6/node_modules/@types/caseless/README.md +48 -0
  14. package/.cache/typescript/5.6/node_modules/@types/caseless/index.d.ts +29 -0
  15. package/.cache/typescript/5.6/node_modules/@types/caseless/package.json +35 -0
  16. package/.cache/typescript/5.6/node_modules/@types/cheerio/LICENSE +21 -0
  17. package/.cache/typescript/5.6/node_modules/@types/cheerio/README.md +15 -0
  18. package/.cache/typescript/5.6/node_modules/@types/cheerio/index.d.ts +318 -0
  19. package/.cache/typescript/5.6/node_modules/@types/cheerio/package.json +71 -0
  20. package/.cache/typescript/5.6/node_modules/@types/mocha/LICENSE +21 -0
  21. package/.cache/typescript/5.6/node_modules/@types/mocha/README.md +15 -0
  22. package/.cache/typescript/5.6/node_modules/@types/mocha/index.d.ts +2929 -0
  23. package/.cache/typescript/5.6/node_modules/@types/mocha/package.json +56 -0
  24. package/.cache/typescript/5.6/node_modules/@types/node/LICENSE +21 -0
  25. package/.cache/typescript/5.6/node_modules/@types/node/README.md +15 -0
  26. package/.cache/typescript/5.6/node_modules/@types/node/assert/strict.d.ts +8 -0
  27. package/.cache/typescript/5.6/node_modules/@types/node/assert.d.ts +1040 -0
  28. package/.cache/typescript/5.6/node_modules/@types/node/async_hooks.d.ts +541 -0
  29. package/.cache/typescript/5.6/node_modules/@types/node/buffer.buffer.d.ts +385 -0
  30. package/.cache/typescript/5.6/node_modules/@types/node/buffer.d.ts +1933 -0
  31. package/.cache/typescript/5.6/node_modules/@types/node/child_process.d.ts +1549 -0
  32. package/.cache/typescript/5.6/node_modules/@types/node/cluster.d.ts +579 -0
  33. package/.cache/typescript/5.6/node_modules/@types/node/compatibility/disposable.d.ts +16 -0
  34. package/.cache/typescript/5.6/node_modules/@types/node/compatibility/index.d.ts +9 -0
  35. package/.cache/typescript/5.6/node_modules/@types/node/compatibility/indexable.d.ts +23 -0
  36. package/.cache/typescript/5.6/node_modules/@types/node/compatibility/iterators.d.ts +21 -0
  37. package/.cache/typescript/5.6/node_modules/@types/node/console.d.ts +452 -0
  38. package/.cache/typescript/5.6/node_modules/@types/node/constants.d.ts +19 -0
  39. package/.cache/typescript/5.6/node_modules/@types/node/crypto.d.ts +4475 -0
  40. package/.cache/typescript/5.6/node_modules/@types/node/dgram.d.ts +596 -0
  41. package/.cache/typescript/5.6/node_modules/@types/node/diagnostics_channel.d.ts +554 -0
  42. package/.cache/typescript/5.6/node_modules/@types/node/dns/promises.d.ts +476 -0
  43. package/.cache/typescript/5.6/node_modules/@types/node/dns.d.ts +865 -0
  44. package/.cache/typescript/5.6/node_modules/@types/node/dom-events.d.ts +124 -0
  45. package/.cache/typescript/5.6/node_modules/@types/node/domain.d.ts +170 -0
  46. package/.cache/typescript/5.6/node_modules/@types/node/events.d.ts +931 -0
  47. package/.cache/typescript/5.6/node_modules/@types/node/fs/promises.d.ts +1275 -0
  48. package/.cache/typescript/5.6/node_modules/@types/node/fs.d.ts +4396 -0
  49. package/.cache/typescript/5.6/node_modules/@types/node/globals.d.ts +566 -0
  50. package/.cache/typescript/5.6/node_modules/@types/node/globals.typedarray.d.ts +21 -0
  51. package/.cache/typescript/5.6/node_modules/@types/node/http.d.ts +1958 -0
  52. package/.cache/typescript/5.6/node_modules/@types/node/http2.d.ts +2558 -0
  53. package/.cache/typescript/5.6/node_modules/@types/node/https.d.ts +543 -0
  54. package/.cache/typescript/5.6/node_modules/@types/node/index.d.ts +92 -0
  55. package/.cache/typescript/5.6/node_modules/@types/node/inspector.d.ts +3966 -0
  56. package/.cache/typescript/5.6/node_modules/@types/node/module.d.ts +402 -0
  57. package/.cache/typescript/5.6/node_modules/@types/node/net.d.ts +1001 -0
  58. package/.cache/typescript/5.6/node_modules/@types/node/os.d.ts +495 -0
  59. package/.cache/typescript/5.6/node_modules/@types/node/package.json +220 -0
  60. package/.cache/typescript/5.6/node_modules/@types/node/path.d.ts +200 -0
  61. package/.cache/typescript/5.6/node_modules/@types/node/perf_hooks.d.ts +965 -0
  62. package/.cache/typescript/5.6/node_modules/@types/node/process.d.ts +1963 -0
  63. package/.cache/typescript/5.6/node_modules/@types/node/punycode.d.ts +117 -0
  64. package/.cache/typescript/5.6/node_modules/@types/node/querystring.d.ts +153 -0
  65. package/.cache/typescript/5.6/node_modules/@types/node/readline/promises.d.ts +162 -0
  66. package/.cache/typescript/5.6/node_modules/@types/node/readline.d.ts +589 -0
  67. package/.cache/typescript/5.6/node_modules/@types/node/repl.d.ts +430 -0
  68. package/.cache/typescript/5.6/node_modules/@types/node/sea.d.ts +153 -0
  69. package/.cache/typescript/5.6/node_modules/@types/node/sqlite.d.ts +213 -0
  70. package/.cache/typescript/5.6/node_modules/@types/node/stream/consumers.d.ts +12 -0
  71. package/.cache/typescript/5.6/node_modules/@types/node/stream/promises.d.ts +90 -0
  72. package/.cache/typescript/5.6/node_modules/@types/node/stream/web.d.ts +609 -0
  73. package/.cache/typescript/5.6/node_modules/@types/node/stream.d.ts +1726 -0
  74. package/.cache/typescript/5.6/node_modules/@types/node/string_decoder.d.ts +67 -0
  75. package/.cache/typescript/5.6/node_modules/@types/node/test.d.ts +2248 -0
  76. package/.cache/typescript/5.6/node_modules/@types/node/timers/promises.d.ts +97 -0
  77. package/.cache/typescript/5.6/node_modules/@types/node/timers.d.ts +240 -0
  78. package/.cache/typescript/5.6/node_modules/@types/node/tls.d.ts +1226 -0
  79. package/.cache/typescript/5.6/node_modules/@types/node/trace_events.d.ts +197 -0
  80. package/.cache/typescript/5.6/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +385 -0
  81. package/.cache/typescript/5.6/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +19 -0
  82. package/.cache/typescript/5.6/node_modules/@types/node/ts5.6/index.d.ts +92 -0
  83. package/.cache/typescript/5.6/node_modules/@types/node/tty.d.ts +208 -0
  84. package/.cache/typescript/5.6/node_modules/@types/node/url.d.ts +972 -0
  85. package/.cache/typescript/5.6/node_modules/@types/node/util.d.ts +2371 -0
  86. package/.cache/typescript/5.6/node_modules/@types/node/v8.d.ts +808 -0
  87. package/.cache/typescript/5.6/node_modules/@types/node/vm.d.ts +976 -0
  88. package/.cache/typescript/5.6/node_modules/@types/node/wasi.d.ts +181 -0
  89. package/.cache/typescript/5.6/node_modules/@types/node/worker_threads.d.ts +745 -0
  90. package/.cache/typescript/5.6/node_modules/@types/node/zlib.d.ts +539 -0
  91. package/.cache/typescript/5.6/node_modules/@types/request/LICENSE +21 -0
  92. package/.cache/typescript/5.6/node_modules/@types/request/README.md +15 -0
  93. package/.cache/typescript/5.6/node_modules/@types/request/index.d.ts +395 -0
  94. package/.cache/typescript/5.6/node_modules/@types/request/package.json +70 -0
  95. package/.cache/typescript/5.6/node_modules/@types/tough-cookie/LICENSE +21 -0
  96. package/.cache/typescript/5.6/node_modules/@types/tough-cookie/README.md +15 -0
  97. package/.cache/typescript/5.6/node_modules/@types/tough-cookie/index.d.ts +321 -0
  98. package/.cache/typescript/5.6/node_modules/@types/tough-cookie/package.json +35 -0
  99. package/.cache/typescript/5.6/node_modules/asynckit/LICENSE +21 -0
  100. package/.cache/typescript/5.6/node_modules/asynckit/README.md +233 -0
  101. package/.cache/typescript/5.6/node_modules/asynckit/bench.js +76 -0
  102. package/.cache/typescript/5.6/node_modules/asynckit/index.js +6 -0
  103. package/.cache/typescript/5.6/node_modules/asynckit/lib/abort.js +29 -0
  104. package/.cache/typescript/5.6/node_modules/asynckit/lib/async.js +34 -0
  105. package/.cache/typescript/5.6/node_modules/asynckit/lib/defer.js +26 -0
  106. package/.cache/typescript/5.6/node_modules/asynckit/lib/iterate.js +75 -0
  107. package/.cache/typescript/5.6/node_modules/asynckit/lib/readable_asynckit.js +91 -0
  108. package/.cache/typescript/5.6/node_modules/asynckit/lib/readable_parallel.js +25 -0
  109. package/.cache/typescript/5.6/node_modules/asynckit/lib/readable_serial.js +25 -0
  110. package/.cache/typescript/5.6/node_modules/asynckit/lib/readable_serial_ordered.js +29 -0
  111. package/.cache/typescript/5.6/node_modules/asynckit/lib/state.js +37 -0
  112. package/.cache/typescript/5.6/node_modules/asynckit/lib/streamify.js +141 -0
  113. package/.cache/typescript/5.6/node_modules/asynckit/lib/terminator.js +29 -0
  114. package/.cache/typescript/5.6/node_modules/asynckit/package.json +63 -0
  115. package/.cache/typescript/5.6/node_modules/asynckit/parallel.js +43 -0
  116. package/.cache/typescript/5.6/node_modules/asynckit/serial.js +17 -0
  117. package/.cache/typescript/5.6/node_modules/asynckit/serialOrdered.js +75 -0
  118. package/.cache/typescript/5.6/node_modules/asynckit/stream.js +21 -0
  119. package/.cache/typescript/5.6/node_modules/combined-stream/License +19 -0
  120. package/.cache/typescript/5.6/node_modules/combined-stream/Readme.md +138 -0
  121. package/.cache/typescript/5.6/node_modules/combined-stream/lib/combined_stream.js +208 -0
  122. package/.cache/typescript/5.6/node_modules/combined-stream/package.json +25 -0
  123. package/.cache/typescript/5.6/node_modules/combined-stream/yarn.lock +17 -0
  124. package/.cache/typescript/5.6/node_modules/delayed-stream/License +19 -0
  125. package/.cache/typescript/5.6/node_modules/delayed-stream/Makefile +7 -0
  126. package/.cache/typescript/5.6/node_modules/delayed-stream/Readme.md +141 -0
  127. package/.cache/typescript/5.6/node_modules/delayed-stream/lib/delayed_stream.js +107 -0
  128. package/.cache/typescript/5.6/node_modules/delayed-stream/package.json +27 -0
  129. package/.cache/typescript/5.6/node_modules/form-data/License +19 -0
  130. package/.cache/typescript/5.6/node_modules/form-data/Readme.md +350 -0
  131. package/.cache/typescript/5.6/node_modules/form-data/index.d.ts +51 -0
  132. package/.cache/typescript/5.6/node_modules/form-data/lib/browser.js +2 -0
  133. package/.cache/typescript/5.6/node_modules/form-data/lib/form_data.js +484 -0
  134. package/.cache/typescript/5.6/node_modules/form-data/lib/populate.js +10 -0
  135. package/.cache/typescript/5.6/node_modules/form-data/package.json +72 -0
  136. package/.cache/typescript/5.6/node_modules/mime-db/HISTORY.md +507 -0
  137. package/.cache/typescript/5.6/node_modules/mime-db/LICENSE +23 -0
  138. package/.cache/typescript/5.6/node_modules/mime-db/README.md +100 -0
  139. package/.cache/typescript/5.6/node_modules/mime-db/db.json +8519 -0
  140. package/.cache/typescript/5.6/node_modules/mime-db/index.js +12 -0
  141. package/.cache/typescript/5.6/node_modules/mime-db/package.json +60 -0
  142. package/.cache/typescript/5.6/node_modules/mime-types/HISTORY.md +397 -0
  143. package/.cache/typescript/5.6/node_modules/mime-types/LICENSE +23 -0
  144. package/.cache/typescript/5.6/node_modules/mime-types/README.md +113 -0
  145. package/.cache/typescript/5.6/node_modules/mime-types/index.js +188 -0
  146. package/.cache/typescript/5.6/node_modules/mime-types/package.json +44 -0
  147. package/.cache/typescript/5.6/node_modules/safe-buffer/LICENSE +21 -0
  148. package/.cache/typescript/5.6/node_modules/safe-buffer/README.md +584 -0
  149. package/.cache/typescript/5.6/node_modules/safe-buffer/index.d.ts +187 -0
  150. package/.cache/typescript/5.6/node_modules/safe-buffer/index.js +65 -0
  151. package/.cache/typescript/5.6/node_modules/safe-buffer/package.json +51 -0
  152. package/.cache/typescript/5.6/node_modules/types-registry/README.md +2 -0
  153. package/.cache/typescript/5.6/node_modules/types-registry/index.json +1 -0
  154. package/.cache/typescript/5.6/node_modules/types-registry/package.json +20 -0
  155. package/.cache/typescript/5.6/node_modules/undici-types/LICENSE +21 -0
  156. package/.cache/typescript/5.6/node_modules/undici-types/README.md +6 -0
  157. package/.cache/typescript/5.6/node_modules/undici-types/agent.d.ts +31 -0
  158. package/.cache/typescript/5.6/node_modules/undici-types/api.d.ts +43 -0
  159. package/.cache/typescript/5.6/node_modules/undici-types/balanced-pool.d.ts +29 -0
  160. package/.cache/typescript/5.6/node_modules/undici-types/cache.d.ts +36 -0
  161. package/.cache/typescript/5.6/node_modules/undici-types/client.d.ts +108 -0
  162. package/.cache/typescript/5.6/node_modules/undici-types/connector.d.ts +34 -0
  163. package/.cache/typescript/5.6/node_modules/undici-types/content-type.d.ts +21 -0
  164. package/.cache/typescript/5.6/node_modules/undici-types/cookies.d.ts +28 -0
  165. package/.cache/typescript/5.6/node_modules/undici-types/diagnostics-channel.d.ts +66 -0
  166. package/.cache/typescript/5.6/node_modules/undici-types/dispatcher.d.ts +255 -0
  167. package/.cache/typescript/5.6/node_modules/undici-types/env-http-proxy-agent.d.ts +21 -0
  168. package/.cache/typescript/5.6/node_modules/undici-types/errors.d.ts +149 -0
  169. package/.cache/typescript/5.6/node_modules/undici-types/eventsource.d.ts +61 -0
  170. package/.cache/typescript/5.6/node_modules/undici-types/fetch.d.ts +209 -0
  171. package/.cache/typescript/5.6/node_modules/undici-types/file.d.ts +39 -0
  172. package/.cache/typescript/5.6/node_modules/undici-types/filereader.d.ts +54 -0
  173. package/.cache/typescript/5.6/node_modules/undici-types/formdata.d.ts +108 -0
  174. package/.cache/typescript/5.6/node_modules/undici-types/global-dispatcher.d.ts +9 -0
  175. package/.cache/typescript/5.6/node_modules/undici-types/global-origin.d.ts +7 -0
  176. package/.cache/typescript/5.6/node_modules/undici-types/handlers.d.ts +15 -0
  177. package/.cache/typescript/5.6/node_modules/undici-types/header.d.ts +4 -0
  178. package/.cache/typescript/5.6/node_modules/undici-types/index.d.ts +71 -0
  179. package/.cache/typescript/5.6/node_modules/undici-types/interceptors.d.ts +17 -0
  180. package/.cache/typescript/5.6/node_modules/undici-types/mock-agent.d.ts +50 -0
  181. package/.cache/typescript/5.6/node_modules/undici-types/mock-client.d.ts +25 -0
  182. package/.cache/typescript/5.6/node_modules/undici-types/mock-errors.d.ts +12 -0
  183. package/.cache/typescript/5.6/node_modules/undici-types/mock-interceptor.d.ts +93 -0
  184. package/.cache/typescript/5.6/node_modules/undici-types/mock-pool.d.ts +25 -0
  185. package/.cache/typescript/5.6/node_modules/undici-types/package.json +55 -0
  186. package/.cache/typescript/5.6/node_modules/undici-types/patch.d.ts +33 -0
  187. package/.cache/typescript/5.6/node_modules/undici-types/pool-stats.d.ts +19 -0
  188. package/.cache/typescript/5.6/node_modules/undici-types/pool.d.ts +39 -0
  189. package/.cache/typescript/5.6/node_modules/undici-types/proxy-agent.d.ts +28 -0
  190. package/.cache/typescript/5.6/node_modules/undici-types/readable.d.ts +60 -0
  191. package/.cache/typescript/5.6/node_modules/undici-types/retry-agent.d.ts +8 -0
  192. package/.cache/typescript/5.6/node_modules/undici-types/retry-handler.d.ts +116 -0
  193. package/.cache/typescript/5.6/node_modules/undici-types/util.d.ts +18 -0
  194. package/.cache/typescript/5.6/node_modules/undici-types/webidl.d.ts +222 -0
  195. package/.cache/typescript/5.6/node_modules/undici-types/websocket.d.ts +150 -0
  196. package/.cache/typescript/5.6/package-lock.json +183 -0
  197. package/.cache/typescript/5.6/package.json +1 -0
  198. package/.replit +3 -3
  199. package/LICENSE-MIT +21 -0
  200. package/README.md +176 -30
  201. package/index.js +452 -425
  202. package/package.json +39 -90
  203. package/replit.nix +3 -0
  204. package/src/addExternalModule.js +14 -5
  205. package/src/addUserToGroup.js +57 -21
  206. package/src/changeAdminStatus.js +46 -22
  207. package/src/changeArchivedStatus.js +26 -12
  208. package/src/changeAvatar.js +136 -0
  209. package/src/{changeAvt.js → changeAvatarV2.js} +4 -3
  210. package/src/changeBio.js +26 -15
  211. package/src/changeBlockedStatus.js +22 -9
  212. package/src/changeBlockedStatusMqtt.js +80 -0
  213. package/src/changeCover.js +73 -0
  214. package/src/changeGroupImage.js +55 -26
  215. package/src/changeName.js +79 -0
  216. package/src/changeNickname.js +28 -14
  217. package/src/changeThreadColor.js +22 -19
  218. package/src/changeThreadEmoji.js +25 -12
  219. package/src/changeUsername.js +59 -0
  220. package/src/createCommentPost.js +230 -0
  221. package/src/createNewGroup.js +36 -18
  222. package/src/createPoll.js +28 -17
  223. package/src/createPost.js +276 -0
  224. package/src/data/getThreadInfo.json +1 -0
  225. package/src/deleteMessage.js +25 -14
  226. package/src/deleteThread.js +26 -13
  227. package/src/editMessage.js +56 -50
  228. package/src/editMessageOld.js +67 -0
  229. package/src/follow.js +74 -0
  230. package/src/forwardAttachment.js +28 -16
  231. package/src/getAccess.js +112 -0
  232. package/src/getAvatarUser.js +78 -0
  233. package/src/getCurrentUserID.js +3 -3
  234. package/src/getEmojiUrl.js +10 -8
  235. package/src/getFriendsList.js +25 -15
  236. package/src/getMessage.js +813 -81
  237. package/src/getRegion.js +7 -0
  238. package/src/getThreadHistory.js +241 -98
  239. package/src/getThreadHistoryDeprecated.js +93 -0
  240. package/src/getThreadInfo.js +90 -287
  241. package/src/getThreadInfoDeprecated.js +80 -0
  242. package/src/getThreadList.js +215 -158
  243. package/src/getThreadListDeprecated.js +75 -0
  244. package/src/getThreadPictures.js +40 -20
  245. package/src/getUID.js +113 -50
  246. package/src/getUserID.js +18 -14
  247. package/src/getUserInfo.js +35 -75
  248. package/src/handleFriendRequest.js +25 -14
  249. package/src/handleMessageRequest.js +37 -21
  250. package/src/httpGet.js +36 -20
  251. package/src/httpPost.js +37 -20
  252. package/src/httpPostFormData.js +53 -24
  253. package/src/listenMqtt.js +413 -666
  254. package/src/listenNotification.js +85 -0
  255. package/src/logout.js +24 -17
  256. package/src/markAsDelivered.js +23 -16
  257. package/src/markAsRead.js +43 -28
  258. package/src/markAsReadAll.js +22 -15
  259. package/src/markAsSeen.js +29 -19
  260. package/src/muteThread.js +18 -13
  261. package/src/pinMessage.js +59 -0
  262. package/src/refreshFb_dtsg.js +89 -0
  263. package/src/removeUserFromGroup.js +48 -18
  264. package/src/resolvePhotoUrl.js +22 -14
  265. package/src/searchForThread.js +23 -13
  266. package/src/searchStickers.js +53 -0
  267. package/src/sendMessage.js +180 -122
  268. package/src/sendMessageMqtt.js +322 -0
  269. package/src/sendTypingIndicator.js +42 -21
  270. package/src/sendTypingIndicatorV2.js +28 -0
  271. package/src/setMessageReaction.js +33 -20
  272. package/src/setMessageReactionMqtt.js +62 -0
  273. package/src/setPostReaction.js +105 -95
  274. package/src/setProfileGuard.js +45 -0
  275. package/src/setStoryReaction.js +64 -0
  276. package/src/setTitle.js +35 -19
  277. package/src/shareContact.js +92 -37
  278. package/src/shareLink.js +6 -5
  279. package/src/stopListenMqtt.js +23 -0
  280. package/src/threadColors.js +110 -18
  281. package/src/unfriend.js +20 -11
  282. package/src/unsendMessage.js +31 -34
  283. package/src/uploadAttachment.js +94 -0
  284. package/test/test-page.js +1 -1
  285. package/test/test.js +1 -1
  286. package/utils.js +1237 -2935
  287. package/.cache/replit/modules/nodejs-14.res +0 -1
  288. package/.cache/replit/modules/web.res +0 -1
  289. package/.cache/typescript/5.5/package.json +0 -1
  290. package/.config/configstore/update-notifier-npm.json +0 -4
  291. package/.gitattributes +0 -2
  292. package/.upm/store.json +0 -1
  293. package/Extra/Balancer.js +0 -49
  294. package/Extra/Bypass/956/index.js +0 -234
  295. package/Extra/Bypass/test/aaaa.json +0 -170
  296. package/Extra/Bypass/test/index.js +0 -188
  297. package/Extra/Database/index.js +0 -469
  298. package/Extra/ExtraAddons.js +0 -82
  299. package/Extra/ExtraFindUID.js +0 -62
  300. package/Extra/ExtraGetThread.js +0 -365
  301. package/Extra/ExtraScreenShot.js +0 -430
  302. package/Extra/ExtraUptimeRobot.js +0 -38
  303. package/Extra/Html/Classic/script.js +0 -119
  304. package/Extra/Html/Classic/style.css +0 -8
  305. package/Extra/Security/Base/Step_1.js +0 -6
  306. package/Extra/Security/Base/Step_2.js +0 -22
  307. package/Extra/Security/Base/Step_3.js +0 -22
  308. package/Extra/Security/Base/index.js +0 -191
  309. package/Extra/Security/Index.js +0 -5
  310. package/Extra/Security/Step_1.js +0 -6
  311. package/Extra/Security/Step_2.js +0 -22
  312. package/Extra/Security/Step_3.js +0 -22
  313. package/Extra/Src/Change_Environment.js +0 -24
  314. package/Extra/Src/Check_Update.js +0 -67
  315. package/Extra/Src/History.js +0 -115
  316. package/Extra/Src/Instant_Update.js +0 -65
  317. package/Extra/Src/Last-Run.js +0 -65
  318. package/Extra/Src/Premium.js +0 -81
  319. package/Extra/Src/Release_Memory.js +0 -160
  320. package/Extra/Src/Websocket.js +0 -213
  321. package/Extra/Src/image/checkmate.jpg +0 -0
  322. package/Extra/Src/test.js +0 -28
  323. package/Extra/Src/uuid.js +0 -137
  324. package/Func/AcceptAgreement.js +0 -31
  325. package/Func/ClearCache.js +0 -64
  326. package/Func/ReportV1.js +0 -54
  327. package/LICENSE +0 -678
  328. package/Language/index.json +0 -228
  329. package/Main.js +0 -1444
  330. package/SECURITY.md +0 -18
  331. package/broadcast.js +0 -44
  332. package/logger.js +0 -66
  333. package/src/Dev_Horizon_Data.js +0 -125
  334. package/src/Dev_getThreadInfoOLD.js +0 -422
  335. package/src/Dev_shareTest2.js +0 -68
  336. package/src/Dev_shareTest3.js +0 -71
  337. package/src/Premium.js +0 -25
  338. package/src/Screenshot.js +0 -83
  339. package/src/getAccessToken.js +0 -28
  340. package/src/getThreadInfoOLD.js +0 -422
  341. package/src/getThreadMain.js +0 -220
  342. package/src/getUserInfoMain.js +0 -65
  343. package/src/getUserInfoV2.js +0 -32
  344. package/src/getUserInfoV3.js +0 -63
  345. package/src/getUserInfoV4.js +0 -55
  346. package/src/getUserInfoV5.js +0 -61
  347. package/src/listenMqttV1.js +0 -846
  348. package/src/sendMqttMessage.js +0 -71
  349. package/src/unsendMqttMessage.js +0 -66
  350. package/test/Database_Test.js +0 -4
  351. package/test/Db2.js +0 -530
  352. package/test/Shankar_Database/A_README.md +0 -1
  353. package/test/Shankar_Database/Database.db +0 -0
  354. package/test/data/shareAttach.js +0 -146
  355. package/test/data/something.mov +0 -0
  356. package/test/data/test.png +0 -0
  357. package/test/data/test.txt +0 -7
  358. package/test/env/.env +0 -0
  359. package/test/example-db.db +0 -0
  360. package/test/memoryleak.js +0 -18
  361. package/test/testname.js +0 -1342
  362. package/test/testv2.js +0 -3
  363. /package/{Extra/Security/AES_256_GCM/index.js → .cache/nix/binary-cache-v6.sqlite-journal} +0 -0
@@ -1,14 +1,8 @@
1
1
  "use strict";
2
2
 
3
- /**
4
- * Được Fix Hay Làm Màu Bởi: @HarryWakazaki
5
- * 21/4/2022
6
- */
7
-
8
3
  var utils = require("../utils");
9
- var log = require("npmlog");
4
+ // @NethWs3Dev
10
5
  var bluebird = require("bluebird");
11
- var fs = require('fs-extra');
12
6
 
13
7
  var allowedProperties = {
14
8
  attachment: true,
@@ -21,16 +15,21 @@ var allowedProperties = {
21
15
  location: true,
22
16
  };
23
17
 
24
- var AntiText = "Your criminal activity was detected while attempting to send an Appstate file";
25
- var Location_Stack;
26
-
27
18
  module.exports = function (defaultFuncs, api, ctx) {
28
19
  function uploadAttachment(attachments, callback) {
29
20
  var uploads = [];
30
21
 
31
22
  // create an array of promises
32
23
  for (var i = 0; i < attachments.length; i++) {
33
- if (!utils.isReadableStream(attachments[i])) throw { error: "Attachment should be a readable stream and not " + utils.getType(attachments[i]) + "." };
24
+ if (!utils.isReadableStream(attachments[i])) {
25
+ throw {
26
+ error:
27
+ "Attachment should be a readable stream and not " +
28
+ utils.getType(attachments[i]) +
29
+ "."
30
+ };
31
+ }
32
+
34
33
  var form = {
35
34
  upload_1024: attachments[i],
36
35
  voice_clip: "true"
@@ -38,10 +37,18 @@ module.exports = function (defaultFuncs, api, ctx) {
38
37
 
39
38
  uploads.push(
40
39
  defaultFuncs
41
- .postFormData("https://upload.facebook.com/ajax/mercury/upload.php", ctx.jar, form, {})
40
+ .postFormData(
41
+ "https://upload.facebook.com/ajax/mercury/upload.php",
42
+ ctx.jar,
43
+ form,
44
+ {}
45
+ )
42
46
  .then(utils.parseAndCheckLogin(ctx, defaultFuncs))
43
47
  .then(function (resData) {
44
- if (resData.error) throw resData;
48
+ if (resData.error) {
49
+ throw resData;
50
+ }
51
+
45
52
  // We have to return the data unformatted unless we want to change it
46
53
  // back in sendMessage.
47
54
  return resData.payload.metadata[0];
@@ -52,10 +59,11 @@ module.exports = function (defaultFuncs, api, ctx) {
52
59
  // resolve all promises
53
60
  bluebird
54
61
  .all(uploads)
55
- .then(resData => callback(null, resData)
56
- )
62
+ .then(function (resData) {
63
+ callback(null, resData);
64
+ })
57
65
  .catch(function (err) {
58
- log.error("uploadAttachment", err);
66
+ console.error("uploadAttachment", err);
59
67
  return callback(err);
60
68
  });
61
69
  }
@@ -68,15 +76,25 @@ module.exports = function (defaultFuncs, api, ctx) {
68
76
  };
69
77
 
70
78
  defaultFuncs
71
- .post("https://www.facebook.com/message_share_attachment/fromURI/", ctx.jar, form)
79
+ .post(
80
+ "https://www.facebook.com/message_share_attachment/fromURI/",
81
+ ctx.jar,
82
+ form
83
+ )
72
84
  .then(utils.parseAndCheckLogin(ctx, defaultFuncs))
73
85
  .then(function (resData) {
74
- if (resData.error) return callback(resData);
75
- if (!resData.payload) return callback({ error: "Invalid url" });
86
+ if (resData.error) {
87
+ return callback(resData);
88
+ }
89
+
90
+ if (!resData.payload) {
91
+ return callback({ error: "Invalid url" });
92
+ }
93
+
76
94
  callback(null, resData.payload.share_data.share_params);
77
95
  })
78
96
  .catch(function (err) {
79
- log.error("getUrl", err);
97
+ console.error("getUrl", err);
80
98
  return callback(err);
81
99
  });
82
100
  }
@@ -88,20 +106,22 @@ module.exports = function (defaultFuncs, api, ctx) {
88
106
  // 2. User is sending a message to a specific user.
89
107
  // 3. No additional form params and the message goes to an existing group chat.
90
108
  if (utils.getType(threadID) === "Array") {
91
- for (var i = 0; i < threadID.length; i++) form["specific_to_list[" + i + "]"] = "fbid:" + threadID[i];
109
+ for (var i = 0; i < threadID.length; i++) {
110
+ form["specific_to_list[" + i + "]"] = "fbid:" + threadID[i];
111
+ }
92
112
  form["specific_to_list[" + threadID.length + "]"] = "fbid:" + ctx.userID;
93
113
  form["client_thread_id"] = "root:" + messageAndOTID;
94
- log.info("sendMessage", "Sending message to multiple users: " + threadID);
95
- }
96
- else {
114
+ console.log("sendMessage", "Sending message to multiple users: " + threadID);
115
+ } else {
97
116
  // This means that threadID is the id of a user, and the chat
98
117
  // is a single person chat
99
118
  if (isSingleUser) {
100
119
  form["specific_to_list[0]"] = "fbid:" + threadID;
101
120
  form["specific_to_list[1]"] = "fbid:" + ctx.userID;
102
121
  form["other_user_fbid"] = threadID;
122
+ } else {
123
+ form["thread_fbid"] = threadID;
103
124
  }
104
- else form["thread_fbid"] = threadID;
105
125
  }
106
126
 
107
127
  if (ctx.globalOptions.pageID) {
@@ -112,31 +132,26 @@ module.exports = function (defaultFuncs, api, ctx) {
112
132
  form["creator_info[labelType]"] = "sent_message";
113
133
  form["creator_info[pageID]"] = ctx.globalOptions.pageID;
114
134
  form["request_user_id"] = ctx.globalOptions.pageID;
115
- form["creator_info[profileURI]"] = "https://www.facebook.com/profile.php?id=" + ctx.userID;
116
- }
117
-
118
- if (global.Fca.Require.FastConfig.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) {}
135
+ form["creator_info[profileURI]"] =
136
+ "https://www.facebook.com/profile.php?id=" + ctx.userID;
130
137
  }
131
138
 
132
139
  defaultFuncs
133
140
  .post("https://www.facebook.com/messaging/send/", ctx.jar, form)
134
141
  .then(utils.parseAndCheckLogin(ctx, defaultFuncs))
135
142
  .then(function (resData) {
136
- Location_Stack = undefined;
137
- if (!resData) return callback({ error: "Send message failed." });
143
+ if (!resData) {
144
+ return callback({ error: "Send message failed." });
145
+ }
146
+
138
147
  if (resData.error) {
139
- if (resData.error === 1545012) log.warn("sendMessage", "Got error 1545012. This might mean that you're not part of the conversation " + threadID);
148
+ if (resData.error === 1545012) {
149
+ console.warn(
150
+ "sendMessage",
151
+ "Got error 1545012. This might mean that you're not part of the conversation " +
152
+ threadID
153
+ );
154
+ }
140
155
  return callback(resData);
141
156
  }
142
157
 
@@ -149,68 +164,84 @@ module.exports = function (defaultFuncs, api, ctx) {
149
164
  } || p
150
165
  );
151
166
  }, null);
167
+
152
168
  return callback(null, messageInfo);
153
169
  })
154
170
  .catch(function (err) {
155
- log.error("sendMessage", err);
156
- if (utils.getType(err) == "Object" && err.error === "Not logged in.") ctx.loggedIn = false;
157
- return callback(err,null);
171
+ console.error("sendMessage", err);
172
+ return callback(err);
158
173
  });
159
- }
174
+ }
160
175
 
161
176
  function send(form, threadID, messageAndOTID, callback, isGroup) {
162
- //Full Fix sendMessage
163
- if (utils.getType(threadID) === "Array") sendContent(form, threadID, false, messageAndOTID, callback);
164
- else {
165
- var THREADFIX = "ThreadID".replace("ThreadID",threadID); // i cũng đôn nâu
166
- if (THREADFIX.length <= 15 || global.Fca.isUser.includes(threadID)) sendContent(form, threadID, !isGroup, messageAndOTID, callback);
167
- else if (THREADFIX.length >= 15 && THREADFIX.indexOf(1) != 0 || global.Fca.isThread.includes(threadID)) sendContent(form, threadID, threadID.length === 15, messageAndOTID, callback);
168
- else {
169
- if (global.Fca.Data.event.isGroup) {
170
- sendContent(form, threadID, threadID.length === 15, messageAndOTID, callback);
171
- global.Fca.isThread.push(threadID);
172
- }
173
- else {
174
- sendContent(form, threadID, !isGroup, messageAndOTID, callback);
175
- global.Fca.isUser.push(threadID);
176
- }
177
- }
177
+ // We're doing a query to this to check if the given id is the id of
178
+ // a user or of a group chat. The form will be different depending
179
+ // on that.
180
+ if (utils.getType(threadID) === "Array") {
181
+ sendContent(form, threadID, false, messageAndOTID, callback);
182
+ } else {
183
+ if (utils.getType(isGroup) != "Boolean")
184
+ sendContent(form, threadID, threadID.length <= 15, messageAndOTID, callback);
185
+ else
186
+ sendContent(form, threadID, !isGroup, messageAndOTID, callback);
178
187
  }
179
188
  }
180
-
189
+
181
190
  function handleUrl(msg, form, callback, cb) {
182
191
  if (msg.url) {
183
192
  form["shareable_attachment[share_type]"] = "100";
184
193
  getUrl(msg.url, function (err, params) {
185
- if (err) return callback(err);
194
+ if (err) {
195
+ return callback(err);
196
+ }
197
+
186
198
  form["shareable_attachment[share_params]"] = params;
187
199
  cb();
188
200
  });
201
+ } else {
202
+ cb();
189
203
  }
190
- else cb();
191
204
  }
192
205
 
193
206
  function handleLocation(msg, form, callback, cb) {
194
207
  if (msg.location) {
195
- if (msg.location.latitude == null || msg.location.longitude == null) return callback({ error: "location property needs both latitude and longitude" });
208
+ if (msg.location.latitude == null || msg.location.longitude == null) {
209
+ return callback({ error: "location property needs both latitude and longitude" });
210
+ }
211
+
196
212
  form["location_attachment[coordinates][latitude]"] = msg.location.latitude;
197
213
  form["location_attachment[coordinates][longitude]"] = msg.location.longitude;
198
214
  form["location_attachment[is_current_location]"] = !!msg.location.current;
199
215
  }
216
+
200
217
  cb();
201
218
  }
202
219
 
203
220
  function handleSticker(msg, form, callback, cb) {
204
- if (msg.sticker) form["sticker_id"] = msg.sticker;
221
+ if (msg.sticker) {
222
+ form["sticker_id"] = msg.sticker;
223
+ }
205
224
  cb();
206
225
  }
207
226
 
208
227
  function handleEmoji(msg, form, callback, cb) {
209
- if (msg.emojiSize != null && msg.emoji == null) return callback({ error: "emoji property is empty" });
228
+ if (msg.emojiSize != null && msg.emoji == null) {
229
+ return callback({ error: "emoji property is empty" });
230
+ }
210
231
  if (msg.emoji) {
211
- if (msg.emojiSize == null) msg.emojiSize = "medium";
212
- if (msg.emojiSize != "small" && msg.emojiSize != "medium" && msg.emojiSize != "large") return callback({ error: "emojiSize property is invalid" });
213
- if (form["body"] != null && form["body"] != "") return callback({ error: "body is not empty" });
232
+ if (msg.emojiSize == null) {
233
+ msg.emojiSize = "medium";
234
+ }
235
+ if (
236
+ msg.emojiSize != "small" &&
237
+ msg.emojiSize != "medium" &&
238
+ msg.emojiSize != "large"
239
+ ) {
240
+ return callback({ error: "emojiSize property is invalid" });
241
+ }
242
+ if (form["body"] != null && form["body"] != "") {
243
+ return callback({ error: "body is not empty" });
244
+ }
214
245
  form["body"] = msg.emoji;
215
246
  form["tags[0]"] = "hot_emoji_size:" + msg.emojiSize;
216
247
  }
@@ -225,43 +256,15 @@ module.exports = function (defaultFuncs, api, ctx) {
225
256
  form["video_ids"] = [];
226
257
  form["audio_ids"] = [];
227
258
 
228
- if (utils.getType(msg.attachment) !== "Array") msg.attachment = [msg.attachment];
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();
259
+ if (utils.getType(msg.attachment) !== "Array") {
260
+ msg.attachment = [msg.attachment];
235
261
  }
236
262
 
237
- if (global.Fca.Require.FastConfig.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
- }
263
263
  uploadAttachment(msg.attachment, function (err, files) {
264
- if (err) return callback(err);
264
+ if (err) {
265
+ return callback(err);
266
+ }
267
+
265
268
  files.forEach(function (file) {
266
269
  var key = Object.keys(file);
267
270
  var type = key[0]; // image_id, file_id, etc
@@ -269,19 +272,33 @@ module.exports = function (defaultFuncs, api, ctx) {
269
272
  });
270
273
  cb();
271
274
  });
275
+ } else {
276
+ cb();
272
277
  }
273
- else cb();
274
278
  }
275
279
 
276
280
  function handleMention(msg, form, callback, cb) {
277
281
  if (msg.mentions) {
278
282
  for (let i = 0; i < msg.mentions.length; i++) {
279
283
  const mention = msg.mentions[i];
284
+
280
285
  const tag = mention.tag;
281
- if (typeof tag !== "string") return callback({ error: "Mention tags must be strings." });
286
+ if (typeof tag !== "string") {
287
+ return callback({ error: "Mention tags must be strings." });
288
+ }
289
+
282
290
  const offset = msg.body.indexOf(tag, mention.fromIndex || 0);
283
- if (offset < 0) log.warn("handleMention", 'Mention for "' + tag + '" not found in message string.');
284
- if (mention.id == null) log.warn("handleMention", "Mention id should be non-null.");
291
+
292
+ if (offset < 0) {
293
+ console.warn(
294
+ "handleMention",
295
+ 'Mention for "' + tag + '" not found in message string.'
296
+ );
297
+ }
298
+
299
+ if (mention.id == null) {
300
+ console.warn("handleMention", "Mention id should be non-null.");
301
+ }
285
302
 
286
303
  const id = mention.id || 0;
287
304
  const emptyChar = '\u200E';
@@ -297,10 +314,19 @@ module.exports = function (defaultFuncs, api, ctx) {
297
314
 
298
315
  return function sendMessage(msg, threadID, callback, replyToMessage, isGroup) {
299
316
  typeof isGroup == "undefined" ? isGroup = null : "";
300
- if (!callback && (utils.getType(threadID) === "Function" || utils.getType(threadID) === "AsyncFunction")) return threadID({ error: "Pass a threadID as a second argument." });
301
- if (!replyToMessage && utils.getType(callback) === "String") {
317
+ if (
318
+ !callback &&
319
+ (utils.getType(threadID) === "Function" ||
320
+ utils.getType(threadID) === "AsyncFunction")
321
+ ) {
322
+ return threadID({ error: "Pass a threadID as a second argument." });
323
+ }
324
+ if (
325
+ !replyToMessage &&
326
+ utils.getType(callback) === "String"
327
+ ) {
302
328
  replyToMessage = callback;
303
- callback = function () { };
329
+ callback = undefined;
304
330
  }
305
331
 
306
332
  var resolveFunc = function () { };
@@ -321,16 +347,48 @@ module.exports = function (defaultFuncs, api, ctx) {
321
347
  var threadIDType = utils.getType(threadID);
322
348
  var messageIDType = utils.getType(replyToMessage);
323
349
 
324
- if (msgType !== "String" && msgType !== "Object") return callback({ error: "Message should be of type string or object and not " + msgType + "." });
350
+ if (msgType !== "String" && msgType !== "Object") {
351
+ return callback({
352
+ error:
353
+ "Message should be of type string or object and not " + msgType + "."
354
+ });
355
+ }
325
356
 
326
357
  // Changing this to accomodate an array of users
327
- if (threadIDType !== "Array" && threadIDType !== "Number" && threadIDType !== "String") return callback({ error: "ThreadID should be of type number, string, or array and not " + threadIDType + "." });
358
+ if (
359
+ threadIDType !== "Array" &&
360
+ threadIDType !== "Number" &&
361
+ threadIDType !== "String"
362
+ ) {
363
+ return callback({
364
+ error:
365
+ "ThreadID should be of type number, string, or array and not " +
366
+ threadIDType +
367
+ "."
368
+ });
369
+ }
328
370
 
329
- if (replyToMessage && messageIDType !== 'String') return callback({ error: "MessageID should be of type string and not " + threadIDType + "." });
371
+ if (replyToMessage && messageIDType !== 'String') {
372
+ return callback({
373
+ error:
374
+ "MessageID should be of type string and not " +
375
+ threadIDType +
376
+ "."
377
+ });
378
+ }
330
379
 
331
- if (msgType === "String") msg = { body: msg };
332
- var disallowedProperties = Object.keys(msg).filter(prop => !allowedProperties[prop]);
333
- if (disallowedProperties.length > 0) return callback({ error: "Dissallowed props: `" + disallowedProperties.join(", ") + "`" });
380
+ if (msgType === "String") {
381
+ msg = { body: msg };
382
+ }
383
+
384
+ var disallowedProperties = Object.keys(msg).filter(
385
+ prop => !allowedProperties[prop]
386
+ );
387
+ if (disallowedProperties.length > 0) {
388
+ return callback({
389
+ error: "Dissallowed props: `" + disallowedProperties.join(", ") + "`"
390
+ });
391
+ }
334
392
 
335
393
  var messageAndOTID = utils.generateOfflineThreadingID();
336
394
 
@@ -353,7 +411,7 @@ module.exports = function (defaultFuncs, api, ctx) {
353
411
  is_spoof_warning: false,
354
412
  source: "source:chat:web",
355
413
  "source_tags[0]": "source:chat",
356
- body: msg.body ? msg.body.toString().replace("\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f\ufe0f",' ') : "",
414
+ body: msg.body ? msg.body.toString() : "",
357
415
  html_body: false,
358
416
  ui_push_phase: "V3",
359
417
  status: "0",
@@ -366,7 +424,7 @@ module.exports = function (defaultFuncs, api, ctx) {
366
424
  signatureID: utils.getSignatureID(),
367
425
  replied_to_message_id: replyToMessage
368
426
  };
369
-
427
+
370
428
  handleLocation(msg, form, callback, () =>
371
429
  handleSticker(msg, form, callback, () =>
372
430
  handleAttachment(msg, form, callback, () =>
@@ -383,4 +441,4 @@ module.exports = function (defaultFuncs, api, ctx) {
383
441
 
384
442
  return returnPromise;
385
443
  };
386
- };
444
+ };