Java 如何获取以前的消息';有电报机器人的短信吗?

Java 如何获取以前的消息';有电报机器人的短信吗?,java,telegram,telegram-bot,Java,Telegram,Telegram Bot,我正在使用java构建一个面向键盘的回复机器人,我需要它以不同的方式处理两种情况,其中最新消息的文本与前一条消息的文本相同。如何获取或存储前一条消息的文本作为公共变量 我的概念模型如下: 我有一个很大的If-Else-If语句,其中每个If块的条件都是沿着If(update.hasMessage()&&messageText.equals(“aaa”)的行进行的,其中“aaa”是出现在回复键盘上的一些文本,它在前面为用户弹出(因为键盘按钮将字符串作为文本发送,并且在Telegram bot的ap

我正在使用java构建一个面向键盘的回复机器人,我需要它以不同的方式处理两种情况,其中最新消息的文本与前一条消息的文本相同。如何获取或存储前一条消息的文本作为公共变量

我的概念模型如下:

我有一个很大的If-Else-If语句,其中每个If块的条件都是沿着
If(update.hasMessage()&&messageText.equals(“aaa”)
的行进行的,其中“aaa”是出现在回复键盘上的一些文本,它在前面为用户弹出(因为键盘按钮将字符串作为文本发送,并且在Telegram bot的api中没有按钮按下事件选项)。messageText定义为update.getMessage().getText()


我想让代码区别对待两种情况,在这两种情况下,messageText根据之前的消息是相同的。
if(update.hasMessage()&&messageText.equals(“aaa”)&&previousMessage.equals(“bbb”){}或者if(update.hasMessage()&&messageText.equals(“aaa”)&&previousMessage.equals(“ccc”){}
。如何存储以前的消息而不在收到新消息时更新它?

有许多模式可用于控制用户的状态,但作为我在电报机器人中所做的一个简单技巧,您可以根据当前消息响应生成下一条消息数据。例如,当用户发送“aaa”时作为第一条消息响应,并且您希望生成下一条消息,您可以将第一条消息数据添加到它的回调中,如下所示:“aaa,bbb”,当调用api时,您会注意到上一条消息是“aaa”通过将回调数据拆分为“,”。

Hi,为什么不使用标准的现有设计模式来控制用户的状态?例如,状态模式?嘿,你能添加一个例子吗?我的意思是你在讨论你已经收到的消息吗?比方说,我想知道用户发送的消息是对什么消息的回答