UNPKG

18.9 kBHTMLView Raw
1<!doctype html>
2<html class="default no-js">
3<head>
4 <meta charset="utf-8">
5 <meta http-equiv="X-UA-Compatible" content="IE=edge">
6 <title>libfb</title>
7 <meta name="description" content="">
8 <meta name="viewport" content="width=device-width, initial-scale=1">
9 <link rel="stylesheet" href="assets/css/main.css">
10</head>
11<body>
12<header>
13 <div class="tsd-page-toolbar">
14 <div class="container">
15 <div class="table-wrap">
16 <div class="table-cell" id="tsd-search" data-index="assets/js/search.js" data-base=".">
17 <div class="field">
18 <label for="tsd-search-field" class="tsd-widget search no-caption">Search</label>
19 <input id="tsd-search-field" type="text" />
20 </div>
21 <ul class="results">
22 <li class="state loading">Preparing search index...</li>
23 <li class="state failure">The search index is not available</li>
24 </ul>
25 <a href="index.html" class="title">libfb</a>
26 </div>
27 <div class="table-cell" id="tsd-widgets">
28 <div id="tsd-filter">
29 <a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a>
30 <div class="tsd-filter-group">
31 <div class="tsd-select" id="tsd-filter-visibility">
32 <span class="tsd-select-label">All</span>
33 <ul class="tsd-select-list">
34 <li data-value="public">Public</li>
35 <li data-value="protected">Public/Protected</li>
36 <li data-value="private" class="selected">All</li>
37 </ul>
38 </div>
39 <input type="checkbox" id="tsd-filter-inherited" checked />
40 <label class="tsd-widget" for="tsd-filter-inherited">Inherited</label>
41 <input type="checkbox" id="tsd-filter-externals" checked />
42 <label class="tsd-widget" for="tsd-filter-externals">Externals</label>
43 </div>
44 </div>
45 <a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a>
46 </div>
47 </div>
48 </div>
49 </div>
50 <div class="tsd-page-title">
51 <div class="container">
52 <ul class="tsd-breadcrumb">
53 <li>
54 <a href="globals.html">Globals</a>
55 </li>
56 </ul>
57 <h1> libfb</h1>
58 </div>
59 </div>
60</header>
61<div class="container container-main">
62 <div class="row">
63 <div class="col-8 col-content">
64 <div class="tsd-panel tsd-typography">
65 <h1 id="libfb-js">libfb-js</h1>
66 <blockquote>
67 <p>Facebook chat MQTT library for Node.js</p>
68 </blockquote>
69 <p><img src="https://img.shields.io/npm/v/libfb.svg?style=for-the-badge" alt="npm"> &nbsp;
70 <a href="https://npmjs.com/package/libfb"><img src="https://img.shields.io/npm/dt/libfb.svg?style=for-the-badge" alt="npm"></a> &nbsp;
71 <img src="https://img.shields.io/badge/Built%20with-%E2%9D%A4%20LOVE-red.svg?longCache=true&style=for-the-badge" alt="love"></p>
72 <h2 id="example-usage">Example usage</h2>
73 <h3 id="echo-bot">Echo bot</h3>
74 <pre><code class="language-js"><span class="hljs-keyword">const</span> { Client } = <span class="hljs-built_in">require</span>(<span class="hljs-string">'libfb'</span>)
75<span class="hljs-keyword">const</span> client = <span class="hljs-keyword">new</span> Client()
76client.login(<span class="hljs-string">'username'</span>, <span class="hljs-string">'password'</span>).then(<span class="hljs-function"><span class="hljs-params">()</span> =&gt;</span> {
77 client.on(<span class="hljs-string">'message'</span>, message =&gt; {
78 <span class="hljs-built_in">console</span>.log(<span class="hljs-string">'Got a message!'</span>)
79 <span class="hljs-built_in">console</span>.log(message.message)
80 client.sendMessage(message.threadId, message.message)
81 })
82})</code></pre>
83 <h3 id="chat-greeting">Chat greeting</h3>
84 <pre><code class="language-js"><span class="hljs-keyword">const</span> { Client } = <span class="hljs-built_in">require</span>(<span class="hljs-string">'libfb'</span>)
85<span class="hljs-keyword">const</span> client = <span class="hljs-keyword">new</span> Client()
86client.login(<span class="hljs-string">'username'</span>, <span class="hljs-string">'password'</span>).then(<span class="hljs-function"><span class="hljs-params">()</span> =&gt;</span> {
87 client.on(<span class="hljs-string">'participantsAddedToGroupThreadEvent'</span>, <span class="hljs-keyword">async</span> event =&gt; {
88 <span class="hljs-keyword">const</span> user = <span class="hljs-keyword">await</span> client.getUserInfo(event.participantIds[<span class="hljs-number">0</span>])
89 client.sendMessage(event.threadId, <span class="hljs-string">`Hello, <span class="hljs-subst">${user.name}</span>!`</span>)
90 })
91})</code></pre>
92 <h2 id="documentation">Documentation</h2>
93 <p>See <a href="https://chatplug.github.io/libfb-js/">here</a></p>
94 <h2 id="disclaimer">Disclaimer</h2>
95 <blockquote>
96 <p>We do not guarantee that this product will work correctly. Use only with <a href="https://www.facebook.com/whitehat/accounts/">whitehat accounts</a> for research/educational purposes. We are not responsible for getting banned on Facebook.<br>MQTT connection logic was based on <a href="https://github.com/bitlbee-facebook">bitlbee-facebook</a>.<br>All product and company names are trademarks™ or registered® trademarks of their respective holders. Use of them does not imply any affiliation with or endorsement by them.<br>&quot;Facebook&quot; is a registered trademark of Facebook, Inc., used under license agreement.</p>
97 </blockquote>
98 </div>
99 </div>
100 <div class="col-4 col-menu menu-sticky-wrap menu-highlight">
101 <nav class="tsd-navigation primary">
102 <ul>
103 <li class="globals ">
104 <a href="globals.html"><em>Globals</em></a>
105 </li>
106 </ul>
107 </nav>
108 <nav class="tsd-navigation secondary menu-sticky">
109 <ul class="before-current">
110 <li class=" tsd-kind-class">
111 <a href="classes/apierror.html" class="tsd-kind-icon">APIError</a>
112 </li>
113 <li class=" tsd-kind-class">
114 <a href="classes/attachmentnotfounderror.html" class="tsd-kind-icon">Attachment<wbr>Not<wbr>Found<wbr>Error</a>
115 </li>
116 <li class=" tsd-kind-class">
117 <a href="classes/attachmenturlmissingerror.html" class="tsd-kind-icon">AttachmentURLMissing<wbr>Error</a>
118 </li>
119 <li class=" tsd-kind-class">
120 <a href="classes/authapierror.html" class="tsd-kind-icon">AuthAPIError</a>
121 </li>
122 <li class=" tsd-kind-class">
123 <a href="classes/client.html" class="tsd-kind-icon">Client</a>
124 </li>
125 <li class=" tsd-kind-class">
126 <a href="classes/randomintgenerator.html" class="tsd-kind-icon">Random<wbr>Int<wbr>Generator</a>
127 </li>
128 <li class=" tsd-kind-class">
129 <a href="classes/uploadapierror.html" class="tsd-kind-icon">UploadAPIError</a>
130 </li>
131 <li class=" tsd-kind-interface">
132 <a href="interfaces/addthreadadminsevent.html" class="tsd-kind-icon">Add<wbr>Thread<wbr>Admins<wbr>Event</a>
133 </li>
134 <li class=" tsd-kind-interface">
135 <a href="interfaces/advertxma.html" class="tsd-kind-icon">AdvertXMA</a>
136 </li>
137 <li class=" tsd-kind-interface">
138 <a href="interfaces/attachment.html" class="tsd-kind-icon">Attachment</a>
139 </li>
140 <li class=" tsd-kind-interface">
141 <a href="interfaces/audioattachment.html" class="tsd-kind-icon">Audio<wbr>Attachment</a>
142 </li>
143 <li class=" tsd-kind-interface">
144 <a href="interfaces/authtokens.html" class="tsd-kind-icon">Auth<wbr>Tokens</a>
145 </li>
146 <li class=" tsd-kind-interface">
147 <a href="interfaces/changethreadiconevent.html" class="tsd-kind-icon">Change<wbr>Thread<wbr>Icon<wbr>Event</a>
148 </li>
149 <li class=" tsd-kind-interface">
150 <a href="interfaces/changethreadnicknameevent.html" class="tsd-kind-icon">Change<wbr>Thread<wbr>Nickname<wbr>Event</a>
151 </li>
152 <li class=" tsd-kind-interface">
153 <a href="interfaces/changethreadthemeevent.html" class="tsd-kind-icon">Change<wbr>Thread<wbr>Theme<wbr>Event</a>
154 </li>
155 <li class=" tsd-kind-interface">
156 <a href="interfaces/clientevents.html" class="tsd-kind-icon">Client<wbr>Events</a>
157 </li>
158 <li class=" tsd-kind-interface">
159 <a href="interfaces/clientoptions.html" class="tsd-kind-icon">Client<wbr>Options</a>
160 </li>
161 <li class=" tsd-kind-interface">
162 <a href="interfaces/deliveryreceiptevent.html" class="tsd-kind-icon">Delivery<wbr>Receipt<wbr>Event</a>
163 </li>
164 <li class=" tsd-kind-interface">
165 <a href="interfaces/deviceid.html" class="tsd-kind-icon">Device<wbr>Id</a>
166 </li>
167 <li class=" tsd-kind-interface">
168 <a href="interfaces/event.html" class="tsd-kind-icon">Event</a>
169 </li>
170 <li class=" tsd-kind-interface">
171 <a href="interfaces/eventreminderxma.html" class="tsd-kind-icon">Event<wbr>ReminderXMA</a>
172 </li>
173 <li class=" tsd-kind-interface">
174 <a href="interfaces/externalurlxma.html" class="tsd-kind-icon">External<wbr>UrlXMA</a>
175 </li>
176 <li class=" tsd-kind-interface">
177 <a href="interfaces/fileattachment.html" class="tsd-kind-icon">File<wbr>Attachment</a>
178 </li>
179 <li class=" tsd-kind-interface">
180 <a href="interfaces/groupxma.html" class="tsd-kind-icon">GroupXMA</a>
181 </li>
182 <li class=" tsd-kind-interface">
183 <a href="interfaces/imageattachment.html" class="tsd-kind-icon">Image<wbr>Attachment</a>
184 </li>
185 <li class=" tsd-kind-interface">
186 <a href="interfaces/instagramxma.html" class="tsd-kind-icon">InstagramXMA</a>
187 </li>
188 <li class=" tsd-kind-interface">
189 <a href="interfaces/leaderboardupdatexma.html" class="tsd-kind-icon">Leaderboard<wbr>UpdateXMA</a>
190 </li>
191 <li class=" tsd-kind-interface">
192 <a href="interfaces/lightweightactionxma.html" class="tsd-kind-icon">Lightweight<wbr>ActionXMA</a>
193 </li>
194 <li class=" tsd-kind-interface">
195 <a href="interfaces/livelocationxma.html" class="tsd-kind-icon">Live<wbr>LocationXMA</a>
196 </li>
197 <li class=" tsd-kind-interface">
198 <a href="interfaces/locationxma.html" class="tsd-kind-icon">LocationXMA</a>
199 </li>
200 <li class=" tsd-kind-interface">
201 <a href="interfaces/message.html" class="tsd-kind-icon">Message</a>
202 </li>
203 <li class=" tsd-kind-interface">
204 <a href="interfaces/messageevent.html" class="tsd-kind-icon">Message<wbr>Event</a>
205 </li>
206 <li class=" tsd-kind-interface">
207 <a href="interfaces/montagexma.html" class="tsd-kind-icon">MontageXMA</a>
208 </li>
209 <li class=" tsd-kind-interface">
210 <a href="interfaces/pagexma.html" class="tsd-kind-icon">PageXMA</a>
211 </li>
212 <li class=" tsd-kind-interface">
213 <a href="interfaces/participantleftgroupthreadevent.html" class="tsd-kind-icon">Participant<wbr>Left<wbr>Group<wbr>Thread<wbr>Event</a>
214 </li>
215 <li class=" tsd-kind-interface">
216 <a href="interfaces/participantsaddedtogroupthreadevent.html" class="tsd-kind-icon">Participants<wbr>Added<wbr>ToGroup<wbr>Thread<wbr>Event</a>
217 </li>
218 <li class=" tsd-kind-interface">
219 <a href="interfaces/plancreateevent.html" class="tsd-kind-icon">Plan<wbr>Create<wbr>Event</a>
220 </li>
221 <li class=" tsd-kind-interface">
222 <a href="interfaces/plandeleteevent.html" class="tsd-kind-icon">Plan<wbr>Delete<wbr>Event</a>
223 </li>
224 <li class=" tsd-kind-interface">
225 <a href="interfaces/planevent.html" class="tsd-kind-icon">Plan<wbr>Event</a>
226 </li>
227 <li class=" tsd-kind-interface">
228 <a href="interfaces/planguest.html" class="tsd-kind-icon">Plan<wbr>Guest</a>
229 </li>
230 <li class=" tsd-kind-interface">
231 <a href="interfaces/planrsvpevent.html" class="tsd-kind-icon">Plan<wbr>Rsvp<wbr>Event</a>
232 </li>
233 <li class=" tsd-kind-interface">
234 <a href="interfaces/planupdatelocationevent.html" class="tsd-kind-icon">Plan<wbr>Update<wbr>Location<wbr>Event</a>
235 </li>
236 <li class=" tsd-kind-interface">
237 <a href="interfaces/planupdatetimeevent.html" class="tsd-kind-icon">Plan<wbr>Update<wbr>Time<wbr>Event</a>
238 </li>
239 <li class=" tsd-kind-interface">
240 <a href="interfaces/planupdatetitleevent.html" class="tsd-kind-icon">Plan<wbr>Update<wbr>Title<wbr>Event</a>
241 </li>
242 <li class=" tsd-kind-interface">
243 <a href="interfaces/pollcreateevent.html" class="tsd-kind-icon">Poll<wbr>Create<wbr>Event</a>
244 </li>
245 <li class=" tsd-kind-interface">
246 <a href="interfaces/pollevent.html" class="tsd-kind-icon">Poll<wbr>Event</a>
247 </li>
248 <li class=" tsd-kind-interface">
249 <a href="interfaces/polloption.html" class="tsd-kind-icon">Poll<wbr>Option</a>
250 </li>
251 <li class=" tsd-kind-interface">
252 <a href="interfaces/pollupdatevoteevent.html" class="tsd-kind-icon">Poll<wbr>Update<wbr>Vote<wbr>Event</a>
253 </li>
254 <li class=" tsd-kind-interface">
255 <a href="interfaces/productxma.html" class="tsd-kind-icon">ProductXMA</a>
256 </li>
257 <li class=" tsd-kind-interface">
258 <a href="interfaces/readreceiptevent.html" class="tsd-kind-icon">Read<wbr>Receipt<wbr>Event</a>
259 </li>
260 <li class=" tsd-kind-interface">
261 <a href="interfaces/session.html" class="tsd-kind-icon">Session</a>
262 </li>
263 <li class=" tsd-kind-interface">
264 <a href="interfaces/storyxma.html" class="tsd-kind-icon">StoryXMA</a>
265 </li>
266 <li class=" tsd-kind-interface">
267 <a href="interfaces/thread.html" class="tsd-kind-icon">Thread</a>
268 </li>
269 <li class=" tsd-kind-interface">
270 <a href="interfaces/threadnameevent.html" class="tsd-kind-icon">Thread<wbr>Name<wbr>Event</a>
271 </li>
272 <li class=" tsd-kind-interface">
273 <a href="interfaces/unavailablexma.html" class="tsd-kind-icon">UnavailableXMA</a>
274 </li>
275 <li class=" tsd-kind-interface">
276 <a href="interfaces/user.html" class="tsd-kind-icon">User</a>
277 </li>
278 <li class=" tsd-kind-interface">
279 <a href="interfaces/videoattachment.html" class="tsd-kind-icon">Video<wbr>Attachment</a>
280 </li>
281 <li class=" tsd-kind-interface">
282 <a href="interfaces/xmaattachment.html" class="tsd-kind-icon">XMAAttachment</a>
283 </li>
284 <li class=" tsd-kind-type-alias">
285 <a href="globals.html#eventtype" class="tsd-kind-icon">Event<wbr>Type</a>
286 </li>
287 </ul>
288 </nav>
289 </div>
290 </div>
291</div>
292<footer class="with-border-bottom">
293 <div class="container">
294 <h2>Legend</h2>
295 <div class="tsd-legend-group">
296 <ul class="tsd-legend">
297 <li class="tsd-kind-module"><span class="tsd-kind-icon">Module</span></li>
298 <li class="tsd-kind-object-literal"><span class="tsd-kind-icon">Object literal</span></li>
299 <li class="tsd-kind-variable"><span class="tsd-kind-icon">Variable</span></li>
300 <li class="tsd-kind-function"><span class="tsd-kind-icon">Function</span></li>
301 <li class="tsd-kind-function tsd-has-type-parameter"><span class="tsd-kind-icon">Function with type parameter</span></li>
302 <li class="tsd-kind-index-signature"><span class="tsd-kind-icon">Index signature</span></li>
303 <li class="tsd-kind-type-alias"><span class="tsd-kind-icon">Type alias</span></li>
304 </ul>
305 <ul class="tsd-legend">
306 <li class="tsd-kind-enum"><span class="tsd-kind-icon">Enumeration</span></li>
307 <li class="tsd-kind-enum-member"><span class="tsd-kind-icon">Enumeration member</span></li>
308 <li class="tsd-kind-property tsd-parent-kind-enum"><span class="tsd-kind-icon">Property</span></li>
309 <li class="tsd-kind-method tsd-parent-kind-enum"><span class="tsd-kind-icon">Method</span></li>
310 </ul>
311 <ul class="tsd-legend">
312 <li class="tsd-kind-interface"><span class="tsd-kind-icon">Interface</span></li>
313 <li class="tsd-kind-interface tsd-has-type-parameter"><span class="tsd-kind-icon">Interface with type parameter</span></li>
314 <li class="tsd-kind-constructor tsd-parent-kind-interface"><span class="tsd-kind-icon">Constructor</span></li>
315 <li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li>
316 <li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li>
317 <li class="tsd-kind-index-signature tsd-parent-kind-interface"><span class="tsd-kind-icon">Index signature</span></li>
318 </ul>
319 <ul class="tsd-legend">
320 <li class="tsd-kind-class"><span class="tsd-kind-icon">Class</span></li>
321 <li class="tsd-kind-class tsd-has-type-parameter"><span class="tsd-kind-icon">Class with type parameter</span></li>
322 <li class="tsd-kind-constructor tsd-parent-kind-class"><span class="tsd-kind-icon">Constructor</span></li>
323 <li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li>
324 <li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li>
325 <li class="tsd-kind-accessor tsd-parent-kind-class"><span class="tsd-kind-icon">Accessor</span></li>
326 <li class="tsd-kind-index-signature tsd-parent-kind-class"><span class="tsd-kind-icon">Index signature</span></li>
327 </ul>
328 <ul class="tsd-legend">
329 <li class="tsd-kind-constructor tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited constructor</span></li>
330 <li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited property</span></li>
331 <li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited method</span></li>
332 <li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited accessor</span></li>
333 </ul>
334 <ul class="tsd-legend">
335 <li class="tsd-kind-property tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected property</span></li>
336 <li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected method</span></li>
337 <li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected accessor</span></li>
338 </ul>
339 <ul class="tsd-legend">
340 <li class="tsd-kind-property tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private property</span></li>
341 <li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private method</span></li>
342 <li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private accessor</span></li>
343 </ul>
344 <ul class="tsd-legend">
345 <li class="tsd-kind-property tsd-parent-kind-class tsd-is-static"><span class="tsd-kind-icon">Static property</span></li>
346 <li class="tsd-kind-call-signature tsd-parent-kind-class tsd-is-static"><span class="tsd-kind-icon">Static method</span></li>
347 </ul>
348 </div>
349 </div>
350</footer>
351<div class="container tsd-generator">
352 <p>Generated using <a href="http://typedoc.org/" target="_blank">TypeDoc</a></p>
353</div>
354<div class="overlay"></div>
355<script src="assets/js/main.js"></script>
356<script>if (location.protocol == 'file:') document.write('<script src="assets/js/search.js"><' + '/script>');</script>
357</body>
358</html>
\No newline at end of file