命令行执行插件客户端、服务器均支持

WSCommandLinePlugin命令行执行插件,是用于WebSocket的快捷事务实现,让WS在Text文本中,用最简单的文字消息即可完成相关事务的执行。该类是抽象类,必须通过继承,在继承类中,声明的具的公共的且名称以Command结尾的方法,均可被快捷执行。

例如:下列插件,即可被普通WS客户端,或服务器便捷调用。

调用数据格式:
Add 10 20支持Json数据格式

  1. var service = new HttpService();
  2. service.AddPlugin<WebSocketServerPlugin>().//添加WebSocket功能
  3. SetTimeout(10 * 1000).
  4. SetWSUrl("/ws");
  5. service.AddPlugin<MyWSCommandLinePlugin>();//添加WS命令行事务。
  6. var config = new RRQMConfig();
  7. config.UsePlugin()
  8. .SetReceiveType(ReceiveType.Auto)
  9. .SetListenIPHosts(new IPHost[] { new IPHost(7789) });
  10. service.Setup(config).Start();
  11. Console.WriteLine("Http服务器已启动");
  12. Console.WriteLine("WS访问:ws://127.0.0.1:7789/ws");
  1. /// <summary>
  2. /// 命令行插件。
  3. /// 声明的方法必须以"Command"结尾,支持json字符串,参数之间空格隔开。
  4. /// </summary>
  5. class MyWSCommandLinePlugin : WSCommandLinePlugin
  6. {
  7. public int AddCommand(int a, int b)
  8. {
  9. return a + b;
  10. }
  11. public SumClass SumCommand(SumClass sumClass)
  12. {
  13. sumClass.Sum = sumClass.A + sumClass.B;
  14. return sumClass;
  15. }
  16. }
  17. class SumClass
  18. {
  19. public int A { get; set; }
  20. public int B { get; set; }
  21. public int Sum { get; set; }
  22. }