from ..uftp import DsoPortfolioQuery, DsoPortfolioUpdate, UsefRole from .base_client import ShapeshifterClient class ShapeshifterDsoCroClient(ShapeshifterClient): """ Client that allows the DSO to connect to the CRO. """ sender_role = UsefRole.DSO recipient_role = UsefRole.CRO def send_dso_portfolio_update(self, message: DsoPortfolioUpdate) -> None: """ The DSOPortfolioUpdate is used by the DSO to indicate on which congestion points it wants to engage in flexibility trading. """ self._send_message(message) def send_dso_portfolio_query(self, message: DsoPortfolioQuery) -> None: """ DSOPortfolioQuery is used by DSOs to discover which AGRs represent connections on its registered congestion point(s). """ self._send_message(message)