base demo

This commit is contained in:
2026-04-14 08:41:57 +02:00
commit 95e444aed4
8 changed files with 495 additions and 0 deletions

64
test_chatid.py Normal file
View File

@@ -0,0 +1,64 @@
import logging
import os
import asyncio
from dotenv import load_dotenv
from telegram import Update
from telegram.ext import ApplicationBuilder, ContextTypes, MessageHandler, filters
# Chargement du token
load_dotenv()
API_TOKEN = os.getenv("API_TOKEN")
# Configuration du logging
logging.basicConfig(
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s',
level=logging.INFO
)
async def get_info(update: Update, context: ContextTypes.DEFAULT_TYPE):
"""Affiche toutes les informations disponibles lors de la réception d'un message"""
user = update.effective_user
chat = update.effective_chat
msg = update.effective_message
print("\n" + "="*40)
print("🎯 NOUVELLE INTERACTION DÉTECTÉE")
print("="*40)
if user:
print(f"👤 UTILISATEUR (Auteur) :")
print(f" - ID : {user.id}")
print(f" - Nom : {user.full_name}")
print(f" - Username : @{user.username if user.username else 'N/A'}")
print(f" - Est un Bot : {user.is_bot}")
else:
print("👤 UTILISATEUR : Non disponible (Post de canal anonyme)")
print(f"\n💬 CONTEXTE DU CHAT :")
print(f" - Chat ID : {chat.id}")
print(f" - Titre : {chat.title if chat.title else 'Conversation Privée'}")
print(f" - Type : {chat.type}")
print(f"\n📝 MESSAGE :")
print(f" - Contenu : {msg.text if msg.text else '[Média/Autre]'}")
print("="*40 + "\n")
# On répond à l'utilisateur pour confirmer
if msg:
await msg.reply_text(f"✅ Infos reçues !\nTon ID : {user.id if user else 'N/A'}\nChat ID : {chat.id}")
if __name__ == '__main__':
if not API_TOKEN:
print("❌ Erreur : API_TOKEN non trouvé dans le .env")
exit(1)
# Création de l'application de test
application = ApplicationBuilder().token(API_TOKEN).build()
# On écoute absolument TOUT (messages, posts de canaux, etc.)
application.add_handler(MessageHandler(filters.ALL, get_info))
print("🚀 SCRIPT DE TEST DÉMARRÉ")
print("👉 Envoie un message au bot pour voir tes informations s'afficher ici...")
application.run_polling()