nodejs-insta-private-api-mqtt 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 (210) hide show
  1. package/README.md +1650 -0
  2. package/dist/constants/constants.js +280 -0
  3. package/dist/constants/index.js +41 -0
  4. package/dist/core/client.js +243 -0
  5. package/dist/core/repository.js +7 -0
  6. package/dist/core/request.js +212 -0
  7. package/dist/core/state.js +1456 -0
  8. package/dist/core/utils.js +786 -0
  9. package/dist/downloadMedia.js +381 -0
  10. package/dist/errors/index.d.ts +16 -0
  11. package/dist/errors/index.js +30 -0
  12. package/dist/errors/index.js.map +1 -0
  13. package/dist/fbns/fbns.client.d.ts +32 -0
  14. package/dist/fbns/fbns.client.events.d.ts +41 -0
  15. package/dist/fbns/fbns.client.events.js +3 -0
  16. package/dist/fbns/fbns.client.events.js.map +1 -0
  17. package/dist/fbns/fbns.client.js +179 -0
  18. package/dist/fbns/fbns.client.js.map +1 -0
  19. package/dist/fbns/fbns.device-auth.d.ts +17 -0
  20. package/dist/fbns/fbns.device-auth.js +54 -0
  21. package/dist/fbns/fbns.device-auth.js.map +1 -0
  22. package/dist/fbns/fbns.types.d.ts +83 -0
  23. package/dist/fbns/fbns.types.js +3 -0
  24. package/dist/fbns/fbns.types.js.map +1 -0
  25. package/dist/fbns/fbns.utilities.d.ts +2 -0
  26. package/dist/fbns/fbns.utilities.js +79 -0
  27. package/dist/fbns/fbns.utilities.js.map +1 -0
  28. package/dist/fbns/index.d.ts +4 -0
  29. package/dist/fbns/index.js +21 -0
  30. package/dist/fbns/index.js.map +1 -0
  31. package/dist/index.js +39 -0
  32. package/dist/mqttot/index.d.ts +4 -0
  33. package/dist/mqttot/index.js +21 -0
  34. package/dist/mqttot/index.js.map +1 -0
  35. package/dist/mqttot/mqttot.client.d.ts +39 -0
  36. package/dist/mqttot/mqttot.client.js +120 -0
  37. package/dist/mqttot/mqttot.client.js.map +1 -0
  38. package/dist/mqttot/mqttot.connect.request.packet.d.ts +7 -0
  39. package/dist/mqttot/mqttot.connect.request.packet.js +9 -0
  40. package/dist/mqttot/mqttot.connect.request.packet.js.map +1 -0
  41. package/dist/mqttot/mqttot.connect.response.packet.d.ts +7 -0
  42. package/dist/mqttot/mqttot.connect.response.packet.js +24 -0
  43. package/dist/mqttot/mqttot.connect.response.packet.js.map +1 -0
  44. package/dist/mqttot/mqttot.connection.d.ts +57 -0
  45. package/dist/mqttot/mqttot.connection.js +56 -0
  46. package/dist/mqttot/mqttot.connection.js.map +1 -0
  47. package/dist/package.json +59 -0
  48. package/dist/realtime/commands/commands.d.ts +15 -0
  49. package/dist/realtime/commands/commands.js +21 -0
  50. package/dist/realtime/commands/commands.js.map +1 -0
  51. package/dist/realtime/commands/direct.commands.d.ts +75 -0
  52. package/dist/realtime/commands/direct.commands.js +186 -0
  53. package/dist/realtime/commands/direct.commands.js.map +1 -0
  54. package/dist/realtime/commands/enhanced.direct.commands.js +987 -0
  55. package/dist/realtime/commands/index.d.ts +2 -0
  56. package/dist/realtime/commands/index.js +19 -0
  57. package/dist/realtime/commands/index.js.map +1 -0
  58. package/dist/realtime/delta-sync.manager.js +293 -0
  59. package/dist/realtime/features/dm-sender.js +88 -0
  60. package/dist/realtime/features/error-handler.js +73 -0
  61. package/dist/realtime/features/gap-handler.js +61 -0
  62. package/dist/realtime/features/presence.manager.js +66 -0
  63. package/dist/realtime/index.js +30 -0
  64. package/dist/realtime/messages/app-presence.event.d.ts +9 -0
  65. package/dist/realtime/messages/app-presence.event.js +3 -0
  66. package/dist/realtime/messages/app-presence.event.js.map +1 -0
  67. package/dist/realtime/messages/index.d.ts +3 -0
  68. package/dist/realtime/messages/index.js +20 -0
  69. package/dist/realtime/messages/index.js.map +1 -0
  70. package/dist/realtime/messages/message-sync.message.d.ts +222 -0
  71. package/dist/realtime/messages/message-sync.message.js +43 -0
  72. package/dist/realtime/messages/message-sync.message.js.map +1 -0
  73. package/dist/realtime/messages/realtime-sub.direct.data.d.ts +11 -0
  74. package/dist/realtime/messages/realtime-sub.direct.data.js +3 -0
  75. package/dist/realtime/messages/realtime-sub.direct.data.js.map +1 -0
  76. package/dist/realtime/messages/thread-update.message.d.ts +68 -0
  77. package/dist/realtime/messages/thread-update.message.js +3 -0
  78. package/dist/realtime/messages/thread-update.message.js.map +1 -0
  79. package/dist/realtime/mixins/index.d.ts +3 -0
  80. package/dist/realtime/mixins/index.js +20 -0
  81. package/dist/realtime/mixins/index.js.map +1 -0
  82. package/dist/realtime/mixins/message-sync.mixin.d.ts +8 -0
  83. package/dist/realtime/mixins/message-sync.mixin.js +381 -0
  84. package/dist/realtime/mixins/message-sync.mixin.js.map +1 -0
  85. package/dist/realtime/mixins/mixin.d.ts +19 -0
  86. package/dist/realtime/mixins/mixin.js +41 -0
  87. package/dist/realtime/mixins/mixin.js.map +1 -0
  88. package/dist/realtime/mixins/presence-typing.mixin.js +33 -0
  89. package/dist/realtime/mixins/realtime-sub.mixin.d.ts +8 -0
  90. package/dist/realtime/mixins/realtime-sub.mixin.js +55 -0
  91. package/dist/realtime/mixins/realtime-sub.mixin.js.map +1 -0
  92. package/dist/realtime/parsers/graphql-parser.js +43 -0
  93. package/dist/realtime/parsers/graphql.parser.d.ts +15 -0
  94. package/dist/realtime/parsers/graphql.parser.js +22 -0
  95. package/dist/realtime/parsers/graphql.parser.js.map +1 -0
  96. package/dist/realtime/parsers/index.d.ts +6 -0
  97. package/dist/realtime/parsers/index.js +23 -0
  98. package/dist/realtime/parsers/index.js.map +1 -0
  99. package/dist/realtime/parsers/iris-parser.js +43 -0
  100. package/dist/realtime/parsers/iris.parser.d.ts +17 -0
  101. package/dist/realtime/parsers/iris.parser.js +10 -0
  102. package/dist/realtime/parsers/iris.parser.js.map +1 -0
  103. package/dist/realtime/parsers/json-parser.js +43 -0
  104. package/dist/realtime/parsers/json.parser.d.ts +6 -0
  105. package/dist/realtime/parsers/json.parser.js +10 -0
  106. package/dist/realtime/parsers/json.parser.js.map +1 -0
  107. package/dist/realtime/parsers/parser.d.ts +9 -0
  108. package/dist/realtime/parsers/parser.js +3 -0
  109. package/dist/realtime/parsers/parser.js.map +1 -0
  110. package/dist/realtime/parsers/region-hint-parser.js +43 -0
  111. package/dist/realtime/parsers/region-hint.parser.d.ts +12 -0
  112. package/dist/realtime/parsers/region-hint.parser.js +15 -0
  113. package/dist/realtime/parsers/region-hint.parser.js.map +1 -0
  114. package/dist/realtime/parsers/skywalker-parser.js +43 -0
  115. package/dist/realtime/parsers/skywalker.parser.d.ts +12 -0
  116. package/dist/realtime/parsers/skywalker.parser.js +15 -0
  117. package/dist/realtime/parsers/skywalker.parser.js.map +1 -0
  118. package/dist/realtime/parsers-advanced.js +158 -0
  119. package/dist/realtime/proto/common.proto +38 -0
  120. package/dist/realtime/proto/direct.proto +65 -0
  121. package/dist/realtime/proto/ig-messages.proto +83 -0
  122. package/dist/realtime/proto/iris.proto +188 -0
  123. package/dist/realtime/proto-parser.js +195 -0
  124. package/dist/realtime/protocols/iris.handshake.js +74 -0
  125. package/dist/realtime/protocols/proto-definitions.js +80 -0
  126. package/dist/realtime/protocols/skywalker.protocol.js +91 -0
  127. package/dist/realtime/realtime.client.events.js +3 -0
  128. package/dist/realtime/realtime.client.js +449 -0
  129. package/dist/realtime/realtime.service.js +462 -0
  130. package/dist/realtime/reconnect.manager.js +94 -0
  131. package/dist/realtime/session.manager.js +121 -0
  132. package/dist/realtime/subscriptions/graphql.subscription.d.ts +47 -0
  133. package/dist/realtime/subscriptions/graphql.subscription.js +99 -0
  134. package/dist/realtime/subscriptions/graphql.subscription.js.map +1 -0
  135. package/dist/realtime/subscriptions/index.d.ts +2 -0
  136. package/dist/realtime/subscriptions/index.js +19 -0
  137. package/dist/realtime/subscriptions/index.js.map +1 -0
  138. package/dist/realtime/subscriptions/skywalker.subscription.d.ts +4 -0
  139. package/dist/realtime/subscriptions/skywalker.subscription.js +13 -0
  140. package/dist/realtime/subscriptions/skywalker.subscription.js.map +1 -0
  141. package/dist/realtime/topic-map.js +71 -0
  142. package/dist/realtime/topic.js +80 -0
  143. package/dist/repositories/account.repository.js +261 -0
  144. package/dist/repositories/direct-thread.repository.js +247 -0
  145. package/dist/repositories/direct.repository.js +153 -0
  146. package/dist/repositories/feed.repository.js +233 -0
  147. package/dist/repositories/friendship.repository.js +190 -0
  148. package/dist/repositories/hashtag.repository.js +101 -0
  149. package/dist/repositories/highlights.repository.js +127 -0
  150. package/dist/repositories/location.repository.js +84 -0
  151. package/dist/repositories/media.repository.js +165 -0
  152. package/dist/repositories/story.repository.js +156 -0
  153. package/dist/repositories/upload.repository.js +167 -0
  154. package/dist/repositories/user.repository.js +94 -0
  155. package/dist/sendmedia/index.js +11 -0
  156. package/dist/sendmedia/sendFile.js +154 -0
  157. package/dist/sendmedia/sendPhoto.js +145 -0
  158. package/dist/sendmedia/uploadPhoto.js +175 -0
  159. package/dist/sendmedia/uploadfFile.js +264 -0
  160. package/dist/services/live.service.js +147 -0
  161. package/dist/services/search.service.js +116 -0
  162. package/dist/shared/index.js +35 -0
  163. package/dist/shared/shared.js +86 -0
  164. package/dist/thrift/index.d.ts +3 -0
  165. package/dist/thrift/index.js +20 -0
  166. package/dist/thrift/index.js.map +1 -0
  167. package/dist/thrift/thrift.d.ts +59 -0
  168. package/dist/thrift/thrift.js +101 -0
  169. package/dist/thrift/thrift.js.map +1 -0
  170. package/dist/thrift/thrift.reading.d.ts +41 -0
  171. package/dist/thrift/thrift.reading.js +327 -0
  172. package/dist/thrift/thrift.reading.js.map +1 -0
  173. package/dist/thrift/thrift.writing.d.ts +44 -0
  174. package/dist/thrift/thrift.writing.js +342 -0
  175. package/dist/thrift/thrift.writing.js.map +1 -0
  176. package/dist/types/index.js +285 -0
  177. package/dist/useMultiFileAuthState.js +437 -0
  178. package/dist/utils/helper-1.js +1 -0
  179. package/dist/utils/helper-10.js +1 -0
  180. package/dist/utils/helper-11.js +1 -0
  181. package/dist/utils/helper-12.js +1 -0
  182. package/dist/utils/helper-13.js +1 -0
  183. package/dist/utils/helper-14.js +1 -0
  184. package/dist/utils/helper-15.js +1 -0
  185. package/dist/utils/helper-16.js +1 -0
  186. package/dist/utils/helper-17.js +1 -0
  187. package/dist/utils/helper-18.js +1 -0
  188. package/dist/utils/helper-19.js +1 -0
  189. package/dist/utils/helper-2.js +1 -0
  190. package/dist/utils/helper-20.js +1 -0
  191. package/dist/utils/helper-21.js +1 -0
  192. package/dist/utils/helper-22.js +1 -0
  193. package/dist/utils/helper-23.js +1 -0
  194. package/dist/utils/helper-24.js +1 -0
  195. package/dist/utils/helper-25.js +1 -0
  196. package/dist/utils/helper-26.js +1 -0
  197. package/dist/utils/helper-27.js +1 -0
  198. package/dist/utils/helper-28.js +1 -0
  199. package/dist/utils/helper-29.js +1 -0
  200. package/dist/utils/helper-3.js +1 -0
  201. package/dist/utils/helper-30.js +1 -0
  202. package/dist/utils/helper-4.js +1 -0
  203. package/dist/utils/helper-5.js +1 -0
  204. package/dist/utils/helper-6.js +1 -0
  205. package/dist/utils/helper-7.js +1 -0
  206. package/dist/utils/helper-8.js +1 -0
  207. package/dist/utils/helper-9.js +1 -0
  208. package/dist/utils/index.js +280 -0
  209. package/examples/listen-to-messages.js +86 -0
  210. package/package.json +79 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fbns.client.js","sourceRoot":"","sources":["../../src/fbns/fbns.client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { IgApiClient } from 'instagram-private-api';
