1// Copyright 2023 Google LLC 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15syntax = "proto3"; 16 17package google.maps.places.v1; 18 19import "google/protobuf/timestamp.proto"; 20 21option cc_enable_arenas = true; 22option csharp_namespace = "Google.Maps.Places.V1"; 23option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb"; 24option java_multiple_files = true; 25option java_outer_classname = "EvChargingProto"; 26option java_package = "com.google.maps.places.v1"; 27option objc_class_prefix = "GMPSV1"; 28option php_namespace = "Google\\Maps\\Places\\V1"; 29 30// Information about the EV Charge Station hosted in Place. 31// Terminology follows 32// https://afdc.energy.gov/fuels/electricity_infrastructure.html One port 33// could charge one car at a time. One port has one or more connectors. One 34// station has one or more ports. 35message EVChargeOptions { 36 // EV charging information grouped by [type, max_charge_rate_kw]. 37 // Shows EV charge aggregation of connectors that have the same type and max 38 // charge rate in kw. 39 message ConnectorAggregation { 40 // The connector type of this aggregation. 41 EVConnectorType type = 1; 42 43 // The static max charging rate in kw of each connector in the aggregation. 44 double max_charge_rate_kw = 2; 45 46 // Number of connectors in this aggregation. 47 int32 count = 3; 48 49 // Number of connectors in this aggregation that are currently available. 50 optional int32 available_count = 4; 51 52 // Number of connectors in this aggregation that are currently out of 53 // service. 54 optional int32 out_of_service_count = 5; 55 56 // The timestamp when the connector availability information in this 57 // aggregation was last updated. 58 google.protobuf.Timestamp availability_last_update_time = 6; 59 } 60 61 // Number of connectors at this station. However, because some ports can have 62 // multiple connectors but only be able to charge one car at a time (e.g.) the 63 // number of connectors may be greater than the total number of cars which can 64 // charge simultaneously. 65 int32 connector_count = 1; 66 67 // A list of EV charging connector aggregations that contain connectors of the 68 // same type and same charge rate. 69 repeated ConnectorAggregation connector_aggregation = 2; 70} 71 72// See http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=6872107 for 73// additional information/context on EV charging connector types. 74enum EVConnectorType { 75 // Unspecified connector. 76 EV_CONNECTOR_TYPE_UNSPECIFIED = 0; 77 78 // Other connector types. 79 EV_CONNECTOR_TYPE_OTHER = 1; 80 81 // J1772 type 1 connector. 82 EV_CONNECTOR_TYPE_J1772 = 2; 83 84 // IEC 62196 type 2 connector. Often referred to as MENNEKES. 85 EV_CONNECTOR_TYPE_TYPE_2 = 3; 86 87 // CHAdeMO type connector. 88 EV_CONNECTOR_TYPE_CHADEMO = 4; 89 90 // Combined Charging System (AC and DC). Based on SAE. 91 // Type-1 J-1772 connector 92 EV_CONNECTOR_TYPE_CCS_COMBO_1 = 5; 93 94 // Combined Charging System (AC and DC). Based on Type-2 95 // Mennekes connector 96 EV_CONNECTOR_TYPE_CCS_COMBO_2 = 6; 97 98 // The generic TESLA connector. This is NACS in the North America but can be 99 // non-NACS in other parts of the world (e.g. CCS Combo 2 (CCS2) or GB/T). 100 // This value is less representative of an actual connector type, and more 101 // represents the ability to charge a Tesla brand vehicle at a Tesla owned 102 // charging station. 103 EV_CONNECTOR_TYPE_TESLA = 7; 104 105 // GB/T type corresponds to the GB/T standard in China. This type covers all 106 // GB_T types. 107 EV_CONNECTOR_TYPE_UNSPECIFIED_GB_T = 8; 108 109 // Unspecified wall outlet. 110 EV_CONNECTOR_TYPE_UNSPECIFIED_WALL_OUTLET = 9; 111} 112