4#include <ocpp/v2/message_handler.hpp>
9struct FunctionalBlockContext;
12struct ReserveNowRequest;
13struct CancelReservationRequest;
15typedef std::function<ReserveNowStatusEnum(
const ReserveNowRequest& request)> ReserveNowCallback;
16typedef std::function<bool(
const int32_t reservationId)> CancelReservationCallback;
17typedef std::function<ocpp::ReservationCheckStatus(
const int32_t evse_id,
const CiString<36> idToken,
18 const std::optional<CiString<36>> groupIdToken)>
19 IsReservationForTokenCallback;
24 virtual void on_reservation_status(
const int32_t reservation_id,
const ReservationUpdateStatusEnum status) = 0;
25 virtual ocpp::ReservationCheckStatus
27 const std::optional<IdToken>& group_id_token)
const = 0;
28 virtual void on_reserved(
const int32_t evse_id,
const int32_t connector_id) = 0;
29 virtual void on_reservation_cleared(
const int32_t evse_id,
const int32_t connector_id) = 0;
37 ReserveNowCallback reserve_now_callback;
39 CancelReservationCallback cancel_reservation_callback;
44 IsReservationForTokenCallback is_reservation_for_token_callback;
48 CancelReservationCallback cancel_reservation_callback,
49 const IsReservationForTokenCallback is_reservation_for_token_callback);
52 virtual void on_reservation_status(
const int32_t reservation_id,
const ReservationUpdateStatusEnum status)
override;
53 virtual ocpp::ReservationCheckStatus
55 const std::optional<IdToken>& group_id_token)
const override;
56 virtual void on_reserved(
const int32_t evse_id,
const int32_t connector_id)
override;
57 virtual void on_reservation_cleared(
const int32_t evse_id,
const int32_t connector_id)
override;
62 void send_reserve_now_rejected_response(
const MessageId& unique_id,
const std::string& status_info);
Contains a MessageId implementation based on a case insensitive string with a maximum length of 36 pr...
Definition: call_types.hpp:34
Interface for handling OCPP2.0.1 CALL messages from the CSMS. Classes implementing a functional block...
Definition: message_handler.hpp:13
Definition: reservation.hpp:21
Definition: reservation.hpp:32
virtual void handle_message(const ocpp::EnhancedMessage< MessageType > &message) override
Handles the given message from the CSMS. This includes dispatching a CALLRESULT as a response to the ...
Definition: reservation.cpp:26
Contains a OCPP Call message.
Definition: call_types.hpp:60
Contains a OCPP message in json form with additional information.
Definition: message_queue.hpp:54
Context / requirements for the functional blocks.
Definition: functional_block_context.hpp:23
Definition: ocpp_types.hpp:36