Telegram bot pour le support DIY

Imaginez que vous ayez votre propre chaîne dans le panier. Disons que vous exprimez un point de vue politique impopulaire et, par conséquent, attrapez un coup personnel de la part des lecteurs et des passants.





Ou, par exemple, vous vendez quelque chose via votre chaîne. Il y a tellement de clients qu'un "vendeur" (= vous) ne peut pas faire face. Le service d'assistance de votre entreprise répond à tout le monde dans le chat public associé à votre chaîne. Mais beaucoup sont gênés de poser des questions, comme on peut les voir, alors ils écrivent dans un message personnel, qui ne s'adapte pas.





Il y a beaucoup de problèmes, mais il n'y a qu'une seule solution: faire un robot Telegram qui fera office d'intermédiaire entre vos clients et l'équipe de support.





Mon avis : c'est la meilleure utilisation des robots de télégramme dans toute l'histoire de leur existence. En deuxième lieu, il y a la distribution d'informations classifiées via le bot uniquement aux utilisateurs payants.





- Livegrambot. , " Livegrambot", . , , .





, 1 .





TL;DR: : https://github.com/ohld/telegram-support-bot





.

:





  • ( , ),





  • ( , ),





  • ( ).





:





  1. ,





  2. ,





  3. ,





  4. ( reply),





  5. , .





: , .





? , .

, . , , . , Heroku, , .





README.md Heroku, . , Heroku ( 1 ), :





Heroku , , , . :





- App name: Heroku. .





- Choose a region: . .





- HEROKU_APP_NAME



: , App name ( , ).





- TELEGRAM_SUPPORT_CHAT_ID



: , . - .





- TELEGRAM_TOKEN



: , BotFather.





TELEGRAMSUPPORTCHAT_ID





, - . , , " ", chat_id



.





?

. , . , .





Python python-telegram-bot



. GitHub (), .





( )





3 ():





from telegram.ext import Updater
from telegram.ext import CommandHandler, MessageHandler, Filters

updater = Updater(TELEGRAM_TOKEN)
dp = updater.dispatcher

#      "   {username}"
dp.add_handler(CommandHandler('start', start))

#       
dp.add_handler(MessageHandler(Filters.chat_type.private, forward_to_chat))

#       
dp.add_handler(MessageHandler(Filters.chat(TELEGRAM_SUPPORT_CHAT_ID) & Filters.reply, forward_to_user))
      
      



/start . - - , ().





def start(update, context):
    update.message.reply_text(WELCOME_MESSAGE)

    user_info = update.message.from_user.to_dict()

    context.bot.send_message(
        chat_id=TELEGRAM_SUPPORT_CHAT_ID,
        text=f"? Connected {user_info}.",
    )
      
      



, ():





def forward_to_chat(update, context):
    update.message.forward(chat_id=TELEGRAM_SUPPORT_CHAT_ID)
      
      



(reply) , . .forward



, . Telegram Bot API ():





def forward_to_user(update, context):
    user_id = update.message.reply_to_message.forward_from.id
    context.bot.copy_message(
        message_id=update.message.message_id,
        chat_id=user_id,
        from_chat_id=update.message.chat_id
    )
      
      



Heroku





Heroku, Webhook, Pooling. , " ", " ". , (, , - ). , , , .





, Heroku ( ). "" , . , .





, Webhook, , endpoint. : " - ". - , , . , https.





, Heroku https, python-telegram-bot



. URL, , .





webhook- () :





#    
updater.start_webhook(
  listen="0.0.0.0",
  port=PORT,  # HEROKU ,       
  url_path=TELEGRAM_TOKEN  #     ,  
)

#  : "     "
updater.bot.set_webhook(f"https://{HEROKU_APP_NAME}.herokuapp.com/{TELEGRAM_TOKEN}")
updater.idle()
      
      



, HEROKU_APP_NAME



, Heroku App? , , Heroku . , , " App Name " .





?





, , . ?





-, , - . , . -, : CRM, , .






Merci d'avoir regardé. Vous savez maintenant comment créer et déployer gratuitement un bot d'assistance Telegram. Le code complet du projet (ainsi que le bouton magique "Déployez-le pour Heroku") est ici . Dans ma chaîne Telegram, je partage mon expérience dans le développement de grands robots de télégramme, partage des ensembles de données et des analyses de produits. Entre.





Quels autres cas d'utilisation de robots Telegram populaires mettriez-vous en évidence? Écrivez dans les commentaires.








All Articles