Pour tester les performances du bot - un générateur de nombres aléatoires en Python, nous avons utilisé serveur de bot télégramme préconfiguré. Ce bot peut générer un nombre aléatoire à partir d'une plage que vous spécifiez.
Procédons à l'installation :
source my-tel-bot/bin/activate
Remplaçons notre bot de démonstration par celui existant:
/root/my-tel-bot/bot.py
import telebot
import random
# créer des boutons
from telebot import types
bot = telebot.TeleBot('')
# Créer un bouton après la commande /start
@bot.message_handler(commands=['start'])
def welcome(message):
markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
random_sender = types.KeyboardButton("Est venu un nombre aléatoire")
markup.add(random_sender)
bot.send_message(message.chat.id, 'Le générateur de nombres a démarré', parse_mode='html',
reply_markup=markup)
# Suivi des clics sur les boutons
@bot.message_handler(content_types=['text'])
def first_number_step(message):
if message.text == 'Est venu un nombre aléatoire':
msg = bot.send_message(message.chat.id, 'Entrez le début de la plage')
# passer à la fonction second_number_step
bot.register_next_step_handler(msg, second_number_step)
else:
bot.send_message(message.chat.id, 'Il n'y a pas une telle commande')
# Obtenir le premier nombre d'une plage
def second_number_step(message):
global NUM_first
NUM_first = int(message.text)
msg = bot.send_message(message.chat.id, 'Entrez la fin de la plage')
# passer à la fonction result_number_step
bot.register_next_step_handler(msg, result_number_step)
# Obtenir le deuxième nombre d'une plage
def result_number_step(message):
global NUM_second
NUM_second = int(message.text)
# Appel de fonction result(message)
result(message)
# Sortie de résultat (aléatoire)
def result(message):
bot.send_message(message.chat.id, 'Nombre aléatoire: ' + str(random.randint(NUM_first, NUM_second)))
# Pour que le bot fonctionne tout le temps
bot.polling(none_stop=True)
Terminé, n'oubliez pas de spécifier votre jeton de clé dans le script et de redémarrer le service:
service my-tel-bot restart
Aucun commentaire pour l'instant