打算给通知中心增加限行通知功能,用户希望:限行政策发生改变时通知他们,而不是告诉他们 xx 车牌今天是否限行。
比如在成都,因雾霾等原因时长要变更限号出行政策,变更时只能通过本地广播电台或交通类公众号查询,恢复之后又得再手动查询。希望:通过小程序自动推送限号措施变更信息。
大佬,目前京津冀限号是同步的,如果加入限号提醒,那将是十分的方便的。我的解决方案:希望可以自己自由的调节每天提醒限号的时间和次数,我偶尔忘记,导致偶尔被罚款。
调查了一下实现方法。
高德地图、腾讯出行服务小程序等都有限行查询功能,但是抓包发现这些 API 都需要验证。
心知天气有限行 API,但收费,该 API 可以查询北京、天津、哈尔滨、成都、杭州、贵阳、长春、兰州、南昌、武汉 10 个城市的今天、明天和后天的机动车尾号限行数据。
另一个提供限行 API 的是 APISpace,提供 65 个城市的限行数据,不过可能会返回错误的信息,例如广州。
一些云市场也有相关 API 出售,例如阿里云市场的这个,以下称它为云市场 API,该 API 支持 12 个城市,和心知一样,但多了深圳、上海。
以下是这几个 API 的对比,完整的响应数据请看文末:
v 站有一位用户是这样写限行提醒的:
北京的交管局网站会有每天限行的尾号提示,我就做了一个自动化每晚读取页面内容,最后保留限行尾号,如果和我的尾号匹配就设置早中晚三次提醒。出处
腾讯出行服务提供限行订阅通知,一些日历应用也支持限行提醒,例如小米 MIUI 日历、365 日历、墨迹万年历等,App Store 也有相关的应用,例如北京限行助手,但这是一个付费应用。用了一下腾讯出行服务,它只能订阅一个城市(当然这对绝大多数用户来说不是问题),只在限行前一天提醒 8 点,如果第二天你的车牌不限行就不提醒。
在 GitHub 搜索到一个有趣的项目,车载限号提醒器,使用方法:
限号器接入车载 USB 接口,每次启动车辆会自动判断当天是否,如果限号,设备会长鸣,不限号没反应。 长鸣后如要继续开车,请按下按键关闭噪音,无需拔下限号器。 时间同步和限号规则修改: 限号器通电后,长按按键 5 秒钟,听到嘀嘀嘀三声后松开按键,打开手机连接 WIFI,名称“限号提醒器”密码“87654321” 打开手机浏览器输入网址 192.168.0.1 即可进入设置页面。
使用高德地图的路线规划 API可以实时判断是否限行,百度地图的导航 API 支持未来出行规划,指定未来 7 天任意出发时刻,将依据智能预测路况和道路限行规划合理路线,但这是付费功能。
用户希望限行政策变动时发布通知,但似乎没有很好的 API 可以获取这些信息,或许可以关注各城市交管的官方发布渠道。
//心知天气
{
"results": [
{
"location": {
"id": "WX4FBXXFKE4F",
"name": "北京",
"country": "CN",
"path": "北京,北京,中国",
"timezone": "Asia/Shanghai",
"timezone_offset": "+08:00"
},
"restriction": {
"penalty": "京牌罚100块,不扣分。非京牌罚100块,扣3分。",
"region": "五环路以内道路(不包括五环路主路)",
"time": "周一至五的早7时至晚20时(法定节假日和公休日不限行)",
"remarks": "临时号牌按号牌尾号数字限行。机动车车尾号为英文字母的按0号管理。本市核发号牌的纯电动小客车不受工作日高峰时段区域限行措施限制。警车、消防车、救护车、出租车、环卫车等非民用车辆不受上述限制, 外埠车辆工作日7时至9时、17时至20时禁止进五环(含),没有进京证禁止进六环(不含)",
"limits": [
{
"date": "2023-04-26",
"plates": ["1", "6"],
"memo": "尾号限行"
},
{
"date": "2023-04-27",
"plates": ["2", "7"],
"memo": "尾号限行"
},
{
"date": "2023-04-28",
"plates": ["3", "8"],
"memo": "尾号限行"
}
]
}
}
]
}
//APISpace
{
"status": 0,
"result": {
"location": {
"areacode": "101010100",
"name": "北京",
"country": "中国",
"path": "北京,北京市,北京市,中国"
},
"traffic": {
"limitArea": "五环路以内道路(不含五环路)",
"limitRule": "五环路以内道路(不含五环路)",
"limits": [
{
"date": "2023-04-26",
"number": "16"
},
{
"date": "2023-04-27",
"number": "27"
},
{
"date": "2023-04-28",
"number": "38"
},
{
"date": "2023-04-29",
"number": "W"
},
{
"date": "2023-04-30",
"number": "W"
}
]
}
}
}
//云市场API
{
"status": 0,
"msg": "ok",
"result": {
"city": "beijing",
"cityname": "北京",
"date": "2023-04-26",
"week": "星期三",
"time": ["07:00-20:00"],
"area": "五环路(不含)以内道路",
"summary": "本市号牌尾号限行;外地号牌工作日(07:00-09:00、17:00-20:00)全部限行,其他限行时间内尾号限行;法定上班的周六周日不限行。",
"numberrule": "车牌号码最后一位数字,尾号为字母的按0号处理",
"number": "1和6"
}
}