1. 移除所有适配器文件中多余的空导入行 2. 调整ValidationError继承,移除不必要的ValueError继承 3. 修正多处ChannelType使用方式,从.value改为直接使用枚举实例 4. 优化飞书插件部分硬编码渠道类型为枚举实例 5. 更新wechat_ilink插件清单与适配器配置 6. 新增飞书目录适配器缓存清理支持判断与iLink生命周期适配器凭据轮换支持判断 7. 优化配置处理器历史查询逻辑,区分键不存在与无历史记录场景
94 lines
4.6 KiB
JSON
94 lines
4.6 KiB
JSON
{
|
|
"id": "com.yuxi.channels.wechat_ilink",
|
|
"name": "微信iLink",
|
|
"version": "1.0.0",
|
|
"channel_type": "wechat_ilink",
|
|
"entry_module": "yuxi.channels.plugins.wechat_ilink.entry",
|
|
"provides": ["wechat_ilink"],
|
|
"lifecycle": ["init", "start", "stop", "pause", "resume", "unload"],
|
|
"compatibility": {
|
|
"min_host_version": "1.0.0",
|
|
"ilink_api_version": "2.0.0"
|
|
},
|
|
"failure_policy": "degrade",
|
|
"depends": [],
|
|
"critical": false,
|
|
"requires_dm_pairing": true,
|
|
"requires_outbound_delivery": true,
|
|
"credential_strategy": {
|
|
"type": "dynamic",
|
|
"acquire_method": "qr_login",
|
|
"required_fields": ["bot_token", "ilink_bot_id", "ilink_user_id", "baseurl"],
|
|
"optional_fields": [],
|
|
"supports_rotation": false,
|
|
"supports_revocation": false
|
|
},
|
|
"max_message_length": 4000,
|
|
"supports_credential_cloning": false,
|
|
"capabilities": {
|
|
"rich_message": false,
|
|
"streaming": false,
|
|
"typing_indicator": false,
|
|
"message_edit": false,
|
|
"message_recall": false,
|
|
"supports_reaction": false,
|
|
"supports_pin": false,
|
|
"supports_card_update": false,
|
|
"supports_card_update_streaming": false,
|
|
"supports_image_inbound": true,
|
|
"supports_video_inbound": true,
|
|
"supports_image_outbound": true,
|
|
"supports_video_outbound": true,
|
|
"mention": false,
|
|
"command": false,
|
|
"directory": false,
|
|
"doctor": true,
|
|
"whitelist": true,
|
|
"wizard": true,
|
|
"tools": false,
|
|
"status": false,
|
|
"probeable": true,
|
|
"identity_resolver": false,
|
|
"lifecycle": true,
|
|
"supports_qr_login": true,
|
|
"agent_collaboration": false
|
|
},
|
|
"resource_quota": {
|
|
"max_cpu": "15.0",
|
|
"max_memory": "128MB",
|
|
"max_connections": 10,
|
|
"max_calls_per_sec": 20
|
|
},
|
|
"accessible_ports": [
|
|
"ConfigPort",
|
|
"LoggerPort",
|
|
"PersistencePort",
|
|
"CachePort",
|
|
"TracerPort",
|
|
"ConversationPort"
|
|
],
|
|
"injectable_pipelines": ["inbound", "outbound"],
|
|
"config_schema": [
|
|
{"key": "bot_token", "type": "string", "required": true, "default": null, "hot_reloadable": false, "constraints": {"sensitive": true}},
|
|
{"key": "ilink_bot_id", "type": "string", "required": true, "default": null, "hot_reloadable": false, "constraints": {}},
|
|
{"key": "ilink_user_id", "type": "string", "required": true, "default": null, "hot_reloadable": false, "constraints": {}},
|
|
{"key": "baseurl", "type": "string", "required": false, "default": "https://ilinkai.weixin.qq.com", "hot_reloadable": false, "constraints": {"pattern": "^https?://"}},
|
|
{"key": "channel_version", "type": "string", "required": false, "default": "2.0.0", "hot_reloadable": true, "constraints": {}},
|
|
{"key": "cdn_url", "type": "string", "required": false, "default": "https://novac2c.cdn.weixin.qq.com/c2c", "hot_reloadable": true, "constraints": {"pattern": "^https?://"}},
|
|
{"key": "long_poll_timeout_ms", "type": "integer", "required": false, "default": 35000, "hot_reloadable": true, "constraints": {"min": 10000, "max": 60000}},
|
|
{"key": "qr_poll_interval_ms", "type": "integer", "required": false, "default": 2000, "hot_reloadable": true, "constraints": {"min": 1000, "max": 5000}},
|
|
{"key": "qr_timeout_ms", "type": "integer", "required": false, "default": 120000, "hot_reloadable": true, "constraints": {"min": 30000, "max": 300000}},
|
|
{"key": "max_message_length", "type": "integer", "required": false, "default": 4000, "hot_reloadable": true, "constraints": {"min": 500, "max": 10000}},
|
|
{"key": "enable_media", "type": "boolean", "required": false, "default": true, "hot_reloadable": true, "constraints": {}},
|
|
{"key": "enable_voice", "type": "boolean", "required": false, "default": false, "hot_reloadable": true, "constraints": {}}
|
|
],
|
|
"env_vars": [
|
|
{"name": "ILINK_BASE_URL", "description": "iLink API 基础地址", "required": false, "default": "https://ilinkai.weixin.qq.com", "sensitive": false},
|
|
{"name": "ILINK_CDN_URL", "description": "iLink CDN 地址", "required": false, "default": "https://novac2c.cdn.weixin.qq.com/c2c", "sensitive": false},
|
|
{"name": "ILINK_CHANNEL_VERSION", "description": "iLink 渠道协议版本", "required": false, "default": "2.0.0", "sensitive": false},
|
|
{"name": "ILINK_QR_TIMEOUT_MS", "description": "扫码登录超时时间(毫秒)", "required": false, "default": "120000", "sensitive": false},
|
|
{"name": "ILINK_LONGPOLL_TIMEOUT_MS", "description": "长轮询超时时间(毫秒)", "required": false, "default": "35000", "sensitive": false},
|
|
{"name": "ILINK_QR_POLL_INTERVAL_MS", "description": "扫码状态轮询间隔(毫秒)", "required": false, "default": "2000", "sensitive": false}
|
|
]
|
|
}
|