[C#] Telegram.Bot v19 - 使用 SendPoll 發動投票,處理投票問題

2023-05-12

今天繼續 Telegram.Bot v19 ,應該是最後一篇了,畢竟其他功能也不是常用到

這範例主要是,對於在群組中舉辦一場投票,然後可以收集票數,也可以知道誰投了那些答案

這主要是用在群組中會比較有用,當然你也可以一個一個去發不過只是搞死你自己而已..



今天主要案例是一個群組,裡面有三個人,有人說出 /vote 後,會啟動機器人發出一個投票,投票會在兩分鐘後結束

並且我們會在程式碼中得到每一次的投票結果,跟誰投了什麼票


1.你得先跟 BotFather 建立一個機器人,並且跟拿到 TOKEN ,可以參考這裡 https://sendpulse.com/knowledge-base/chatbot/telegram/create-telegram-chatbot

我就不贅述了,我之所以不得不升級就上去就是因為你建新的機器人,拿到的 token ,在 Telegram.Bot SDK  v15 版本裡面會被報錯誤,非正確格式的 token

2. Nuget Library : https://www.nuget.org/packages/Telegram.Bot 目前版本為 19.0.0


3.初始化 TelegramBotClient ,因為想收到所有事件,跟之前案例不同以防萬一我就改  receiverOptions 加入 UpdateType 的全部 Type


 4.就是寫關於接收的事件,這邊我就寫在註解裡面了

主要可以使用 update.Type 去判斷這回應事件的類型 


程式碼:


結果:


大概就先筆記到這裡吧,常用的功能都記錄 下來了,其他的應該就算是特殊應用了

reference: 

https://telegrambots.github.io/book/2/send-msg/native-polls-msg.html?highlight=SendPollAsync#stop-a-poll




當麻許的超技八 2014 | Donma Hsu Design.