本篇文章為大家展示了ns4_chatbot通信組件的工作原理是什么,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
創(chuàng)新互聯(lián)是專業(yè)的沐川網(wǎng)站建設(shè)公司,沐川接單;提供成都做網(wǎng)站、網(wǎng)站設(shè)計、外貿(mào)營銷網(wǎng)站建設(shè),網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進行沐川網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!
NS4系列包括4個開源模塊,分別是:ns4_frame分布式服務(wù)框架(詳情點擊查看:開源|ns4_frame分布式服務(wù)框架開發(fā)指南)、ns4_gear_idgen ID生成器組件(NS4框架Demo示例)(詳情點擊查看:開源|為什么要使用ns4_gear_idgen ID生成器?)、ns4_gear_watchdog 監(jiān)控系統(tǒng)組件(服務(wù)守護、應用性能監(jiān)控、數(shù)據(jù)采集、自動化報警系統(tǒng))和ns4_chatbot通訊組件。
小編將重點介紹ns4_chatbot通訊組件的工作原理。
ns4_chatbot是針對業(yè)務(wù)的一個聊天機器人的聊天框架,集成了qqbot、wxchat、rasa以及web服務(wù)。提供微信和QQ聊天接口,可以對某個群組發(fā)送系統(tǒng)監(jiān)控消息等。QQ和微信聊天機器人都無法直接發(fā)消息給群組中的非好友用戶,只能通過@的的方式提醒。
微信聊天機器人
使用的是開源的wxpy 機器人框架。使用@register這種python wapper機制來綁定消息響應函數(shù)。微信機器人需要對群組進行注冊才能對消息進行發(fā)送。
QQ聊天機器人
采用酷Q方案??酫是windows下的一個程序,可以模擬QQ。在linux系統(tǒng)中,采用wine技術(shù)。需要單獨部署成為一個docker,然后通過一個http的接口暴露,各類http接口,用來讓我們發(fā)送消息。提供http消息回調(diào)。
接受內(nèi)部系統(tǒng)(如監(jiān)控系統(tǒng))的系統(tǒng)調(diào)用,從而把消息推送給QQ或者微信用戶。內(nèi)部系統(tǒng)調(diào)用服務(wù)的時候,需要提供以下信息
發(fā)給哪個群組
發(fā)給這個群組中的那個用戶
發(fā)送的消息
可以接受QQ、微信用戶的對話,理解其意圖,并且回應用戶。
此項目主要針對linux系統(tǒng),采用python2.7+環(huán)境進行部署說明。
安裝必需依賴包:取項目中的 ns4_chatbot/requirements.txt 文件,運行pip install –r requirements.txt命令
安裝redis
安裝MySQL數(shù)據(jù)庫,導入ns4_chatbot/import_data/production/ddl.sql 文件
酷Q目前可以在Wine中運行,見酷Q Air / Pro on Wine,因此也就自然而然有了相應的Docker鏡像coolq/wine-coolq。
要在Docker中使用本插件,可以使用酷Q官方的Docker鏡像,然后在其中安裝本插件(下載cpk、編輯配置文件、啟用插件),也可以使用維護的已安裝并啟用了插件的鏡像 richardchien/cqhttp(基于酷Q官方的鏡像修改)。
下面介紹這個鏡像的用法。
docker 安裝
sudo apt-get install -y docker.io
酷Q安裝
$ docker pull richardchien/cqhttp:latest $ mkdir coolq # 用于存儲酷 Q 的程序文件 $ docker run -ti --rm --name cqhttp-test \ # 將宿主目錄掛載到容器內(nèi)用于持久化酷 Q 的程序文件 -v $(pwd)/coolq:/home/user/coolq \ -p 9000:9000 \ # noVNC 端口,用于從瀏覽器控制酷 Q -p 5700:5700 \ # HTTP API 插件開放的端口 -e COOLQ_ACCOUNT=123456 \ # 要登錄的 QQ 賬號,可選但建議填 -e CQHTTP_POST_URL=http://example.com:8080 \ # 事件上報地址 # 允許通過 HTTP 接口訪問酷 Q 數(shù)據(jù)文件 -e CQHTTP_SERVE_DATA_FILES=yes \ richardchien/cqhttp:latest
配置酷Q回調(diào)地址:
在/coolq/app/io.github.richardchien.coolqhttpapi/config/<QQ_ID>.ini 中添加 post_url=http://[IP]:8080/coolq_callback
酷Q啟動:
在瀏覽器中輸入 http://[ip]:5700, 進入如下頁面:
點擊圖中的鏈接,進入如下頁面,密碼為COOLQ_ACCOUNT對應的密碼。
登錄酷Q,輸入QQ密碼等。
登錄成功界面。
查看日志。
bot=wechat,qq #啟動微信和QQ功能 bot_chat_base_inteval=1 #設(shè)置消息的最少發(fā)送間隔,防止微信和QQ被封 bot_chat_interval=3 #在bot_chat_base_inteval的基礎(chǔ)上隨機停頓的時間 retry_max_num=10 #微信或者QQ掉線后嘗試重新登錄的次數(shù) retry_interval = 60 #嘗試重新登錄的時間間隔 retry_sleep=600 #嘗試10次后,沒有登錄成功,就徹底休息10分鐘 debug = True #是否打開調(diào)試日志 [admin] email #微信二維碼和錯誤日志發(fā)送的郵箱地址,支持多個郵箱,多個郵箱 地址以逗號隔開 [email]模塊 #配置發(fā)送郵箱的用戶名密碼等,注意,此郵箱需要開通 smtp 協(xié)議 [http]模塊 port=8080 #配置http服務(wù)監(jiān)聽地址端口 [db] 模塊 #配置數(shù)據(jù)庫的用戶名、密碼等相關(guān)信息 [redis]模塊 #配置redis的ip、端口和密碼等信息 [wxbot]模塊 console_qr = True #是否在日志窗口打印微信登錄二維碼 cache_path = .cache #緩存地址,存放系統(tǒng)產(chǎn)生的圖片,二維碼等信息 cache_file = wxpy.pkl #存放微信記住密碼等文件 qr_path = .cache/qr.png #存放微信二維碼 [coolq]模塊 #配置酷Q相關(guān)的信息 url=http://127.0.0.1:5700/ #配置登錄酷 Q 的地址 qq=12345678 #配置酷Q的登錄賬號 cache_path = [workspace]/coolqdata/image #配置酷 Q 的圖片位置,必須配 置到 coolq 的運行目錄的 data/image,這樣 CQ 碼發(fā)送的時候圖片的時候才能生效 [voice2txt] # #科大訊飛|百度的聲音轉(zhuǎn)文本配置 [rasa] #NLU 自然語言意圖識別模型 nlu_model = rasa/model/default/latest #對話模型 dialog_model = rasa/model/dialogue
在數(shù)據(jù)庫biz_system_tree中定義所有可能用到的QQ群組ID和微信群組名稱,如果不定義的話,可能會出現(xiàn)找不到對應的群組的錯誤。
在ns4_chatbot目錄下面,運行nohup python Main.py進行項目的啟動。 然后到配置的郵箱進行微信掃碼。
發(fā)送消息接口地址【post】:https://<ip>:<port>/chat 請求參數(shù):
上述內(nèi)容就是ns4_chatbot通信組件的工作原理是什么,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
網(wǎng)站欄目:ns4_chatbot通信組件的工作原理是什么
本文URL:http://jinyejixie.com/article2/gpgooc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、品牌網(wǎng)站設(shè)計、微信小程序、品牌網(wǎng)站制作、網(wǎng)站營銷、網(wǎng)站導航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)