41 lines
860 B
Python
41 lines
860 B
Python
|
|
from __future__ import annotations
|
||
|
|
|
||
|
|
import logging
|
||
|
|
|
||
|
|
from yuxi.channel.extensions.ringcentral.sdk import AsyncRingCentralClient
|
||
|
|
|
||
|
|
logger = logging.getLogger(__name__)
|
||
|
|
|
||
|
|
TEAM_MESSAGING_BASE = "/team-messaging/v1"
|
||
|
|
|
||
|
|
|
||
|
|
async def send_adaptive_card(
|
||
|
|
client: AsyncRingCentralClient,
|
||
|
|
chat_id: str,
|
||
|
|
card: dict,
|
||
|
|
) -> dict:
|
||
|
|
return await client.post(
|
||
|
|
f"{TEAM_MESSAGING_BASE}/chats/{chat_id}/adaptive-cards",
|
||
|
|
body=card,
|
||
|
|
)
|
||
|
|
|
||
|
|
|
||
|
|
async def update_adaptive_card(
|
||
|
|
client: AsyncRingCentralClient,
|
||
|
|
card_id: str,
|
||
|
|
card: dict,
|
||
|
|
) -> dict:
|
||
|
|
return await client.put(
|
||
|
|
f"{TEAM_MESSAGING_BASE}/adaptive-cards/{card_id}",
|
||
|
|
body=card,
|
||
|
|
)
|
||
|
|
|
||
|
|
|
||
|
|
async def get_adaptive_card(
|
||
|
|
client: AsyncRingCentralClient,
|
||
|
|
card_id: str,
|
||
|
|
) -> dict:
|
||
|
|
return await client.get(
|
||
|
|
f"{TEAM_MESSAGING_BASE}/adaptive-cards/{card_id}",
|
||
|
|
)
|