68.8. 重新主动 Chat-Bot 示例
reactive chat-bot 模式是使用 Camel 组件构建简单的 chat bot 的一种简单方式,它直接回复来自 gramgram 用户收到的 chat 消息。
以下是 Java DSL 中 chat-bot 的基本配置
from("telegram:bots?authorizationToken=123456789:insertYourAuthorizationTokenHere") .bean(ChatBotLogic.class) .to("telegram:bots?authorizationToken=123456789:insertYourAuthorizationTokenHere");
或者在 Spring XML 中
<route> <from uri="telegram:bots?authorizationToken=123456789:insertYourAuthorizationTokenHere"/> <bean ref="chatBotLogic" /> <to uri="telegram:bots?authorizationToken=123456789:insertYourAuthorizationTokenHere"/> <route> <bean id="chatBotLogic" class="com.example.ChatBotLogic"/>
ChatBotLogic
是一种简单的 bean,它实施通用字符串到字符串的方法。
public class ChatBotLogic { public String chatBotProcess(String message) { if( "do-not-reply".equals(message) ) { return null; // no response in the chat } return "echo from the bot: " + message; // echoes the message } }
chatBotProcess
方法返回的每个非空字符串会自动路由到源自请求的 chat (因为 CamelTelegramChatId
标头用于路由消息)。