elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  ¿Porque no me responde al siguiente comando? Bot Telegram #Python
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ¿Porque no me responde al siguiente comando? Bot Telegram #Python  (Leído 4,410 veces)
timer

Desconectado Desconectado

Mensajes: 33



Ver Perfil WWW
¿Porque no me responde al siguiente comando? Bot Telegram #Python
« en: 16 Diciembre 2021, 17:04 pm »

Buenas tardes, estoy creando un bot de telegram y tengo un problemilla, he puesto dos comandos uno de hola y otro de start, el tema es que al poner el hola si que me lo responde, pero al poner el de start no me hace nada. Alguna idea de que he podido hacer mal?

Aqui el codigo:

Código:
import telebot
import mariadb
import sys
import time


TOKEN_BOT = "token" #he sacado el token ya que es privado.
bot = telebot.TeleBot(TOKEN_BOT)
@bot.message_handler(commands=["hola"])

def enviar (message):
    bot.reply_to(message, "¡Bienvenido soy RIOPy!, un BOT diseñado para organizar tu PYME a tu gusto. Para empezar escribe /start y nos pondremos manos a la obra.")

bot.polling()

@bot.message_handler(commands=["start"])

def enviar_start (message):
    bot.reply_to(message, "¡Muy bien comencemos! Espere un momento mientras creamos su base de datos")

#Aqui va la base de datos.

time.sleep(5)
bot.reply_to, "Base de datos creada, ya puede empezar a usar nuestra herramienta."

bot.polling()

Gracias de antemano y un saludo!


En línea

Danielㅤ


Desconectado Desconectado

Mensajes: 1.676


🔵🔵🔵🔵🔵🔵🔵


Ver Perfil
Re: ¿Porque no me responde al siguiente comando? Bot Telegram #Python
« Respuesta #1 en: 16 Diciembre 2021, 17:29 pm »

Hola, prueba a reemplazar ésta línea:

Código
  1. @bot.message_handler(commands=["hola"])
  2.  

por ésta:

Código
  1. @bot.message_handler(commands=["hola", "start"])
  2.  

y borra ésta línea:

Código
  1. @bot.message_handler(commands=["start"])
  2.  

Nos comentas si ahora funciona.


Saludos


En línea

timer

Desconectado Desconectado

Mensajes: 33



Ver Perfil WWW
Re: ¿Porque no me responde al siguiente comando? Bot Telegram #Python
« Respuesta #2 en: 16 Diciembre 2021, 17:35 pm »

Buenas Daniel, Gracias por responder te comento!
Hola, prueba a reemplazar ésta línea:

Código
  1. @bot.message_handler(commands=["hola"])
  2.  

por ésta:

Código
  1. @bot.message_handler(commands=["hola", "start"])
  2.  

y borra ésta línea:

Código
  1. @bot.message_handler(commands=["start"])
  2.  

Nos comentas si ahora funciona.


Saludos


Si que me responde, pero el comando "/start" no me saca la siguiente linea de mensaje:

Código
  1. def enviar_start (message):
  2.    bot.reply_to(message, "¡Muy bien comencemos! Espere un momento mientras creamos su base de datos")
  3.  

O sea al poner hola y luego start me saca el primer mensaje siempre.
« Última modificación: 16 Diciembre 2021, 17:38 pm por timer » En línea

Danielㅤ


Desconectado Desconectado

Mensajes: 1.676


🔵🔵🔵🔵🔵🔵🔵


Ver Perfil
Re: ¿Porque no me responde al siguiente comando? Bot Telegram #Python
« Respuesta #3 en: 16 Diciembre 2021, 17:52 pm »

Bien, abajo de ésta línea:

Código
  1.    bot.reply_to(message, "¡Bienvenido soy RIOPy!, un BOT diseñado para organizar tu PYME a tu gusto. Para empezar escribe /start y nos pondremos manos a la obra.")
  2.  

pega el siguiente código y prueba de nuevo:

Código
  1.    if (message == "start"):
  2.        enviar_start(message)
  3.  

Nos comentas.


Saludos
En línea

timer

Desconectado Desconectado

Mensajes: 33



Ver Perfil WWW
Re: ¿Porque no me responde al siguiente comando? Bot Telegram #Python
« Respuesta #4 en: 17 Diciembre 2021, 08:27 am »

Bien, abajo de ésta línea:

Código
  1.    bot.reply_to(message, "¡Bienvenido soy RIOPy!, un BOT diseñado para organizar tu PYME a tu gusto. Para empezar escribe /start y nos pondremos manos a la obra.")
  2.  

pega el siguiente código y prueba de nuevo:

Código
  1.    if (message == "start"):
  2.        enviar_start(message)
  3.  

Nos comentas.


Saludos

Disculpa la demora en cuanto a mi respuesta,

lo he probado y nada, sigue sacandome el mismo mensaje que pongo con /hola. He probado a ponerlo debajo del otro y tampoco me saca todo el rato el mismo mensaje.

Un saludo!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines