phantasmobile/app/telegrambot/rpc.py

35 lines
962 B
Python

import asyncio
import logging
import telegram
from django.conf import settings
logger = logging.getLogger(__name__)
def send(msg, to=None, channel=None, preview_url=None, preview_title=None, preview_description=None, preview_image=None):
bot = telegram.Bot(token=settings.TELEGRAM_TOKEN)
try:
if preview_image:
asyncio.run(bot.send_photo(
chat_id=channel,
caption=msg,
photo=preview_image,
parse_mode='html'
))
else:
asyncio.run(bot.send_message(
chat_id=channel,
text=msg,
parse_mode='html',
disable_web_page_preview=True
))
except:
logger.error("failed to send message to telegram: %s", msg, exc_info=True)
return False
return True
def send_reaction(target_address, target_ts, emoji, to=None, group=None, remove=False):
pass