技能简介
IDFM Journey 技能对接法兰西岛交通局(Île-de-France Mobilités)PRIM/Navitia 开放数据接口,支持巴黎及近郊地区的公共交通信息查询,包括地点解析、行程规划和线路中断/事故检查。
业务背景
面向巴黎及近郊出行的企业员工与访客,提供一站式公共交通信息查询。通过自然语言输入即可获取精准站点匹配、智能换乘方案及实时延误预警,减少出行决策时间,提升差旅效率与通勤体验。
落地案例:某企业安排客户从戴高乐机场前往拉德芳斯商务区参会。行政人员输入"机场T2航站楼"和"拉德芳斯大拱门",系统返回RER B转地铁1号线的最优方案,并提示当前B线部分区段因施工延误15分钟,建议改乘RoissyBus直达歌剧院后换乘,确保准时抵达。
能做什么
- 地点模糊匹配:将自然语言地址转换为标准站点ID
- 智能行程规划:根据起终点自动计算最优换乘方案
- 实时路况监控:查询特定线路的运行中断和延误信息
- 原始数据输出:支持JSON格式便于二次开发
使用说明
1. 环境准备
需先获取 PRIM API 密钥并配置环境变量:
export IDFM_PRIM_API_KEY="your_api_key_here"
密钥申请地址:https://prim.iledefrance-mobilites.fr
2. 安装与运行
本技能为纯Python脚本,无需额外依赖包。将技能文件夹下载至本地后,直接执行:
cd skills/anthonymq/idfm-journey-skill
python3 scripts/idfm.py --help
3. 常用命令示例
地点解析(返回最佳匹配及候选列表):
python3 scripts/idfm.py places "Ivry-sur-Seine" --count 5
行程规划(自动解析地点ID后计算路线):
python3 scripts/idfm.py journeys --from "Ivry-sur-Seine" --to "Boulainvilliers" --count 3
线路中断查询(按线路ID或状态筛选):
python3 scripts/idfm.py incidents --line-id line:IDFM:C01727
python3 scripts/idfm.py incidents --filter 'disruption.status=active'
如需查看原始API响应,所有命令追加 --json 参数即可。
4. 注意事项
地点解析存在歧义时,建议增大 --count 参数值,从返回结果中手动选择正确的 stop_area ID。详细API文档参考技能内 references/idfm-prim.md 文件。
输入与输出
见下方输入与输出表格。
| 项目 | 内容 |
|---|---|
| 输入 | 自然语言地点名称、线路ID、查询数量限制、格式参数 |
| 输出 | 标准化站点ID、行程规划方案、线路中断状态、原始JSON数据 |
| 适用人群 | 巴黎通勤者、游客、交通数据开发者、本地化服务集成方 |
| 不包含 | 非法兰西岛区域、实时车辆定位、票务支付、历史数据分析 |
风险提示
- API密钥属于敏感凭证,请勿提交至代码仓库
- 仅在受信任的shell会话中设置环境变量,用后即清除
- 禁止随意修改
--base-url参数,恶意地址可能导致密钥泄露 - 免费API存在调用频率限制,高频场景需申请商业授权
来源信息
原始链接:https://github.com/openclaw/skills/tree/main/skills/anthonymq/idfm-journey-skill/SKILL.md
来源类型:GitHub开源技能
