Client是单例吗?
是。Client.create()采用全局单例模式,多次调用返回同一实例。如果需要重新初始化,请先调用close()销毁当前实例。
如何释放Client资源?
SDK提供两种资源释放方式:
方法 | 行为 | 适用场景 |
| 彻底销毁实例,释放所有内部资源。实例不可重用。 | 页面卸载或应用退出时。 |
| 清理状态信息,保留实例可重用。 | 用户登出后需要切换账号重新登录的场景。 |
SingleAgentManager和AgentManager有什么区别?
维度 | AgentManager | SingleAgentManager |
管理范围 | 多Agent、多会话 | 单Agent、单会话 |
会话指定 | 每次操作需手动指定agentID或sessionID | 自动关联,无需手动指定 |
适用场景 | 需要同时管理多个Agent或多个会话 | 只使用一个Agent的简单场景 |
ASP流化会话支持Node.js吗?
不支持。流化会话(AspManager)依赖浏览器DOM环境来渲染流化画面,因此仅在浏览器环境中可用。在Node.js环境中,您可以使用除AspManager外的所有其他Manager。
哪些错误可以自动重试?
以下错误类型为可重试错误:
错误类型 | 说明 |
NetworkError | 网络连接错误。 |
TimeoutError | 请求超时。 |
RateLimitError | 请求频率超限。 |
ServerError | 服务端错误。 |
您可以使用isRetryable(error)函数快速判断一个错误是否可以重试:
import { isRetryable } from './wuying-sdk.mjs';
try {
await agentMgr.sendTextMessage({}, { sessionID: 'xxx', content: '你好' });
} catch (err) {
if (isRetryable(err)) {
// 可安全重试
}
}如何获取Agent的在线状态?
调用listAgents()后,返回的Agent对象中包含onlineStatus字段,取值为online或offline。示例:
const agentList = await agentMgr.listAgents({});
for (const agent of agentList.agents) {
console.log(`${agent.name}: ${agent.onlineStatus}`);
// 输出示例: "我的Agent: online"
}该文章对您有帮助吗?