2016-08-29 52 views
0

我開始開發電報bot應用程序。我正在使用自定義鍵盤發送消息給用戶。我需要知道的是我怎樣才能收到來自鍵盤按鈕單擊的答覆,以及如何響應用戶特定的按鈕點擊。Telegram bot api從keboard按鈕接收響應

在閱讀電報bot api之後,我得到了一個想法,即我必須從json中的電報api getUpdates,我發現很難反序列化通過getUpdate方法接收的json對象。

我想知道,在用戶鍵盤按鈕單擊我將通過json getUpdate方法接收更新,通過反序列化它我必須通過c#代碼的特定消息響應該user_id,這是一個正確的流程我是標題至。我紅色的Github的東西,但我沒有得到它。

public async Task sndmsg() 
{ 
    var Bot = new Api("MY_TELEGRAM_TOKEN"); 
    var rkm = new Telegram.Bot.Types.ReplyMarkups.ReplyKeyboardMarkup(); 
    //rkm.ResizeKeyboard = true; 


    rkm.Keyboard = new Telegram.Bot.Types.KeyboardButton[][] 
    { 

    new Telegram.Bot.Types.KeyboardButton[] 
    { 
     new Telegram.Bot.Types.KeyboardButton("button 1") 
    }, 

    new Telegram.Bot.Types.KeyboardButton[] 
    { 
     new Telegram.Bot.Types.KeyboardButton("button 2") 
    }, 

    new Telegram.Bot.Types.KeyboardButton[] 
    { 
     new Telegram.Bot.Types.KeyboardButton("button 3") 
    }, 

    new Telegram.Bot.Types.KeyboardButton[] 
    { 
     new Telegram.Bot.Types.KeyboardButton("button 4") 
    } 
}; 

    string cht_id = "201520743"; 
    string txt = "this is keyboard in reply"; 
    await Bot.SendTextMessage(cht_id, txt, false, false, 0, rkm); 
} 

我有這個我想要響應,當用戶點擊特定的按鈕。

我想知道:

  1. 無論我是在正確的方向還是沒有?

  2. 請求響應流如何與機器人聊天時工作?

  3. 如何獲得鍵盤按鈕點擊的響應並回複用戶點擊該按鈕。如果使用json,如果有人用c#中的示例進行指導,將會有所幫助。

  4. 有沒有辦法觸發鍵盤按鈕點擊的回調URL,可以在服務器上解析,然後在特定的答覆根據該按鈕發送給用戶點擊?

有人能指導我正確的方向?

+0

請看看答案了這個問題:如何從在電報機器人鍵盤輸入的響應?](HTTP://計算器。 COM /一個/ 42044397) – Bennik2000

回答