mobilityhouse / ocpp

Python implementation of the Open Charge Point Protocol (OCPP).
MIT License
766 stars 298 forks source link

Can we schedule reservation for future time slots using ReserveNow method #236

Closed abhihimself closed 11 months ago

abhihimself commented 3 years ago

By going through the OCPP 2.0.1 documents and implementations of this repo. I am able to understand that-- OCPP currently provides ReserveNow method which can reserve an available connector "from current time to expiry time"

Is it possible to create reservation scheduling for future slots. If user provides these inputs:

from - to - station_id - evse_id - connector_id -

zainuvk commented 3 years ago

Mostly it would be upto Charging Station to implement that logic based on the availability of Connectors in Charging Station. ReserveNow request can have expiryDateTime so request datashape has to have minimal "Id ,Token and expiryDateTime".

Jared-Newell-Mobility commented 11 months ago

So the ReserveNow message type in OCPP 2.0.1 has only an expiryDateTime field, so as soon as the message is sent and Accepted then only the stated idToken is able to use the evseId specified until the expiry time.

The CSMS could sent this message type at the start time required, assuming that reservation is possible, as an EV may already occupy the EVSE or it might be in another state such as faulted. So given this assumption, multiple messages could schedule reservations, however, they would also need to know the Id Token used by the EV driver.

This would have to be handled by a custom routine on the CSMS (a reservation scheduler)

This implementation is outside of scope. In addition, given the issue that a ReserveNow message may not be possible to accurately schedule, unless it is in the case of a best effort reservation for the EV driver, moreover, uniquely this message doesn't directly handle future scheduling.