MajBot
1.0.0
라이센스: GPL
버전="1.0" 인코딩="UTF-8"?> < 구성 > < 상태 id="0"> < message >안녕하세요? message > < 키워드 > < 키워드 타겟 ="1">행복 키워드 > 키워드 > 상태 >위의 예에서 사용자가 happy 키워드를 입력하면 봇은 상태 "1"로 이동하고 상태 "1" 메시지 중 하나를 무작위로 표시합니다. 사용자가 다른 문자열을 입력하면 잘못된 메시지 중 하나가 나타납니다.< 상태 id="1"> < message >와, 정말 행복해요! message > < message > 그 말을 들으니 기쁘네요 ! message > 상태 > < 잘못된 메시지 > < message >어, 이해하지 못했어요? message > < message >무슨 뜻인가요? message > 잘못된 메시지 > 구성 >
키워드 태그에는 요구 사항에 따라 봇을 사용자 정의할 수 있는 여러 속성이 포함되어 있습니다.
< 상태 id="16"> < message >안녕하세요, 요즘 잘 지내시나요? message > < message >기분은 어떠세요? message > < message >잘 지내세요? message > < 키워드 타겟 ="11">행복해요, 매우 행복해요 키워드 > < keyword target ="13">불쾌하다,좋지 않다,괜찮지 않다,슬프다,화난다 키워드 > < 키워드 타겟 ="23">괜찮아, 좋아, 고마워 키워드 > < 키워드 타겟 ="14">자신 키워드 > 상태 >
날씨 기능 사용하기
날씨 기능을 사용하려면 키워드 태그에 className과 arg라는 두 가지 속성이 포함되어야 하며, className은 Weather로 설정되고 arg는 "today", "tomorrow" 또는 "dayaftertomorrow" 키워드로 설정되어야 합니다. 오늘의 날씨를 가져오는 예는 다음과 같습니다.
< 키워드 className ="Weather" arg ="오늘">날씨 키워드 >
결과:
당신: 날씨가 어때요? 봇: 오늘은 안개인 것 같아요
< 상태 id="11"> < message >멋지네요. 왜 행복한가요? message > < 키워드 > < 키워드 타겟 ="21">복권 키워드 > < 키워드 타겟 ="22">* 키워드 > 키워드 > 상태 >
< 구성 > < 상태 id="0"> < message >안녕하세요, 제 이름은 MajBot입니다. 당신의 이름은 무엇입니까? message > < 키워드 > < 키워드 대상 ="2" 변수 ="이름">([a-zA-Z ]+) 키워드 > 키워드 > 상태 > < 상태 id="16"> < message >[name]님, 안녕하세요. 만나서 반가워요! message > 상태 > 구성 >결과:
봇: 안녕하세요. 제 이름은 MajBot입니다. 당신의 이름은 무엇입니까? 당신: 마지드 봇: 안녕하세요 마지드, 만나서 반가워요!위의 예에서 "([a-zA-Z )+)" 정규식은 공백을 포함하여 a에서 z 사이의 모든 문자(대소문자 구분 안 함)를 허용하고 일치하는 단어를 name 변수에 저장한 다음 메시지에서 [name]을 사용하여 사용자의 이름은 이 태그로 대체됩니다. (Regex 구문에 대한 자세한 내용은 Java Regex 설명서를 참조하세요.)
< 구성 > < 상태 id="0"> < message >안녕하세요, 제 이름은 MajBot입니다. 당신의 이름은 무엇입니까? message > < 키워드 > < 키워드 대상 ="16" 변수 ="name" 포인트 ="2">.*내 이름은 ([a-zA-z]+)입니다.* 키워드 > < 키워드 대상 ="16" 변수 ="이름">([a-zA-Z ]+) 키워드 > 키워드 > 상태 > < 상태 id="16"> < message >[name]님, 안녕하세요. 만나서 반가워요! message > 상태 > 구성 >결과:
봇: 안녕하세요. 제 이름은 MajBot입니다. 당신의 이름은 무엇입니까? 당신: 내 이름은 마지드예요 봇: 안녕하세요 마지드, 만나서 반가워요!위의 예에서는 첫 번째 키워드에 2포인트를 추가하므로 사용자가 "my name is Majid"를 입력하면 "My name is Majid"를 이름으로 반환하는 대신 이름만 가져옵니다.
< 상태 id="1"> < message >무슨 얘기하고 싶으신가요? message > < 키워드 변수 ="subject" target ="27">([a-zA-z]+) 키워드 > 상태 > < 상태 id="27"> < message >[제목]이 무엇인가요? message > < 키워드 대상 ="43" 변수 ="result" 학습 ="주제">(.*) 키워드 > 상태 >결과:
봇: 무슨 얘기를 하고 싶은데요? 당신: 축구 봇: 축구란 무엇인가요? 당신: 좋은 게임이네 봇: 알겠습니다... 봇: 무슨 얘기를 하고 싶은데요? 당신: 축구 봇: 좋은 게임이에요위의 예에서 볼 수 있듯이 봇은 축구 키워드에 대해 학습한 후 사용자가 동일한 키워드를 다시 보내면 사용자에게 응답을 다시 보냅니다.
java -cp MajBot.jar 봇.메인MajBot을 실행하려면 다음을 입력하면 됩니다.
sh 실행.shWindows를 사용하는 경우 run.bat 파일을 대신 실행할 수 있습니다.
봇을 시작한 후 사용자는 메시지를 입력하고 MajBot과 채팅을 시작할 수 있습니다.
즐기다!
http://www.majidkhosravi.com/chat-bot/