UNPKG

awesome-im

Version:

Lightweight, extensible, JavaScript Instant Messaging.

41 lines (34 loc) 932 B
import Channel from "./engine/channel" import { eventEmitter } from './utils/eventEmitter'; import * as Message from "./engine/message" class APIContext { constructor() { this.channel = null; this.connectStatus = null; this.Message = Message; } init(options) { this.channel = new Channel({ options }) return this.channel } async connect(url) { return await this.channel.connect(url) } async disconnect(url) { return await this.channel.disconnect() } async reconnect(url) { return await this.channel.reconnect() } async send(data) { return await this.channel._sendData(data) } addEventListener(eventName, listener) { eventEmitter.on(eventName, (data) => { listener(data) }) } } export default new APIContext();