acp-ws
Version:
基于 WebSocket 的智能体通信库,提供智能体身份管理和实时通信功能
76 lines (75 loc) • 2.68 kB
TypeScript
import { IAgentWS } from "./interfaces";
import { ConnectionStatus, ACPMessageSessionResponse, InviteStatus } from "./websocket";
/**
* AgentWS类
* 提供基于WebSocket的智能体通信功能,封装了WebSocket连接、会话创建和消息传递等操作
*/
declare class AgentWS implements IAgentWS {
/** 智能体ID */
private aid;
/** WebSocket客户端实例 */
private msgClient;
/** 心跳服务器地址(未使用) */
private heartbeatServer;
/** 消息服务器地址 */
private messageServer;
/** 消息签名 */
private messageSignature;
private statusChangeCallback;
private messageCallback;
/**
* 构造函数
* @param aid 智能体ID
* @param messageServer 消息服务器地址
* @param messageSignature 消息签名
*/
constructor(aid: string, messageServer: string, messageSignature: string);
/**
* 连接到WebSocket服务器
* @throws Error 当连接失败时抛出错误
*/
startWebSocket(): Promise<void>;
/**
* 快捷连接到指定智能体,自动创建会话并发送邀请
* @param receiver 要连接的智能体ID
* @param onSessionCreated 会话创建成功回调(可选)
* @param onInviteStatus 邀请状态回调(可选)
*/
connectTo(receiver: string, onSessionCreated?: ((sessionInfo: ACPMessageSessionResponse) => void) | null, onInviteStatus?: ((status: InviteStatus) => void) | null): void;
/**
* 创建会话
* @param cb 会话创建回调函数
*/
createSession(cb: (res: ACPMessageSessionResponse) => void): void;
/**
* 邀请智能体加入会话
* @param receiver 接收者智能体ID
* @param sessionId 会话ID
* @param identifyingCode 邀请码
* @param cb 邀请状态回调函数(可选)
*/
invite(receiver: string, sessionId: string, identifyingCode: string, cb?: (((status: InviteStatus) => void) | null)): void;
/**
* 发送消息
* @param msg 要发送的消息内容
* @param to 接收者智能体ID
* @param sessionId 会话ID
* @param identifyingCode 邀请码
*/
send(msg: string, to: string, sessionId: string, identifyingCode: string): void;
/**
* 设置WebSocket连接状态变更的监听函数
* @param cb 状态变更回调函数
*/
onStatusChange(cb: (status: ConnectionStatus) => void): void;
/**
* 设置消息接收的监听函数
* @param cb 消息接收回调函数
*/
onMessage(cb: (message: any) => void): void;
/**
* 断开WebSocket连接
*/
disconnect(): void;
}
export { AgentWS };