SuperAPI AI 工具集

make-local-route

编程与开发

查看项目

更新于 10-15 22:41

技能介绍

用途:为 Surge 页面构建可用的本地 URL。基础 URL 为 https://<interface>.jason.surge-eng.com,<interface> 可取 hq、embed 或 api。当用户未说明接口时,先确认属于哪一种:embed(嵌入组件、iframe、inbox、电话 SDK、会话嵌入)、hq(仪表盘、管理、账户设置、号码管理、通话列表)或 api(REST 端点、OpenAPI、curl、程序化访问)。

主要能力:在 lib/surge_web/router.ex 中按 host 查找对应 scope 路由,匹配页面描述到 live、get、post、patch 或 delete 路由;再读取目标 LiveView 或控制器,了解路径段与查询参数(LiveView 看 mount/3、handle_params/3;控制器看 action 函数与 OpenAPI 条目)。embed 路由参数因路由而异,需单独确认,不可跨页套用。

认证与默认值:hq 用浏览器会话 cookie;embed 用 token 查询参数,token 为 atok_* 时还需 user_id;api 用 Authorization: Bearer $LOCAL_BEARER_TOKEN 头,例如 curl -H "Authorization: Bearer $LOCAL_BEARER_TOKEN" https://api.jason.surge-eng.com/accounts。若 API 返回 401 或 403,应请用户刷新 LOCAL_BEARER_TOKEN,不要尝试其它绕过方式。默认值包括 account_id(名称 Artisan Pastries & Co)、user_id(账户首个用户或 HQ 账户页的 Default user id)、phone_number_id、platform_id 等,资源 ID 可从 API 响应或浏览器 HQ 获取。

使用方式:先用 LOCAL_BEARER_TOKEN 调用 GET /accounts、GET /accounts/:account_id/phone_numbers、GET /accounts/:account_id/users 等接口补齐缺失值;API 无法提供时用 playwright-cli 登录浏览器查询(端口 4000 已监听则跳过启动 dev,并清理 .playwright-cli)。信息不全时列出 Needed 与 Optional 两个清单等待回答,齐全后以代码块输出最终 URL,并简述所用值与查询内容。embed 的 token 需在 HQ 账户页获取(默认模糊,可用 playwright-cli eval 读取)。

限制:部分 embed 页面在账户配置不完整时会显示未配置或错误状态,例如 /phone 需要 twiml_app_sid 和可通话号码;路由别名仅为提示,参数仍需在目标 LiveView 中确认。