2015-09-30 5 views

ответ

2

Как вы можете видеть в Telegram Bot API Documentation, вы можете использовать sendMessage, чтобы отправить сообщение пользователю.

Когда вы получаете сообщение, найдите параметр chat или from в JSON (зависит от того, хотите ли вы ответить человеку, когда он является групповым чатом или нет). Вы можете использовать параметр idchat или from для отправки сообщения.

Таким образом, первый параметр для SendMessage будет chat_id=message.chat.id

Вам не нужно parse_mode, disable_web_page_preview и reply_markup для этого примера.

Как вы хотите ответить на сообщение пользователя, вы можете установить reply_to_message_id в идентификатор полученного сообщения.

reply_to_message_id = message.message_id 

Последнее, но не менее, вы хотите установить параметр text. Если я правильно ее понимаю, ваша программа отправит пользователю последнее полученное message.text.

Так что вы хотите сделать, как только получите сообщение, сохраните его.

Message oldMessage = message 

И когда вы посылаете сообщение пользователю использовать старые сообщения text свойство как текст.

text = oldMessage.text 

Хорошо подводить итоги здесь псевдокод функции, что будет происходить, как только вы получите сообщение:

Message oldMessage = null; 

public void NewMessage(Message message){ 

    int chat_id = message.chat.id; 
    int reply_to_message_id = message.message_id; 

    String text = "There is no old Message"; //fallback value 

    if(oldMessage != null){ 
     text = oldMessage.text; 
    } 

    //Send Message in this example only has 3 parameters, and ignores the 
    //not used ones 
    SendMessage(chat_id,text,reply_to_message_id); 

    oldMessage = message; //store the received message for future answering 

} 

Как вы храните все сообщение в oldMessage вы можете также установить текст, который вы отправите примерно так:

String text = oldMessage.from.first_name+": "+oldMessage.text;