筛选
筛选让应用可以细化 Tile Service API 返回的充电站。除了简单地隐藏不匹配的结果外,某些筛选还会转换充电站数据,以确保响应与上下文相关。
筛选如何影响数据
当请求包含筛选时,Tile 服务会执行两个不同的操作:
- 排除不匹配的充电站任何不满足指定筛选条件的充电站都会从响应中完全移除。使用充电站级别筛选或 EVSE 级别筛选时会执行此操作。
- 数据转换当提供特定的筛选参数时,Tile 服务会重新计算充电站的某些动态属性。使用 EVSE 级别筛选时会执行此操作。
实现
筛选参数可以作为查询字符串附加到请求 URL 上,适用于任何 Tile 服务端点(MVT、JSON 或 Count)。如果未应用任何筛选,则返回所有可用的充电站,并且不会进行任何数据转换。
级别
筛选可以存在于两个级别:EVSE 级别或充电站级别,各自的影响和结果如下所述。
充电站级别
评估充电站整体属性的筛选。这些筛选仅用于排除:排除不匹配的充电站,但绝不会修改返回的数据字段。
amenities·enum·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?amenities[]=HOTEL - 筛选,仅包含提供指定设施的充电站。
可能的值
HOTELSHOPPINGBATHROOMSUPERMARKETPLAYGROUNDPHARMACYMUSEUMCOFFEEPARKRESTAURANTpreferred_operators·boolean·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?preferred_operators=true - 筛选,仅包含由配置为首选的运营商运营的充电站。可以在 Dashboard 的项目设置中设置首选运营商。
可能的值
truefalsehide_excluded_operators·boolean·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?hide_excluded_operators=true - 筛选,排除由配置为已排除的运营商运营的充电站。可以在 Dashboard 的项目设置中设置已排除的运营商。
可能的值
truefalseoperator_ids·string·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?operator_ids[]=631834841e604d2273ffb2b5&operator_ids[]=64e6979d49ed0ae2316ec052 - 筛选,仅包含由特定运营商 ID 运营的充电站。接受运营商 ID 数组。
truck_dedicated·boolean·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?truck_dedicated=true - 筛选,仅包含专用于或主要用于货车充电的充电站。仅在使用 Eco-Movement 充电站数据库时适用;否则将被忽略。
可能的值
truefalsevehicle_types·enum·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?vehicle_types[]=VAN&vehicle_types[]=RIGID - 筛选,仅包含支持指定 OCPI 车辆类型的充电站。默认包含所有车辆类型。仅在使用 Eco-Movement 充电站数据库时适用;否则将被忽略。
可能的值
VANRIGIDTRUCK_WITH_TRAILER
EVSE 级别
评估充电站具体充电能力的筛选。这些筛选会执行排除和转换:不匹配的充电站被排除,匹配的充电站其动态字段会被重新计算。
minimum_power·integer·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?minimum_power=50 - 筛选,仅包含至少有一个充电接口达到或超过指定功率值(单位:kW)的充电站。接受大于 0 的整数。
maximum_power·integer·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?maximum_power=150 - 筛选,仅包含所有充电接口的最大充电功率均不超过指定功率值(单位:kW)的充电站。接受大于 0 的整数。
minimum_energy_price·number·Beta 此筛选条件处于 Beta 阶段,在稳定之前可能会发生变化。 ·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?minimum_energy_price=0.2¤cy=EUR - 筛选,仅包含其兼容充电接口中至少有一个有效价格大于或等于指定值的充电站,并以
currency设置的货币进行评估。请参阅充电站定价。 maximum_energy_price·number·Beta 此筛选条件处于 Beta 阶段,在稳定之前可能会发生变化。 ·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?maximum_energy_price=0.5¤cy=EUR - 筛选,仅包含其兼容充电接口中至少有一个有效价格小于或等于指定值的充电站,并以
currency设置的货币进行评估。请参阅充电站定价。 connectors·enum·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?connectors[]=CHADEMO - 筛选,仅包含具有指定连接器类型 EVSE 的充电站。接受包含任意 OCPI 2.2.1 连接器值的字符串数组。
可能的值
CHADEMODOMESTIC_ADOMESTIC_BDOMESTIC_CDOMESTIC_DDOMESTIC_EDOMESTIC_FDOMESTIC_GDOMESTIC_HDOMESTIC_IDOMESTIC_JDOMESTIC_KDOMESTIC_LDOMESTIC_MDOMESTIC_NDOMESTIC_OIEC_60309_2_single_16IEC_60309_2_three_16IEC_60309_2_three_32IEC_60309_2_three_64IEC_62196_T1IEC_62196_T1_COMBOIEC_62196_T2IEC_62196_T2_COMBOIEC_62196_T3AIEC_62196_T3CPANTOGRAPH_BOTTOM_UPPANTOGRAPH_TOP_DOWNTESLA_RTESLA_SGB_TCHAOJINEMA_5_20NEMA_6_30NEMA_6_50NEMA_10_30NEMA_10_50NEMA_14_30NEMA_14_50evse_statuses·enum·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?evse_statuses[]=AVAILABLE&evse_statuses[]=CHARGING - 筛选,仅包含具有指定状态的 EVSE 的充电站。
可能的值
BLOCKEDPLANNEDAVAILABLECHARGINGUNKNOWNRESERVEDOUT_OF_ORDERINOPERATIVE
货币转换
Tile Service 端点(tile.json、tile.mvt 和 count)均支持 currency 查询参数。它用于设置返回及筛选所用能源价格的货币。
- 省略
currency时,connector_minimum_energy_price和connector_maximum_energy_price以 EUR 返回。 - 当
currency是有效的 ISO 4217 货币代码(例如USD、GBP、DKK或EUR)时:connector_minimum_energy_price和connector_maximum_energy_price中返回的值会在服务器端使用当前汇率,从其源货币转换为请求的货币。minimum_energy_price和maximum_energy_price筛选会基于请求货币(若省略currency则为 EUR)下转换后的价格进行评估。
- 当原始货币与请求的货币相同时,
price_conversion_rate返回1.0。 - 当
currency不是有效的 ISO 4217 货币代码时,Tile 服务会返回包含以下详细信息的错误:- 状态:
400 Bad Request - 代码:
TILE_INVALID_PARAMETER_VALUE - 消息:
Invalid parameter 'currency': found string {invalid currency} but expected one of {supported currencies}.
- 状态:
示例
为展示其行为,下面提供了筛选和数据转换的示例。
筛选示例
筛选可以存在于两个级别:EVSE 级别或充电站级别,各自的影响和结果如下所述。
相同的筛选类型,不同的值
| 充电站 | 属性 | 是否匹配 |
|---|---|---|
| A | 2x IEC_62196_T1_COMBO 1x CHAdeMO 1x TOILET 1x RESTAURANT | |
| B | 1x IEC_62196_T1_COMBO 1x IEC_62196_T2_COMBO 1x RESTAURANT | |
| C | 2x IEC_62196_T2_COMBO 1x TOILET |
多种不同的筛选类型
| 充电站 | 属性 | 是否匹配 |
|---|---|---|
| A | 2x IEC_62196_T1_COMBO 1x CHAdeMO 1x TOILET 1x RESTAURANT | |
| B | 1x IEC_62196_T1_COMBO 1x IEC_62196_T2_COMBO 1x RESTAURANT | |
| C | 2x IEC_62196_T2_COMBO 1x TOILET |
数据转换示例
应用 EVSE 级别筛选时,某些输出会被重新计算。这些字段会被“转换”,以忽略与用户搜索条件不匹配的连接器。
这些“动态”输出字段是 connector_maximum_power, connector_minimum_energy_price, connector_maximum_energy_price 和 evse_status_*。
相同的筛选类型,不同的值
请求包含 CHADEMO 连接器筛选。该充电站因为具有 CHADEMO 连接器而被包含,但其动态字段会被转换,以忽略 Combo Type 1 充电桩。
价格筛选
请求包含 maximum_energy_price 筛选,也可与其他 EVSE 级别筛选组合使用。只有同时满足所有筛选条件的充电接口才会匹配,动态价格字段仅针对匹配的充电接口重新计算。
基准充电站 A
- EVSE 1: CCS • 150 kW • 可用 • 0.65 €
- EVSE 2: CCS • 50 kW • 可用 • 0.35 €
- EVSE 3: Type 2 • 22 kW • 可用 • 0.25 €
场景 1:仅使用价格筛选
匹配: EVSE 2 和 3 符合条件,EVSE 1 被排除。
场景 2:仅使用接口筛选
匹配: EVSE 1 和 2 符合条件。
场景 3:价格和接口筛选
匹配:
- 按
connector == CCS AND price <= 0.30评估。 - CCS 接口(EVSE 1 和 2)价格为 0.65 € 和 0.35 €,不满足价格筛选。
- Type 2 接口(EVSE 3)满足价格,但不满足接口筛选。
结果: 充电站被排除(0 个匹配的 EVSE)。
场景 4:价格和功率筛选
匹配:
- 在同一个 EVSE 上按
power >= 100 kW AND price <= 0.40 €评估。 - 150 kW 接口价格过高(0.65 €)。
- 价格较低的接口(0.25 € 至 0.35 €)速度过慢(50 kW 或更低)。
结果: 充电站被排除(0 个匹配的 EVSE)。
此内容是否有帮助?