- CitrineOS core extracted (CSMS OCPP 2.0.1) - OpenOCPP extracted (firmware OCPP 1.6J/2.0.1) - ShapeShifter library installed (pip install -e) - ShapeShifter specification extracted - EVerest extracted TODO updated with progress
30 lines
843 B
Python
30 lines
843 B
Python
from ..uftp import (
|
|
AgrPortfolioQuery,
|
|
AgrPortfolioUpdate,
|
|
UsefRole,
|
|
)
|
|
from .base_client import ShapeshifterClient
|
|
|
|
|
|
class ShapeshifterAgrCroClient(ShapeshifterClient):
|
|
"""
|
|
Client that allows the Aggregator to connect to the CRO.
|
|
"""
|
|
|
|
sender_role = UsefRole.AGR
|
|
recipient_role = UsefRole.CRO
|
|
|
|
def send_agr_portfolio_update(self, message: AgrPortfolioUpdate) -> None:
|
|
"""
|
|
The AGRPortfolioUpdate is used by the AGR to indicate on which
|
|
Connections it represents prosumers.
|
|
"""
|
|
return self._send_message(message)
|
|
|
|
def send_agr_portfolio_query(self, message: AgrPortfolioQuery) -> None:
|
|
"""
|
|
The AGRPortfolioQuery is used by the AGR to retrieve additional
|
|
information on the connections.
|
|
"""
|
|
return self._send_message(message)
|