MajBot
1.0.0
許可證:GPL
版本=“1.0” 編碼=“UTF-8”? <配置> <狀態ID="0"> < message >你好,你好嗎? <關鍵字> < keyword target ="1">快樂 關鍵字> 狀態>在上面的範例中,如果使用者輸入 happy 關鍵字,機器人將移動到狀態「1」並隨機顯示狀態「1」訊息之一,如果使用者輸入任何其他字串,則會出現無效訊息之一。<州id="1">
哇,你很高興! 很高興聽到這個消息! 狀態> <無效訊息> < message >呃,我沒聽懂? <訊息>你的意思是什麼? 無效訊息> 配置>
關鍵字標籤包含多個屬性,可根據需求自訂機器人。
<州id="16"> < message >你好,今天過得怎麼樣?你感覺怎麼樣? 你好嗎? < keyword target ="11">快樂,非常快樂 < keywordtarget ="13">不高興、不好、不好、悲傷、不安 < keyword target ="23">很好,很好,謝謝 < keyword target ="14">你自己 狀態>
使用天氣功能
若要使用天氣功能,關鍵字標籤應包含兩個屬性,className 和 arg,className 應設定為 Weather,arg 應設定為「today」、「tomorrow」或「dayaftertomorrow」關鍵字。這是獲取今天天氣的範例:
<關鍵字className =「天氣」 arg =「今天」>天氣關鍵字>
結果:
你:天氣怎麼樣 Bot:我想今天是霧
<州id="11"> < message >太好了,你為什麼會高興? <關鍵字> < keyword target ="21">抽獎 <關鍵字目標=“22”>*關鍵字> 關鍵字> 狀態>
<配置> <狀態ID="0"> < message >你好,我叫MajBot,你叫什麼名字? <關鍵字> <關鍵字目標=“2”變數=“名稱”>([a-zA-Z]+)關鍵字> 關鍵字> 狀態> <州id="16"> < message >你好[名字],很高興見到你! 狀態> 配置>結果:
Bot:你好,我叫 MajBot,你叫什麼名字? 你:馬吉德 Bot:你好,majid,很高興見到你!在上面的範例中,「([a-zA-Z )+)」正規表示式接受a 到z 之間的任何字元(不區分大小寫),包括空格,並將匹配的單字儲存到name 變量,然後透過在訊息中使用[name],使用者的名稱將替換為此標籤。 (有關 Regex 語法的更多信息,請參閱 Java Regex 文件)。
<配置> <狀態ID="0"> < message >你好,我叫MajBot,你叫什麼名字? <關鍵字> <關鍵字目標=“16”變數=“名稱”點=“2”>。 *我的名字是([a-zA-z]+)。 <關鍵字目標=“16”變數=“名稱”>([a-zA-Z]+)關鍵字> 關鍵字> 狀態> <州id="16"> < message >你好[名字],很高興見到你! 狀態> 配置>結果:
Bot:你好,我叫 MajBot,你叫什麼名字? 你:我叫馬吉德 Bot:你好,majid,很高興見到你!在上面的範例中,我們為第一個關鍵字添加 2 個點,因此如果使用者輸入“我的名字是 Majid”,它只會取得名稱,而不是返回“我的名字是 Majid”作為名稱。
<州id="1">結果:你想聊什麼? <關鍵字變數=“主題”目標=“27”>([a-zA-z] +)關鍵字> 狀態> <州id="27"> [主題]是什麼? <關鍵字目標=“43”變數=“結果”學習=“主題”>(。*)關鍵字> 狀態>
機器人:你想聊什麼? 你:足球 機器人:什麼是足球? 你:這是個好遊戲 機器人:我明白了… 機器人:你想聊什麼? 你:足球 機器人:這是個好遊戲如上面的範例所示,機器人學習足球關鍵字,然後當使用者再次發送相同的關鍵字時將回應傳回使用者。
java -cp MajBot.jar bot.Main要運行 MajBot,您只需輸入:
sh run.sh如果您使用的是 Windows,則可以執行 run.bat 檔案。
啟動機器人後,用戶可以輸入訊息並開始與 MajBot 聊天。
享受!
http://www.majidkhosravi.com/chat-bot/