This commit is contained in:
Felipe M 2020-08-11 12:57:56 +02:00
parent 1a77740845
commit c99aeba708
Signed by: fmartingr
GPG key ID: 716BC147715E716F
5 changed files with 11 additions and 5 deletions

View file

@ -7,6 +7,7 @@ import structlog
import butterrobot.logging
from butterrobot.config import SLACK_TOKEN, LOG_LEVEL, ENABLED_PLUGINS
from butterrobot.objects import Message
from butterrobot.plugins import get_available_plugins
from butterrobot.platforms import PLATFORMS
from butterrobot.platforms.base import Platform
@ -50,7 +51,11 @@ async def incoming_platform_message_view(platform, path=None):
for plugin in enabled_plugins:
if result := await plugin.on_message(message):
await available_platforms[platform].methods.send_message(result)
if isinstance(result, Message):
result = [result]
for message in result:
await available_platforms[platform].methods.send_message(result)
return {}

View file

@ -31,7 +31,7 @@ class TelegramAPI:
async with session.post(url, json=payload) as response:
response = await response.json()
if not response["ok"]:
raise cls.TelegramClientError
raise cls.TelegramClientError(response)
@classmethod
async def send_message(

View file

@ -4,13 +4,14 @@ from abc import abstractclassmethod
import structlog
from butterrobot.objects import Message
logger = structlog.get_logger(__name__)
class Plugin:
@abstractclassmethod
def on_message(cls, message):
async def on_message(cls, message: Message):
pass