wildfire-im-sdk
Version:
野火IM SDK for Vue3 projects
141 lines (140 loc) • 5.06 kB
TypeScript
import Config from './config';
import wfc from './wfc/client/wfc';
import impl from './wfc/proto/proto.min.js';
import Conversation from './wfc/model/conversation';
import ConversationType from './wfc/model/conversationType';
import GroupInfo from './wfc/model/groupInfo';
import GroupMember from './wfc/model/groupMember';
import MessageContent from './wfc/messages/messageContent';
import MessageContentType from './wfc/messages/messageContentType';
import UserInfo from './wfc/model/userInfo';
import EventType from './wfc/client/wfcEvent';
import ConnectionStatus from './wfc/client/connectionStatus';
import TextMessageContent from './wfc/messages/textMessageContent';
import ImageMessageContent from './wfc/messages/imageMessageContent';
import VideoMessageContent from './wfc/messages/videoMessageContent';
import FileMessageContent from './wfc/messages/fileMessageContent';
import StickerMessageContent from './wfc/messages/stickerMessageContent';
/**
* SDK配置类型定义
*/
export interface SDKConfig {
APP_SERVER?: string;
ROUTE_PORT?: number;
DEFAULT_USER_ID?: string;
DEFAULT_TOKEN?: string;
AUTO_CONNECT?: boolean;
CLIENT_ID_STRATEGY?: number;
PLATFORM?: number;
KEEP_ALIVE_INTERVAL?: number;
KEEP_ALIVE_TIMEOUT?: number;
REQUEST_TIMEOUT?: number;
MAX_RETRY_COUNT?: number;
ENABLE_LOG?: boolean;
ENABLE_SYNC_DRAFT?: boolean;
ENABLE_OFFLINE_MESSAGE?: boolean;
ENABLE_MESSAGE_RECEIPT?: boolean;
ENABLE_NOTIFICATION?: boolean;
UI?: {
DEFAULT_AVATAR_URL?: string;
DEFAULT_GROUP_AVATAR_URL?: string;
MESSAGE_RECALL_TIME_LIMIT?: number;
};
[key: string]: any;
}
/**
* 初始化SDK
* @param config 可选的配置参数,覆盖默认配置
*/
export declare function init(config?: SDKConfig): {
config: {
APP_SERVER: string;
ROUTE_PORT: number;
USE_WSS: boolean;
ENABLE_AUTO_LOGIN: boolean;
ENABLE_MULTI_VOIP_CALL: boolean;
ENABLE_SINGLE_VOIP_CALL: boolean;
ENABLE_VOIP_DEBUG_MODE: boolean;
DEFAULT_PORTRAIT_URL: string;
DEFAULT_GROUP_PORTRAIT_URL: string;
DEFAULT_ORGANIZATION_PORTRAIT_URL: string;
DEFAULT_DEPARTMENT_PORTRAIT_URL: string;
DEFAULT_MESH_PORTRAIT_URL: string;
DEFAULT_THUMBNAIL_URL: string;
AUTO_CONNECT: boolean;
DISABLE_LOG: boolean;
ASR_SERVER: any;
ORGANIZATION_SERVER: string;
QR_CODE_PREFIX_PC_SESSION: string;
ICE_SERVERS: string[][];
MESSAGE_ROAMING: number;
AI_PORTAL_URL: any;
ENABLE_ROAMING_MESSAGE_RECEIVING_NOTIFICATION: boolean;
ENABLE_ROAMING_TRANSPARENT_MESSAGE_RECEIVING_NOTIFICATION: boolean;
ENABLE_GENERATE_CONVERSATION_FOR_TRANSPARENT_MESSAGE: boolean;
CLIENT_ID_STRATEGY: number;
SDK_PLATFORM_WINDOWS: number;
SDK_PLATFORM_OSX: number;
SDK_PLATFORM_WEB: number;
SDK_PLATFORM_WX: number;
KEEP_ALIVE_INTERNAL: number;
KEEP_ALIVE_TIMEOUT: number;
PLATFORM: number;
KEEP_ALIVE_INTERVAL: number;
REQUEST_TIMEOUT: number;
MAX_RETRY_COUNT: number;
ENABLE_LOG: boolean;
ENABLE_SYNC_DRAFT: boolean;
ENABLE_OFFLINE_MESSAGE: boolean;
ENABLE_MESSAGE_RECEIPT: boolean;
ENABLE_NOTIFICATION: boolean;
AMR_TO_MP3_SERVER_ADDRESS: string;
SEND_MESSAGE_TIMEOUT: number;
CONVERSATION_EXPIRE_TIME: number;
FILE_HELPER_ID: string;
ENABLE_INFO_PERSISTENCE: boolean;
MAX_TO_LOAD_UNREAD_COUNT_PER_CONVERSATION: number;
RECALL_REEDIT_TIME_LIMIT: number;
ENABLE_MULTI_CALL_AUTO_JOIN: boolean;
ENABLE_PTT: boolean;
ENABLE_MIX_MEDIA_MESSAGE: boolean;
SEND_LOG_COMMAND: string;
ENABLE_WATER_MARK: boolean;
SHOW_VOIP_TIP: boolean;
UI: {
DEFAULT_AVATAR_URL: string;
DEFAULT_GROUP_AVATAR_URL: string;
MESSAGE_RECALL_TIME_LIMIT: number;
};
getWFCPlatform(): number;
config(options: any): void;
urlRedirect(url: string): string;
isUseBackupAddress(): boolean;
emojiBaseUrl(): string;
stickerBaseUrl(): string;
};
initialized: boolean;
};
/**
* 连接到服务器
* @param userId 用户ID
* @param token 用户token
* @returns 是否成功连接
*/
export declare function connect(userId: string, token: string): any;
/**
* 断开连接
*/
export declare function disconnect(): void;
/**
* 获取连接状态
* @returns 当前连接状态
*/
export declare function getConnectionStatus(): number;
/**
* 获取当前SDK配置
* @returns 当前配置对象的副本
*/
export declare function getConfig(): any;
export { Config, wfc, impl, // 导出impl对象
Conversation, ConversationType, GroupInfo, GroupMember, MessageContent, MessageContentType, UserInfo, EventType, ConnectionStatus, TextMessageContent, ImageMessageContent, VideoMessageContent, FileMessageContent, StickerMessageContent };