2
+ export declare class FbnsDeviceAuth {
3
+ private authLog;
4
+ clientId: string;
5
+ userId: number;
6
+ password: string;
7
+ deviceId: string;
8
+ deviceSecret: string;
9
+ sr?: string;
10
+ rc?: string;
11
+ private json?;
12
+ private ig;
13
+ constructor(ig: IgApiClient);
14
+ update(): void;
15
+ read(jsonStr: string): void;
16
+ toString(): string;
17
+ }
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.FbnsDeviceAuth = void 0;
10
+ const decorators_1 = require("instagram-private-api/dist/decorators");
11
+ const shared_1 = require("../shared");
12
+ class FbnsDeviceAuth {
13
+ constructor(ig) {
14
+ this.authLog = (0, shared_1.debugChannel)('fbns', 'device-auth');
15
+ this.ig = ig;
16
+ this.clientId = this.ig.state.phoneId?.substr(0, 20) || '';
17
+ this.deviceId = '';
18
+ this.userId = 0;
19
+ this.deviceSecret = '';
20
+ this.password = '';
21
+ }
22
+ update() {
23
+ if (this.clientId === '') {
24
+ this.clientId = this.ig.state.phoneId?.substr(0, 20) || '';
25
+ }
26
+ }
27
+ read(jsonStr) {
28
+ this.authLog(`Reading auth json ${jsonStr ?? 'empty'}`);
29
+ if (!jsonStr)
30
+ return;
31
+ this.json = jsonStr;
32
+ const { ck, cs, di, ds, sr, rc } = JSON.parse(jsonStr);
33
+ this.userId = ck || this.userId;
34
+ this.password = cs || this.password;
35
+ if (di) {
36
+ this.deviceId = di;
37
+ this.clientId = this.deviceId.substr(0, 20);
38
+ }
39
+ else {
40
+ this.deviceId = '';
41
+ }
42
+ this.deviceSecret = ds || this.deviceSecret;
43
+ this.sr = sr || this.sr;
44
+ this.rc = rc || this.rc;
45
+ }
46
+ toString() {
47
+ return this.json || '';
48
+ }
49
+ }
50
+ exports.FbnsDeviceAuth = FbnsDeviceAuth;
51
+ __decorate([
52
+ (0, decorators_1.Enumerable)(false)
53
+ ], FbnsDeviceAuth.prototype, "ig", void 0);
54
+ //# sourceMappingURL=fbns.device-auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fbns.device-auth.js","sourceRoot":"","sources":["../../src/fbns/fbns.device-auth.ts"],"names":[],"mappings":";;;;;;;;;AACA,sEAAmE;AACnE,sCAAyC;AAEzC,MAAa,cAAc;IAgBxB,YAAmB,EAAe;QAf1B,YAAO,GAAG,IAAA,qBAAY,EAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QAgBnD,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;QAC3D,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAChB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IACtB,CAAC;IAEM,MAAM;QACV,IAAI,IAAI,CAAC,QAAQ,KAAK,EAAE,EAAE,CAAC;YACxB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;QAC9D,CAAC;IACJ,CAAC;IAEM,IAAI,CAAC,OAAe;QACxB,IAAI,CAAC,OAAO,CAAC,qBAAqB,OAAO,IAAI,OAAO,EAAE,CAAC,CAAC;QACxD,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC;QACpB,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,CAAC,MAAM,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,QAAQ,GAAG,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC;QACpC,IAAI,EAAE,EAAE,CAAC;YACN,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC/C,CAAC;aAAM,CAAC;YACL,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACtB,CAAC;QACD,IAAI,CAAC,YAAY,GAAG,EAAE,IAAI,IAAI,CAAC,YAAY,CAAC;QAC5C,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC;IAC3B,CAAC;IAEM,QAAQ;QACZ,OAAO,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;IAC1B,CAAC;CACH;AApDD,wCAoDC;AAtCU;IADP,IAAA,uBAAU,EAAC,KAAK,CAAC;0CACM"}
@@ -0,0 +1,83 @@
1
+ import { FbnsDeviceAuth } from './fbns.device-auth';
2
+ export interface FbnsMessageData {
3
+ token?: string;
4
+ pn?: string;
5
+ nid?: string;
6
+ ck?: string;
7
+ fbpushnotif?: string;
8
+ num_endpoints?: string;
9
+ }
10
+ export interface FbPushNotif {
11
+ t?: string;
12
+ m?: string;
13
+ tt?: string;
14
+ ig?: string;
15
+ collapse_key?: string;
16
+ i?: string;
17
+ a?: string;
18
+ sound?: string;
19
+ pi?: string;
20
+ c?: string;
21
+ u?: string;
22
+ s?: string;
23
+ igo?: string;
24
+ bc?: string;
25
+ ia?: string;
26
+ it?: string;
27
+ si?: string;
28
+ PushNotifID?: string;
29
+ }
30
+ export interface FbnsBadgeCount {
31
+ direct?: number;
32
+ ds?: number;
33
+ activities?: number;
34
+ }
35
+ export type FbnsNotificationUnknown = FbnsNotification<unknown>;
36
+ export interface FbnsNotification<T> {
37
+ original: FbPushNotif;
38
+ title?: string;
39
+ message?: string;
40
+ tickerText?: string;
41
+ igAction?: string;
42
+ igActionOverride?: string;
43
+ optionalImage?: string;
44
+ optionalAvatarUrl?: string;
45
+ collapseKey?: string;
46
+ sound?: string;
47
+ pushId?: string;
48
+ pushCategory?: string;
49
+ intendedRecipientUserId?: string;
50
+ sourceUserId?: string;
51
+ badgeCount?: FbnsBadgeCount;
52
+ inAppActors?: string;
53
+ actionPath?: string;
54
+ actionParams?: T;
55
+ higherPriorityApps?: string;
56
+ }
57
+ export type NotificationCallback<N, A> = FuncArg<N, FbnsNotification<A>>;
58
+ export type FuncArg<E, T> = [E, (e: T) => void];
59
+ /**
60
+ * See: https://github.com/mgp25/Instagram-API/blob/master/src/Push.php
61
+ * TODO: inspect
62
+ * TODO: add regex?
63
+ * The following events are emitted:
64
+ */
65
+ export type NotificationEventCallback = FuncArg<'warning' | 'error', Error | Record<string, any>> | FuncArg<'auth', FbnsDeviceAuth> | FuncArg<'push' | 'silent_push', FbnsNotificationUnknown> | FuncArg<'exp_logging', {
66
+ beacon_id: number;
67
+ }> | FuncArg<'pp', string> | FuncArg<'message', FbnsMessageData> | NotificationCallback<'post', {
68
+ id: string;
69
+ }> | NotificationCallback<'first_post', {
70
+ username: string;
71
+ }> | NotificationCallback<'resurrected_user_post', {
72
+ id: string;
73
+ }> | NotificationCallback<'recent_follow_post', {
74
+ id: string;
75
+ }> | NotificationCallback<'fb_first_post', {
76
+ username: string;
77
+ }> | NotificationCallback<'first_bestie_post', {
78
+ username: string;
79
+ launch_reel?: string;
80
+ }> | NotificationCallback<'first_reel_post', {
81
+ username: string;
82
+ launch_reel?: string;
83
+ }> | NotificationCallback<'resurrected_reel_post' | 'story_poll_vote' | 'story_poll_close' | 'story_producer_expire_media' | 'story_poll_result_share' | 'story_daily_digest' | 'new_follower' | 'private_user_follow_request' | 'follow_request_approved' | 'contactjoined' | 'contact_joined_email' | 'fb_friend_connected' | 'follower_follow' | 'follower_activity_reminders' | 'comment' | 'mentioned_comment' | 'comment_on_tag' | 'comment_subscribed' | 'comment_subscribed_on_like' | 'reply_to_comment_with_threading' | 'like' | 'like_on_tag' | 'comment_like' | 'direct_v2_message' | 'live_broadcast' | 'live_with_broadcast' | 'live_broadcast_revoke' | 'aymt' | 'ad_preview' | 'branded_content_tagged' | 'business_profile' | 'usertag' | 'video_view_count' | 'copyright_video' | 'report_updated' | 'promote_account' | 'unseen_notification_reminders', unknown> | FuncArg<string, any> | [string, (...args: string[]) => void];
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=fbns.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fbns.types.js","sourceRoot":"","sources":["../../src/fbns/fbns.types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import { FbnsNotificationUnknown } from './fbns.types';
2
+ export declare function createNotificationFromJson(json: string): FbnsNotificationUnknown;
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createNotificationFromJson = void 0;
4
+ const shared_1 = require("../shared");
5
+ const querystring = require("querystring");
6
+ const URL = require("url");
7
+ function createNotificationFromJson(json) {
8
+ const data = JSON.parse(json);
9
+ const notification = Object.defineProperty({}, 'description', {
10
+ enumerable: false,
11
+ value: data,
12
+ });
13
+ if ((0, shared_1.notUndefined)(data.t)) {
14
+ notification.title = data.t;
15
+ }
16
+ if ((0, shared_1.notUndefined)(data.m)) {
17
+ notification.message = data.m;
18
+ }
19
+ if ((0, shared_1.notUndefined)(data.tt)) {
20
+ notification.tickerText = data.tt;
21
+ }
22
+ if ((0, shared_1.notUndefined)(data.ig)) {
23
+ notification.igAction = data.ig;
24
+ const url = URL.parse(data.ig);
25
+ if (url.pathname) {
26
+ notification.actionPath = url.pathname;
27
+ }
28
+ if (url.query) {
29
+ notification.actionParams = querystring.decode(url.query);
30
+ }
31
+ }
32
+ if ((0, shared_1.notUndefined)(data.collapse_key)) {
33
+ notification.collapseKey = data.collapse_key;
34
+ }
35
+ if ((0, shared_1.notUndefined)(data.i)) {
36
+ notification.optionalImage = data.i;
37
+ }
38
+ if ((0, shared_1.notUndefined)(data.a)) {
39
+ notification.optionalAvatarUrl = data.a;
40
+ }
41
+ if ((0, shared_1.notUndefined)(data.sound)) {
42
+ notification.sound = data.sound;
43
+ }
44
+ if ((0, shared_1.notUndefined)(data.pi)) {
45
+ notification.pushId = data.pi;
46
+ }
47
+ if ((0, shared_1.notUndefined)(data.c)) {
48
+ notification.pushCategory = data.c;
49
+ }
50
+ if ((0, shared_1.notUndefined)(data.u)) {
51
+ notification.intendedRecipientUserId = data.u;
52
+ }
53
+ if ((0, shared_1.notUndefined)(data.s) && data.s !== 'None') {
54
+ notification.sourceUserId = data.s;
55
+ }
56
+ if ((0, shared_1.notUndefined)(data.igo)) {
57
+ notification.igActionOverride = data.igo;
58
+ }
59
+ if ((0, shared_1.notUndefined)(data.bc)) {
60
+ const badgeCount = {};
61
+ const parsed = JSON.parse(data.bc);
62
+ if ((0, shared_1.notUndefined)(parsed.di)) {
63
+ badgeCount.direct = parsed.di;
64
+ }
65
+ if ((0, shared_1.notUndefined)(parsed.ds)) {
66
+ badgeCount.ds = parsed.ds;
67
+ }
68
+ if ((0, shared_1.notUndefined)(parsed.ac)) {
69
+ badgeCount.activities = parsed.ac;
70
+ }
71
+ notification.badgeCount = badgeCount;
72
+ }
73
+ if ((0, shared_1.notUndefined)(data.ia)) {
74
+ notification.inAppActors = data.ia;
75
+ }
76
+ return notification;
77
+ }
78
+ exports.createNotificationFromJson = createNotificationFromJson;
79
+ //# sourceMappingURL=fbns.utilities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fbns.utilities.js","sourceRoot":"","sources":["../../src/fbns/fbns.utilities.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export * from './fbns.client';
2
+ export * from './fbns.device-auth';
3
+ export * from './fbns.types';
4
+ export * from './fbns.utilities';
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./fbns.client"), exports);
18
+ __exportStar(require("./fbns.device-auth"), exports);
19
+ __exportStar(require("./fbns.types"), exports);
20
+ __exportStar(require("./fbns.utilities"), exports);
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fbns/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,qDAAmC;AACnC,+CAA6B;AAC7B,mDAAiC"}
package/dist/index.js ADDED
@@ -0,0 +1,39 @@
1
+ const IgApiClient = require('./core/client');
2
+ const { IgApiClientError } = require('./errors');
3
+ const { RealtimeClient, IrisHandshake, SkywalkerProtocol, PresenceManager, DMSender, ErrorHandler, GapHandler, EnhancedDirectCommands, PresenceTypingMixin } = require('./realtime');
4
+ const constants = require('./constants/constants');
5
+ const sendmedia = require('./sendmedia');
6
+ const { useMultiFileAuthState, MultiFileAuthState, extractStateData, applyStateData } = require('./useMultiFileAuthState');
7
+ const { downloadContentFromMessage, downloadMediaBuffer, extractMediaUrls, hasMedia, getMediaType, isViewOnceMedia, MEDIA_TYPES } = require('./downloadMedia');
8
+
9
+ module.exports = {
10
+ IgApiClient,
11
+ IgApiClientError,
12
+ RealtimeClient,
13
+ // v5.18+ Protocols & Features
14
+ IrisHandshake,
15
+ SkywalkerProtocol,
16
+ PresenceManager,
17
+ DMSender,
18
+ ErrorHandler,
19
+ GapHandler,
20
+ EnhancedDirectCommands,
21
+ PresenceTypingMixin,
22
+ // Constants
23
+ Topics: constants.Topics,
24
+ REALTIME: constants.REALTIME,
25
+ sendmedia,
26
+ // Multi-file auth state (like Baileys)
27
+ useMultiFileAuthState,
28
+ MultiFileAuthState,
29
+ extractStateData,
30
+ applyStateData,
31
+ // Media Download (like Baileys downloadContentFromMessage)
32
+ downloadContentFromMessage,
33
+ downloadMediaBuffer,
34
+ extractMediaUrls,
35
+ hasMedia,
36
+ getMediaType,
37
+ isViewOnceMedia,
38
+ MEDIA_TYPES
39
+ };
@@ -0,0 +1,4 @@
1
+ export * from './mqttot.client';
2
+ export * from './mqttot.connect.request.packet';
3
+ export * from './mqttot.connect.response.packet';
4
+ export * from './mqttot.connection';
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./mqttot.client"), exports);
18
+ __exportStar(require("./mqttot.connect.request.packet"), exports);
19
+ __exportStar(require("./mqttot.connect.response.packet"), exports);
20
+ __exportStar(require("./mqttot.connection"), exports);
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mqttot/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC;AAChC,kEAAgD;AAChD,mEAAiD;AACjD,sDAAoC"}
@@ -0,0 +1,39 @@
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ import { MQTToTConnectPacketOptions } from './mqttot.connect.request.packet';
4
+ import { ConnectRequestOptions, DefaultPacketReadResultMap, DefaultPacketWriteOptions, MqttClient, MqttMessage, MqttMessageOutgoing, PacketFlowFunc, PacketType } from 'mqtts';
5
+ import { MQTToTConnectResponsePacket } from './mqttot.connect.response.packet';
6
+ import { SocksProxy } from 'socks';
7
+ import { ConnectionOptions } from 'tls';
8
+ type MQTToTReadMap = Omit<DefaultPacketReadResultMap, PacketType.ConnAck> & {
9
+ [PacketType.ConnAck]: MQTToTConnectResponsePacket;
10
+ };
11
+ type MQTToTWriteMap = Omit<DefaultPacketWriteOptions, PacketType.Connect> & {
12
+ [PacketType.Connect]: MQTToTConnectPacketOptions;
13
+ };
14
+ export declare class MQTToTClient extends MqttClient<MQTToTReadMap, MQTToTWriteMap> {
15
+ protected connectPayloadProvider: () => Promise<Buffer>;
16
+ protected connectPayload?: Buffer;
17
+ protected requirePayload: boolean;
18
+ protected mqttotDebug: (msg: string) => void;
19
+ constructor(options: {
20
+ url: string;
21
+ payloadProvider: () => Promise<Buffer>;
22
+ enableTrace?: boolean;
23
+ autoReconnect: boolean;
24
+ requirePayload: boolean;
25
+ socksOptions?: SocksProxy;
26
+ additionalOptions?: ConnectionOptions;
27
+ });
28
+ protected registerListeners(): void;
29
+ connect(options?: ConnectRequestOptions): Promise<any>;
30
+ protected getConnectFlow(): PacketFlowFunc<MQTToTReadMap, MQTToTWriteMap, any>;
31
+ /**
32
+ * Compresses the payload
33
+ * @param {MqttMessage} message
34
+ * @returns {Promise<MqttMessageOutgoing>}
35
+ */
36
+ mqttotPublish(message: MqttMessage): Promise<MqttMessageOutgoing>;
37
+ }
38
+ export declare function mqttotConnectFlow(payload: Buffer, requirePayload: boolean): PacketFlowFunc<MQTToTReadMap, MQTToTWriteMap, MQTToTConnectResponsePacket>;
39
+ export {};
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mqttotConnectFlow = exports.MQTToTClient = void 0;
4
+ const shared_1 = require("../shared");
5
+ const mqttot_connect_request_packet_1 = require("./mqttot.connect.request.packet");
6
+ const mqtts_1 = require("mqtts");
7
+ const errors_1 = require("../errors");
8
+ const mqttot_connect_response_packet_1 = require("./mqttot.connect.response.packet");
9
+ class MQTToTClient extends mqtts_1.MqttClient {
10
+ constructor(options) {
11
+ super({
12
+ autoReconnect: options.autoReconnect,
13
+ readMap: {
14
+ ...mqtts_1.DefaultPacketReadMap,
15
+ [mqtts_1.PacketType.ConnAck]: mqttot_connect_response_packet_1.readConnectResponsePacket,
16
+ },
17
+ writeMap: {
18
+ ...mqtts_1.DefaultPacketWriteMap,
19
+ [mqtts_1.PacketType.Connect]: mqttot_connect_request_packet_1.writeConnectRequestPacket,
20
+ },
21
+ transport: options.socksOptions
22
+ ? new mqtts_1.SocksTlsTransport({
23
+ host: options.url,
24
+ port: 443,
25
+ proxyOptions: options.socksOptions,
26
+ additionalOptions: options.additionalOptions,
27
+ })
28
+ : new mqtts_1.TlsTransport({
29
+ host: options.url,
30
+ port: 443,
31
+ additionalOptions: options.additionalOptions,
32
+ }),
33
+ });
34
+ this.mqttotDebug = (msg, ...args) => (0, shared_1.debugChannel)('mqttot')(`${options.url}: ${msg}`, ...args);
35
+ this.connectPayloadProvider = options.payloadProvider;
36
+ this.mqttotDebug(`Creating client`);
37
+ this.registerListeners();
38
+ this.requirePayload = options.requirePayload;
39
+ }
40
+ registerListeners() {
41
+ const printErrorOrWarning = (type) => (e) => {
42
+ if (typeof e === 'string') {
43
+ this.mqttotDebug(`${type}: ${e}`);
44
+ }
45
+ else {
46
+ this.mqttotDebug(`${type}: ${e.message}\n\tStack: ${e.stack}`);
47
+ }
48
+ };
49
+ this.on('error', printErrorOrWarning('Error'));
50
+ this.on('warning', printErrorOrWarning('Warning'));
51
+ this.on('disconnect', e => this.mqttotDebug(`Disconnected. ${e}`));
52
+ }
53
+ async connect(options) {
54
+ this.connectPayload = await this.connectPayloadProvider();
55
+ return super.connect(options);
56
+ }
57
+ getConnectFlow() {
58
+ if (!this.connectPayload) {
59
+ throw new mqtts_1.IllegalStateError('Called getConnectFlow() before calling connect()');
60
+ }
61
+ return mqttotConnectFlow(this.connectPayload, this.requirePayload);
62
+ }
63
+ /**
64
+ * Compresses the payload
65
+ * @param {MqttMessage} message
66
+ * @returns {Promise<MqttMessageOutgoing>}
67
+ */
68
+ async mqttotPublish(message) {
69
+ this.mqttotDebug(`Publishing ${message.payload.byteLength}bytes to topic ${message.topic}`);
70
+ return await this.publish({
71
+ topic: message.topic,
72
+ payload: await (0, shared_1.compressDeflate)(message.payload),
73
+ qosLevel: message.qosLevel,
74
+ });
75
+ }
76
+ /**
77
+ * Special listener for specific topics with transformers
78
+ * @param {Object} config - { topic, transformer }
79
+ * @param {Function} handler - Callback to handle transformed data
80
+ */
81
+ listen(config, handler) {
82
+ this.mqttotDebug(`[LISTEN] Setting up listener on topic ${config.topic} with transformer`);
83
+ this.on('message', async (msg) => {
84
+ if (msg.topic === config.topic) {
85
+ try {
86
+ const data = await config.transformer({ payload: msg.payload });
87
+ handler(data);
88
+ } catch (e) {
89
+ this.mqttotDebug(`Error in transformer for topic ${config.topic}: ${e.message}`);
90
+ this.emit('error', e);
91
+ }
92
+ }
93
+ });
94
+ }
95
+ }
96
+ exports.MQTToTClient = MQTToTClient;
97
+ function mqttotConnectFlow(payload, requirePayload) {
98
+ return (success, error) => ({
99
+ start: () => ({
100
+ type: mqtts_1.PacketType.Connect,
101
+ options: {
102
+ payload,
103
+ keepAlive: 60,
104
+ },
105
+ }),
106
+ accept: mqtts_1.isConnAck,
107
+ next: (packet) => {
108
+ if (packet.isSuccess) {
109
+ if (packet.payload?.length || !requirePayload)
110
+ success(packet);
111
+ else
112
+ error(new errors_1.EmptyPacketError(`CONNACK: no payload (payloadExpected): ${packet.payload}`));
113
+ }
114
+ else
115
+ error(new errors_1.ConnectionFailedError(`CONNACK returnCode: ${packet.returnCode} errorName: ${packet.errorName}`));
116
+ },
117
+ });
118
+ }
119
+ exports.mqttotConnectFlow = mqttotConnectFlow;
120
+ //# sourceMappingURL=mqttot.client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mqttot.client.js","sourceRoot":"","sources":["../../src/mqttot/mqttot.client.ts"],"names":[],"mappings":";;;AAAA,sCAA0D;AAC1D,mFAAwG;AACxG,iCAee;AACf,sCAAoE;AACpE,qFAA0G;AAW1G,MAAa,YAAa,SAAQ,kBAAyC;IAOxE,YAAmB,OAQlB;QACE,KAAK,CAAC;YACH,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,OAAO,EAAE;gBACN,GAAG,4BAAoB;gBACvB,CAAC,kBAAU,CAAC,OAAO,CAAC,EAAE,0DAAyB;aACjD;YACD,QAAQ,EAAE;gBACP,GAAG,6BAAqB;gBACxB,CAAC,kBAAU,CAAC,OAAO,CAAC,EAAE,yDAAyB;aACjD;YACD,SAAS,EAAE,OAAO,CAAC,YAAY;gBAC5B,CAAC,CAAC,IAAI,yBAAiB,CAAC;oBACnB,IAAI,EAAE,OAAO,CAAC,GAAG;oBACjB,IAAI,EAAE,GAAG;oBACT,YAAY,EAAE,OAAO,CAAC,YAAY;oBAClC,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;iBAC9C,CAAC;gBACJ,CAAC,CAAC,IAAI,oBAAY,CAAC;oBACd,IAAI,EAAE,OAAO,CAAC,GAAG;oBACjB,IAAI,EAAE,GAAG;oBACT,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;iBAC9C,CAAC;SACT,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,GAAG,CAAC,GAAW,EAAE,GAAG,IAAc,EAAE,EAAE,CAAC,IAAA,qBAAY,EAAC,QAAQ,CAAC,CAAC,GAAG,OAAO,CAAC,GAAG,KAAK,GAAG,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;QACjH,IAAI,CAAC,sBAAsB,GAAG,OAAO,CAAC,eAAe,CAAC;QACtD,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;QACpC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IAChD,CAAC;IAES,iBAAiB;QACxB,MAAM,mBAAmB,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAiB,EAAE,EAAE;YACjE,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;gBACzB,IAAI,CAAC,WAAW,CAAC,GAAG,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC;YACrC,CAAC;iBAAM,CAAC;gBACL,IAAI,CAAC,WAAW,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC,OAAO,cAAc,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAClE,CAAC;QACJ,CAAC,CAAC;QACF,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/C,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC;QACnD,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC;IACtE,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAA+B;QAC1C,IAAI,CAAC,cAAc,GAAG,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC1D,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAES,cAAc;QACrB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,MAAM,IAAI,yBAAiB,CAAC,kDAAkD,CAAC,CAAC;QACnF,CAAC;QACD,OAAO,iBAAiB,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IACtE,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,aAAa,CAAC,OAAoB;QAC5C,IAAI,CAAC,WAAW,CAAC,cAAc,OAAO,CAAC,OAAO,CAAC,UAAU,kBAAkB,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QAC5F,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC;YACvB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,OAAO,EAAE,MAAM,IAAA,wBAAe,EAAC,OAAO,CAAC,OAAO,CAAC;YAC/C,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC5B,CAAC,CAAC;IACN,CAAC;CACH;AApFD,oCAoFC;AAED,SAAgB,iBAAiB,CAC9B,OAAe,EACf,cAAuB;IAEvB,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QACzB,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YACX,IAAI,EAAE,kBAAU,CAAC,OAAO;YACxB,OAAO,EAAE;gBACN,OAAO;gBACP,SAAS,EAAE,EAAE;aACf;SACH,CAAC;QACF,MAAM,EAAE,iBAAS;QACjB,IAAI,EAAE,CAAC,MAAmC,EAAE,EAAE;YAC3C,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;gBACpB,IAAI,MAAM,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,cAAc;oBAAE,OAAO,CAAC,MAAM,CAAC,CAAC;;oBAC1D,KAAK,CAAC,IAAI,yBAAgB,CAAC,0CAA0C,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YAChG,CAAC;;gBACE,KAAK,CAAC,IAAI,8BAAqB,CAAC,uBAAuB,MAAM,CAAC,UAAU,eAAe,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QAClH,CAAC;KACH,CAAC,CAAC;AACN,CAAC;AArBD,8CAqBC"}
@@ -0,0 +1,7 @@
1
+ /// <reference types="node" />
2
+ import { PacketStream, PacketWriteResult } from 'mqtts';
3
+ export interface MQTToTConnectPacketOptions {
4
+ keepAlive: number;
5
+ payload: Buffer;
6
+ }
7
+ export declare function writeConnectRequestPacket(stream: PacketStream, options: MQTToTConnectPacketOptions): PacketWriteResult;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.writeConnectRequestPacket = void 0;
4
+ function writeConnectRequestPacket(stream, options) {
5
+ stream.writeString('MQTToT').writeByte(3).writeByte(194).writeWord(options.keepAlive).write(options.payload);
6
+ return {};
7
+ }
8
+ exports.writeConnectRequestPacket = writeConnectRequestPacket;
9
+ //# sourceMappingURL=mqttot.connect.request.packet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mqttot.connect.request.packet.js","sourceRoot":"","sources":["../../src/mqttot/mqttot.connect.request.packet.ts"],"names":[],"mappings":";;;AAMA,SAAgB,yBAAyB,CACtC,MAAoB,EACpB,OAAmC;IAEnC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7G,OAAO,EAAE,CAAC;AACb,CAAC;AAND,8DAMC"}
@@ -0,0 +1,7 @@
1
+ /// <reference types="node" />
2
+ import { ConnectResponsePacket, PacketStream, ConnectReturnCode } from 'mqtts';
3
+ export declare class MQTToTConnectResponsePacket extends ConnectResponsePacket {
4
+ readonly payload: Buffer;
5
+ constructor(ackFlags: number, returnCode: ConnectReturnCode, payload: Buffer);
6
+ }
7
+ export declare function readConnectResponsePacket(stream: PacketStream, remaining: number): MQTToTConnectResponsePacket;
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.readConnectResponsePacket = exports.MQTToTConnectResponsePacket = void 0;
4
+ const mqtts_1 = require("mqtts");
5
+ class MQTToTConnectResponsePacket extends mqtts_1.ConnectResponsePacket {
6
+ constructor(ackFlags, returnCode, payload) {
7
+ super(ackFlags, returnCode);
8
+ this.payload = payload;
9
+ }
10
+ }
11
+ exports.MQTToTConnectResponsePacket = MQTToTConnectResponsePacket;
12
+ function readConnectResponsePacket(stream, remaining) {
13
+ const ack = stream.readByte();
14
+ const returnCode = stream.readByte();
15
+ if (ack > 1) {
16
+ throw new Error('Invalid ack');
17
+ }
18
+ else if (returnCode > 5) {
19
+ throw new Error('Invalid return code');
20
+ }
21
+ return new MQTToTConnectResponsePacket(ack, returnCode, remaining > 2 ? stream.readStringAsBuffer() : Buffer.alloc(0));
22
+ }
23
+ exports.readConnectResponsePacket = readConnectResponsePacket;
24
+ //# sourceMappingURL=mqttot.connect.response.packet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mqttot.connect.response.packet.js","sourceRoot":"","sources":["../../src/mqttot/mqttot.connect.response.packet.ts"],"names":[],"mappings":";;;AAAA,iCAA+E;AAE/E,MAAa,2BAA4B,SAAQ,6BAAqB;IACnE,YACG,QAAgB,EAChB,UAA6B,EACb,OAAe;QAE/B,KAAK,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAFZ,YAAO,GAAP,OAAO,CAAQ;IAGlC,CAAC;CACH;AARD,kEAQC;AAED,SAAgB,yBAAyB,CAAC,MAAoB,EAAE,SAAiB;IAC9E,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC9B,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IACrC,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC;SAAM,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAC1C,CAAC;IACD,OAAO,IAAI,2BAA2B,CACnC,GAAG,EACH,UAA+B,EAC/B,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAC/D,CAAC;AACL,CAAC;AAbD,8DAaC"}