922b1b26a6
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
25 lines
558 B
Python
25 lines
558 B
Python
from abc import ABC, abstractmethod
|
|
from typing import Any
|
|
|
|
|
|
class MessengerService(ABC):
|
|
@abstractmethod
|
|
async def setup(self):
|
|
pass
|
|
|
|
@abstractmethod
|
|
async def shutdown(self):
|
|
pass
|
|
|
|
@abstractmethod
|
|
async def send_message(self, chat_id: str, text: str, **kwargs):
|
|
pass
|
|
|
|
@abstractmethod
|
|
async def send_file(self, chat_id: str, file_path: str, caption: str = ""):
|
|
pass
|
|
|
|
@abstractmethod
|
|
async def notify_progress(self, chat_id: str, status: str, progress: int | None = None):
|
|
pass
|