forked from GithubBackups/healthchecks
25 lines
773 B
Python
25 lines
773 B
Python
from django.conf import settings
|
|
from django.core.management.base import BaseCommand
|
|
from django.urls import reverse
|
|
|
|
import requests
|
|
|
|
SETWEBHOOK_TMPL = "https://api.telegram.org/bot%s/setWebhook"
|
|
|
|
|
|
class Command(BaseCommand):
|
|
help = "Set up telegram bot's webhook address"
|
|
|
|
def handle(self, *args, **options):
|
|
if settings.TELEGRAM_TOKEN is None:
|
|
return "Abort: settings.TELEGRAM_TOKEN is not set"
|
|
|
|
form = {"url": settings.SITE_ROOT + reverse("hc-telegram-webhook")}
|
|
url = SETWEBHOOK_TMPL % settings.TELEGRAM_TOKEN
|
|
r = requests.post(url, data=form)
|
|
|
|
if r.status_code != 200:
|
|
return "Fail: status=%d, %s" % (r.status_code, r.content)
|
|
|
|
return "Done, Telegram's webhook set to: %s" % form["url"]
|