Skip to main content

send telegram notification using a bot

Project description

telegram-coffee-break

It's time to take a coffee break! your python code is running, and you'll be notified through telegram when you will have your results.

Goal

Create a telegram bot that will send you notifications on your phone to follow your code progress.

Installation

pip install telegram-coffee-break

Preparation

First: You will need to create a new telegram bot as follow:

https://docs.microsoft.com/en-us/azure/bot-service/bot-service-channel-connect-telegram?view=azure-bot-service-4.0

Go to the BotFather (if you open it in desktop, make sure you have the Telegram app), then create new bot by sending the /newbot command. Follow the steps until you get the username and token for your bot. You can go to your bot by accessing this URL: https://telegram.me/YOUR_BOT_USERNAME and your token should looks like this.

7044NNNNN:AAEtcZ*************

Keep the token safe in a file and set your bot.

Next: You need to find your telegram ID

https://support.bigonechina.com/hc/en-us/articles/360008014894-How-to-get-the-Telegram-user-ID-

Go to the userinfobot and send /start. He will give you your personal ID.

Id: 871NNNNN
First: lol
Last: lolilol
Lang: en

Usage example

Simple example where you simply receive a notification at a certain point in the progress of the code.

from telegrambotalarm import TelegramBot

TOKEN = 'NNNNNNNNNN:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
MYID = 'NNNNNNNNN'

bot = TelegramBot(TOKEN, MYID)
bot.send_message('Your code is running')

... do modeling etc ...

message = {
    train accuracy : train_acc,
    test accuracy : test_acc
}
bot.send_message(message)
bot.send_image('decision_tree.png', caption=message)

Best example where you are informed if an error occurs during the execution of a piece of code.

def train_model():
    ## do something ##
    results = {
        'train accuracy' : train_acc,
        'test accuracy' : test_acc
    }
    return results

from telegrambotalarm import TelegramBot
import traceback

TOKEN = 'nnnnnnnnnn:xxxxxxxxxxxxxxxxxxxxx'
MYID = 'nnnnnnnn'

bot = TelegramBot(TOKEN, MYID)

# Run this
try:
    results = train_model()

# If error occurs, send the error with its trace
except Exception as e:
    print(traceback.format_exc())
    bot.send_error_message(traceback.format_exc())

bot.send_message(results)
bot.send_image('decision_tree.png', caption=message)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

telegram-coffee-break-0.2.1.tar.gz (5.3 kB view details)

Uploaded Source

Built Distribution

telegram_coffee_break-0.2.1-py3-none-any.whl (4.8 kB view details)

Uploaded Python 3

File details

Details for the file telegram-coffee-break-0.2.1.tar.gz.

File metadata

  • Download URL: telegram-coffee-break-0.2.1.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.54.0 CPython/3.7.7

File hashes

Hashes for telegram-coffee-break-0.2.1.tar.gz
Algorithm Hash digest
SHA256 8575f710e33216367add3e7c4f6d7c75fc5a836a115403073df764fdb989b303
MD5 8881e6c987da90a266ade902b0a99276
BLAKE2b-256 ace7b222ae3b2ce7626ac2a9f8567f35bba8decbc75b573a0f3b98a93b2d633b

See more details on using hashes here.

File details

Details for the file telegram_coffee_break-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: telegram_coffee_break-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 4.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.54.0 CPython/3.7.7

File hashes

Hashes for telegram_coffee_break-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c2673ce03ee8f044c77b3bc3f0886f4af6d7f8adb183c010a55308ca9b006e03
MD5 a53ac77914ce6e857b1b2e26ba34f96b
BLAKE2b-256 4f875445ee9a142654c6e84e63ea5881f90c47b0baba980fc9ec9de0bf3dba71

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page