DIYサポート用の電報ボット

カートに自分のチャンネルがあると想像してみてください。あなたが不人気な政治的見解を表明し、それに応じて、読者の側で個人的なヒットをキャッチし、通り過ぎるとしましょう。





または、たとえば、チャネルを通じて何かを販売しているとします。クライアントが非常に多いため、1人の「営業担当者」(=あなた)が対応できません。または、ビジネスサポートは、チャンネルに接続されている公開チャットの全員に応答します。しかし、多くの人は、見ることができるように質問をするのが恥ずかしいので、拡大縮小しない個人的なメッセージを書きます。





多くの問題がありますが、解決策は1つだけです。それは、クライアントとサポートチームの間の仲介役として機能するTelegramボットを作成することです。





私の意見:これは、テレグラムボットの存在の歴史全体における最良の使用法です。2つ目は、ボットを介して有料ユーザーにのみ機密情報を配布することです。





- 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, , .






見てくれてありがとう。これで、Telegramサポートボットを無料で作成してデプロイする方法がわかりました。プロジェクトの完全なコード(魔法のボタン「Deployit forHeroku」と一緒に)はここにあります私のTelegramチャネルでは、大規模なTelegramボットの開発、データセットの共有、製品分析の経験を共有しています。どうぞいらっしゃい。





他に人気のあるTelegramボットのユースケースを強調しますか?コメントを書いてください。








All Articles