Skip to content

Commit ece4a4a

Browse files
authored
Merge pull request #154 from c-jimenez/fix/reservation_connector_0
[chargepoint] Change connector 0 state to Available when previously Reserved and a transaction is started on 1 of the connectors
2 parents 924970a + 939cb48 commit ece4a4a

File tree

3 files changed

+10
-0
lines changed

3 files changed

+10
-0
lines changed

src/chargepoint/ChargePoint.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -292,6 +292,7 @@ bool ChargePoint::start()
292292
*m_msg_dispatcher,
293293
*m_msg_sender,
294294
m_requests_fifo,
295+
*m_status_manager,
295296
*m_authent_manager,
296297
*m_reservation_manager,
297298
*m_meter_values_manager,

src/chargepoint/transaction/TransactionManager.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ TransactionManager::TransactionManager(ocpp::config::IOcppConfig&
4646
ocpp::messages::IMessageDispatcher& msg_dispatcher,
4747
ocpp::messages::GenericMessageSender& msg_sender,
4848
ocpp::messages::IRequestFifo& requests_fifo,
49+
IStatusManager& status_manager,
4950
IAuthentManager& authent_manager,
5051
ReservationManager& reservation_manager,
5152
IMeterValuesManager& meter_values_manager,
@@ -56,6 +57,7 @@ TransactionManager::TransactionManager(ocpp::config::IOcppConfig&
5657
m_events_handler(events_handler),
5758
m_connectors(connectors),
5859
m_msg_sender(msg_sender),
60+
m_status_manager(status_manager),
5961
m_authent_manager(authent_manager),
6062
m_reservation_manager(reservation_manager),
6163
m_meter_values_manager(meter_values_manager),
@@ -121,6 +123,9 @@ ocpp::types::AuthorizationStatus TransactionManager::startTransaction(unsigned i
121123

122124
// Clear reservation
123125
m_reservation_manager.clearReservation(connector_id);
126+
127+
// Reset charge point status to Available
128+
m_status_manager.updateConnectorStatus(Connectors::CONNECTOR_ID_CHARGE_POINT, ChargePointStatus::Available);
124129
}
125130
}
126131
}

src/chargepoint/transaction/TransactionManager.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ class ReservationManager;
4949
class IChargePointEventsHandler;
5050
class IMeterValuesManager;
5151
class ISmartChargingManager;
52+
class IStatusManager;
5253

5354
/** @brief Handle charge point transaction requests */
5455
class TransactionManager
@@ -64,6 +65,7 @@ class TransactionManager
6465
ocpp::messages::IMessageDispatcher& msg_dispatcher,
6566
ocpp::messages::GenericMessageSender& msg_sender,
6667
ocpp::messages::IRequestFifo& requests_fifo,
68+
IStatusManager& status_manager,
6769
IAuthentManager& authent_manager,
6870
ReservationManager& reservation_manager,
6971
IMeterValuesManager& meter_values_manager,
@@ -120,6 +122,8 @@ class TransactionManager
120122
Connectors& m_connectors;
121123
/** @brief Message sender */
122124
ocpp::messages::GenericMessageSender& m_msg_sender;
125+
/** @brief Status manager */
126+
IStatusManager& m_status_manager;
123127
/** @brief Authentication manager */
124128
IAuthentManager& m_authent_manager;
125129
/** @brief Reservation manager */

0 commit comments

Comments
 (0)