from telegram import Update
from telegram.ext import Application, MessageHandler, filters, ContextTypes
# 1. Introduce tu token del bot aquí.
BOT_TOKEN = "TU_TOKEN_AQUÍ"
# 2. Define los IDs del grupo origen y destino.
# Puedes obtenerlos activando los registros en el bot (explicado más adelante).
GROUP_ORIGEN_ID = -123456789 # Reemplaza con el ID del grupo origen.
GROUP_DESTINO_ID = -987654321 # Reemplaza con el ID del grupo destino.
# Función principal que reenvía mensajes.
async def reenviar_mensajes(update: Update, context: ContextTypes.DEFAULT_TYPE):
# Verifica que el mensaje venga del grupo de origen.
if update.effective_chat.id == GROUP_ORIGEN_ID:
# Reenvía el mensaje al grupo destino.
await context.bot.forward_message(
chat_id=GROUP_DESTINO_ID, # Grupo destino
from_chat_id=update.effective_chat.id, # Grupo origen
message_id=update.message.message_id # ID del mensaje
)
# Configura el bot.
def main():
# Crea la aplicación con el token del bot.
app = Application.builder().token(BOT_TOKEN).build()
# Agrega un manejador de mensajes que reenvía todo tipo de contenido.
app.add_handler(MessageHandler(filters.ALL, reenviar_mensajes))
# Ejecuta el bot hasta que se detenga manualmente.
print("Bot en ejecución...")
app.run_polling()
# Ejecuta el bot.
if __name__ == "__main__":
main()
puedes explicar como hacer eso? xdpip install python-telegram-bot==20.3
Instala las dependencias primero
Busca en Google no soy profesor particularpuedes explicar como hacer eso? xd
Y es posible hacerlo sin que el bot esté metido en dicho grupo?Código:from telegram import Update from telegram.ext import Application, MessageHandler, filters, ContextTypes # 1. Introduce tu token del bot aquí. BOT_TOKEN = "TU_TOKEN_AQUÍ" # 2. Define los IDs del grupo origen y destino. # Puedes obtenerlos activando los registros en el bot (explicado más adelante). GROUP_ORIGEN_ID = -123456789 # Reemplaza con el ID del grupo origen. GROUP_DESTINO_ID = -987654321 # Reemplaza con el ID del grupo destino. # Función principal que reenvía mensajes. async def reenviar_mensajes(update: Update, context: ContextTypes.DEFAULT_TYPE): # Verifica que el mensaje venga del grupo de origen. if update.effective_chat.id == GROUP_ORIGEN_ID: # Reenvía el mensaje al grupo destino. await context.bot.forward_message( chat_id=GROUP_DESTINO_ID, # Grupo destino from_chat_id=update.effective_chat.id, # Grupo origen message_id=update.message.message_id # ID del mensaje ) # Configura el bot. def main(): # Crea la aplicación con el token del bot. app = Application.builder().token(BOT_TOKEN).build() # Agrega un manejador de mensajes que reenvía todo tipo de contenido. app.add_handler(MessageHandler(filters.ALL, reenviar_mensajes)) # Ejecuta el bot hasta que se detenga manualmente. print("Bot en ejecución...") app.run_polling() # Ejecuta el bot. if __name__ == "__main__": main()
De nada
Como leería el bot los mensajes si no está dentro del grupo?Y es posible hacerlo sin que el bot esté metido en dicho grupo?
Como leería el bot los mensajes si no está dentro del g
Teniendo acceso a dicha cuenta de Telegram? Osease que el bot tenga acceso a los grupos o canales de una cuenta de Telegram y que de ahí reenvié los mensajes del grupo( no sé si esto puede ser posibleComo leería el bot los mensajes si no está dentro del grupo?
Pues si el bot no tiene acceso al grupo pues no puede reenviar mensajes, y si tiene acceso al grupo significa que está dentro del grupoY es posible hacerlo sin que el bot esté metido en dicho grupo?
Gracias makina me lo guardo para probar cosillasCódigo:from telegram import Update from telegram.ext import Application, MessageHandler, filters, ContextTypes # 1. Introduce tu token del bot aquí. BOT_TOKEN = "TU_TOKEN_AQUÍ" # 2. Define los IDs del grupo origen y destino. # Puedes obtenerlos activando los registros en el bot (explicado más adelante). GROUP_ORIGEN_ID = -123456789 # Reemplaza con el ID del grupo origen. GROUP_DESTINO_ID = -987654321 # Reemplaza con el ID del grupo destino. # Función principal que reenvía mensajes. async def reenviar_mensajes(update: Update, context: ContextTypes.DEFAULT_TYPE): # Verifica que el mensaje venga del grupo de origen. if update.effective_chat.id == GROUP_ORIGEN_ID: # Reenvía el mensaje al grupo destino. await context.bot.forward_message( chat_id=GROUP_DESTINO_ID, # Grupo destino from_chat_id=update.effective_chat.id, # Grupo origen message_id=update.message.message_id # ID del mensaje ) # Configura el bot. def main(): # Crea la aplicación con el token del bot. app = Application.builder().token(BOT_TOKEN).build() # Agrega un manejador de mensajes que reenvía todo tipo de contenido. app.add_handler(MessageHandler(filters.ALL, reenviar_mensajes)) # Ejecuta el bot hasta que se detenga manualmente. print("Bot en ejecución...") app.run_polling() # Ejecuta el bot. if __name__ == "__main__": main()
De nada
si que hay bots que pueden reenviar mensajes sin estar en el grupo o canal, vinculandolo con tu cuenta puede, oobviamente lo que hace el bot no es reenviar el mensaje como tal, sino copiarlo y enviarloPues si el bot no tiene acceso al grupo pues no puede reenviar mensajes, y si tiene acceso al grupo significa que está dentro del grupo