作者 crossoverJie

:sparkles: Introducing new features.ai model

... ... @@ -141,6 +141,6 @@ public class AsyncMsgLogger implements MsgLogger {
LOGGER.info("IOException", e);
}
return sb.toString().replace(key,"\033[31;4m" + key+"\033[0m");
return sb.toString().replace(key, "\033[31;4m" + key + "\033[0m");
}
}
... ...
... ... @@ -45,8 +45,22 @@ public class MsgHandler implements MsgHandle {
@Autowired
private MsgLogger msgLogger ;
private boolean aiModel = false ;
@Override
public void sendMsg(String msg) {
if (aiModel){
aiChat(msg);
}else {
normalChat(msg);
}
}
/**
* 正常聊天
* @param msg
*/
private void normalChat(String msg) {
String[] totalMsg = msg.split(";;");
if (totalMsg.length > 1) {
//私聊
... ... @@ -71,6 +85,19 @@ public class MsgHandler implements MsgHandle {
}
}
/**
* AI model
* @param msg
*/
private void aiChat(String msg) {
msg = msg.replace("吗","") ;
msg = msg.replace("嘛","") ;
msg = msg.replace("?","!");
msg = msg.replace("?","!");
msg = msg.replace("你","我");
System.out.println("AI:\033[31;4m" + msg + "\033[0m");
}
@Override
public void groupChat(GroupReqVO groupReqVO) throws Exception {
routeRequest.sendGroupMsg(groupReqVO);
... ... @@ -109,9 +136,16 @@ public class MsgHandler implements MsgHandle {
printOnlineUsers();
} else if (msg.startsWith(SystemCommandEnumType.QUERY.getCommandType().trim() + " ")){
String[] split = msg.split(" ") ;
String res = msgLogger.query(split[1]);
System.out.println(res);
//查询聊天记录
queryChatHistory(msg);
}else if (SystemCommandEnumType.AI.getCommandType().trim().equals(msg.toLowerCase())){
//开启 AI 模式
aiModel = true ;
System.out.println("\033[31;4m" + "Hello,我是估值两亿的 AI 机器人!" + "\033[0m");
}else if (SystemCommandEnumType.QAI.getCommandType().trim().equals(msg.toLowerCase())){
//关闭 AI 模式
aiModel = false ;
System.out.println("\033[31;4m" + "。゚(゚´ω`゚)゚。 AI 下线了!" + "\033[0m");
}else {
printAllCommand(allStatusCode);
}
... ... @@ -126,6 +160,16 @@ public class MsgHandler implements MsgHandle {
}
/**
* 查询聊天记录
* @param msg
*/
private void queryChatHistory(String msg) {
String[] split = msg.split(" ") ;
String res = msgLogger.query(split[1]);
System.out.println(res);
}
/**
* 打印在线用户
*/
private void printOnlineUsers() {
... ...
... ... @@ -17,7 +17,9 @@ public enum SystemCommandEnumType {
ALL(":all ","获取所有命令"),
ONLINE_USER(":olu ","获取所有在线用户"),
QUIT(":q! ","退出程序"),
QUERY(":q ","查询聊天记录")
QUERY(":q ","【:q 关键字】查询聊天记录"),
AI(":ai ","开启 AI 模式"),
QAI(":qai ","关闭 AI 模式")
;
... ...