bottender
Version:
A framework for building conversational user interfaces.
37 lines • 1.95 kB
TypeScript
/// <reference types="node" />
import { EventEmitter } from 'events';
import { JsonObject } from 'type-fest';
import { MessengerClient } from 'messaging-api-messenger';
import Session from '../session/Session';
import { Connector } from '../bot/Connector';
import FacebookBaseConnector, { FacebookBaseConnectorOptions } from './FacebookBaseConnector';
import MessengerContext from './MessengerContext';
import MessengerEvent from './MessengerEvent';
import { MessengerRawEvent, MessengerRequestBody, MessengerRequestContext } from './MessengerTypes';
export declare type MessengerConnectorOptions = FacebookBaseConnectorOptions<MessengerClient> & {
skipLegacyProfile?: boolean;
mapPageToAccessToken?: (pageId: string) => Promise<string>;
};
export default class MessengerConnector extends FacebookBaseConnector<MessengerRequestBody, MessengerClient> implements Connector<MessengerRequestBody, MessengerClient> {
_skipLegacyProfile: boolean;
_mapPageToAccessToken: ((pageId: string) => Promise<string>) | null;
constructor(options: MessengerConnectorOptions);
_getRawEventsFromRequest(body: MessengerRequestBody): MessengerRawEvent[];
_getPageIdFromRawEvent(rawEvent: MessengerRawEvent): string | null;
_isStandby(body: MessengerRequestBody): boolean;
_profilePicExpired(user: {
profilePic: string;
}): boolean;
get platform(): 'messenger';
getUniqueSessionKey(bodyOrEvent: MessengerRequestBody | MessengerEvent): string | null;
updateSession(session: Session, bodyOrEvent: MessengerRequestBody | MessengerEvent): Promise<void>;
mapRequestToEvents(body: MessengerRequestBody): MessengerEvent[];
createContext(params: {
event: MessengerEvent;
session?: Session;
initialState?: JsonObject;
requestContext?: MessengerRequestContext;
emitter?: EventEmitter;
}): Promise<MessengerContext>;
}
//# sourceMappingURL=MessengerConnector.d.ts.map