框架自己採用 Autofac
做爲依賴注入框架。進行插件開發時,必然會使用到該框架。建議開發者閱讀官方文檔熟悉其用法。https://autofac.readthedocs.io/en/latest/getting-started/index.htmlhtml
依賴於 Liblog
與 NLog
框架支持輸出多種多樣的日誌數據,以便開發者進行開發調試。node
默認狀況下,框架將會把日誌輸出在機器人平臺根目錄的 logs 文件夾中。github
點擊此處,學習使用更加美觀的日誌查看器。shell
框架自己支持進行調試插件與調試框架源碼。數據庫
Session 機制是框架基於 Autofac
採用的一套API生命週期管理方案。簡要而言,框架將每次事件觸發過程,當作一次 Session 進行控制。微信
開發者能夠依賴這一輩子命週期特性,完成一些業務操做的連貫性。例如:保證整個事件的處理過程屬於同一數據庫事務。session
詳細的使用方法建議在瞭解 Autofac
相關的用法以後進行探究。框架
熱更新機制爲開發者提供了不須要重啓機器人平臺便可以更新插件的功能。
依賴於 Session 機制,Fluent API 爲開發者提供了可以經過鏈式調用的方式發送消息的功能。
經過Fluent API 的操做方法,開發者能夠相似於數據庫事務同樣,在多個對象中拼裝消息內容,而在最終決定是否發送消息。
框架提供了一套基於 WPF 的統一設置中心,開發者可使用此設置中心來製做本身的應用設置界面。
固然開發者能夠徹底擴展出本身的設置中心。
開發者能夠經過 IMahuaApi
調用框架提供的API,經過這些API可以實現大部分的業務需求。
但因爲不一樣平臺的支持程度不一樣,所以實現上存在差別。但開發者能夠經過擴展 IMahuaApi
的實現,進一步達到本身的需求。
而且,框架也提供了各平臺原生的API。
不能。
免費。
升級到 Powershell 5。http://www.javashuo.com/article/p-fsnqtlmo-mv.html
因爲 Session 機制的存在,直接調用注入事件的IMahuaApi
執行是必然失敗的。所以,須要在異步代碼中可以開啓新的 Session 纔可以正常使用接口。
示例以下:
// 異步發送消息,不能使用 _mahuaApi 實例,須要另外開啓Session Task.Factory.StartNew(() => { using (var robotSession = MahuaRobotManager.Instance.CreateSession()) { var api = robotSession.MahuaApi; api.SendPrivateMessage(context.FromQq, "異步的嚶嚶嚶"); } });
IMahuaApi
中提供瞭解析成模型的API接口。字符串自己如何解析能夠參考對應平臺的易語言SDK。
看IMahuaApi
。
看IMahuaApi
。
看IMahuaApi
。
不能。
沒有。
能。點擊右側連接,信仰充值:https://gitee.com/yks/Newbe.Mahua.Framework#project-donate-overview
【開源訪談】對接 QQ 機器人平臺,對接共同成長的開源社區(開源中國採訪)
Newbe.Mahua.Samples.ApiExtensions 對IMahuaApi進行擴展
Newbe.Mahua.Samples.LiveGirl 操做定時任務
Newbe.Mahua.Samples.Sqlite SQLite操做實例