ForcePilot/backend/package/yuxi/channel/extensions/alexa/status.py

32 lines
946 B
Python
Raw Normal View History

import logging
from yuxi.channel.protocols import ChannelAccountSnapshot
logger = logging.getLogger(__name__)
class AlexaStatus:
def __init__(self, account=None):
self._account = account
async def probe(self, account: dict | None = None) -> bool:
configured = (
self._account
and self._account.application_id
)
return configured
def build_summary(self, snapshot: object) -> dict:
return {
"channel": "alexa",
"mode": "request_response",
"output_format": "ssml",
"streaming": False,
}
def build_account_snapshot(self, account, config, runtime=None, probe_result=None, audit=None) -> ChannelAccountSnapshot:
return ChannelAccountSnapshot(
account_id=getattr(account, "account_id", "default"),
configured=bool(probe_result) if probe_result is not None else False,
)