日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

京东价格监控软件开发技术探讨十五:通过酷Q和ZeroMQ实现推送变价变库消息到QQ群

發布時間:2023/12/20 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 京东价格监控软件开发技术探讨十五:通过酷Q和ZeroMQ实现推送变价变库消息到QQ群 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在對該需求展開進行說明前,我們需要先了解幾個基本名詞。

1、酷Q是什么?

簡單來說,酷Q是一個QQ機器人軟件,能在QQ群里回答、發布信息。相關的機器人軟件比較多,如QQLight、

2、ZeroMQ是什么?

簡單來說,ZeroMQ是一個網絡層的數據通信組件,支持TCP或UDP發送數據。具體到C#,有一個NetMQ的組件,簡單好用。

酷Q的使用就不多說了,可以加入酷Q官網或者相關技術群進行學習。

NetMQ的使用非常簡單,我們需要創建一個服務端和一個客戶端。服務端接收數據,客戶端發送數據。

第一步:引用兩個類庫,AsyncIO和NetMQ,可直接在NuGet下載。

第二步:創建服務端,通過While(true)保持監聽

using (NetMQSocket serverSocket = new ResponseSocket()) {serverSocket.Bind("tcp://127.0.0.1:5555");while (true){string message1 = serverSocket.ReceiveFrameString();Console.WriteLine("Receive message :\r\n{0}\r\n", message1);string[] msg = message1.Split(':');string message = msg[1];serverSocket.SendFrame(message);if (message == "exit"){break;}} }

第三步:創建客戶端

using (NetMQSocket clientSocket = new RequestSocket()){clientSocket.Connect("tcp://127.0.0.1:5555");string message = "Hello";clientSocket.SendFrame(num + ":" + message);string answer = clientSocket.ReceiveFrameString();Console.WriteLine("Answer from server:{0}", answer);}

?需要特別注意的是,客戶端必須接收服務端的回饋信息,否則會報異常。

上面三步就已經搭建起了基本的NetMQ通信框架。現在我們將這段代碼移植到酷Q插件中去。

在插件加載的事件中,將酷QAPI的對象存儲下來,然后創建一個NetMQHelper類,在該類的Push(方法名稱隨意)事件中,編寫如下代碼。

Task.Factory.StartNew(() =>{using (this.Socket = new ResponseSocket($"@tcp://{Common.NetMQSrv}:{Common.ZeroMqPort}")){BEnable = true;while (BEnable){//log.Info("ZeroMQ", "Execing");string msg = this.Socket.ReceiveFrameString();if (!string.IsNullOrEmpty(msg)){//log.Info("ZeroMQ", msg);File.AppendAllText($@"{Common.RunDirectory}/Logs/NetMQ.log", $"{DateTime.Now} 收到 {msg}\r\n");if (OnMessage != null){OnMessage(msg);}}Socket.SendFrame(msg);//Console.WriteLine("進行 線程" + Thread.CurrentThread.ManagedThreadId);}}}, TaskCreationOptions.LongRunning);

其中的OnMessage是一個代理事件,當通過NetMQ接收到數據后,可通過OnMessage和其它業務關聯起來進行業務處理,比如調用酷Q的群消息推送。

操作原理就是這樣了,趕緊去試試,不明白的可以加群一起討論。在此說明下,插件的開發是使用的Native.SDK開發框架,在網上搜搜,此處就略過不表。

殺京東 做最走心的電商輿情監控平臺 免費開源的價格監控軟件 歡迎加入QQ群415014949一起討論

總結

以上是生活随笔為你收集整理的京东价格监控软件开发技术探讨十五:通过酷Q和ZeroMQ实现推送变价变库消息到QQ群的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。