Embedded 如何在嵌入式设备服务器上实现WebSocket?

Embedded 如何在嵌入式设备服务器上实现WebSocket?,embedded,push,embedded-linux,websocket,embeddedwebserver,Embedded,Push,Embedded Linux,Websocket,Embeddedwebserver,我正在与一家电子设备制造商合作,将基于局域网的控制系统嵌入到产品中。其想法是通过web浏览器提供系统配置/控制界面,这样客户端就不需要安装软件。我们可以通过嵌入式模块发送和接收串行数据来与设备通信。由于该设备也可以通过前面板UI进行控制,因此它带来了一个挑战,即如何保持远程web界面与非常低的延迟同步。似乎WebSocket或某种推送是我们处理从服务器到客户端的实时事件所需要的 我使用的是Lantronix Mathar嵌入式设备服务器。开箱即用的单元将提供任何定制HTML和java servl

我正在与一家电子设备制造商合作,将基于局域网的控制系统嵌入到产品中。其想法是通过web浏览器提供系统配置/控制界面,这样客户端就不需要安装软件。我们可以通过嵌入式模块发送和接收串行数据来与设备通信。由于该设备也可以通过前面板UI进行控制,因此它带来了一个挑战,即如何保持远程web界面与非常低的延迟同步。似乎WebSocket或某种推送是我们处理从服务器到客户端的实时事件所需要的

我使用的是Lantronix Mathar嵌入式设备服务器。开箱即用的单元将提供任何定制HTML和java servlet/applet。如果需要更大的灵活性,我们可以选择安装轻量级Linux发行版。我不知道如何实现任何服务器端应用程序,因为该设备没有运行标准Apache。我相信这是在使用Boa


有谁能指导我如何做这件事的正确方向吗

一些一般信息……WebSocket协议()是TCP之上的一个简单层。这意味着,如果您的平台已经有了TCP服务器,那么实现WebSocket只需几个小时。协议规定了握手和两种发送数据帧的方式


我强烈建议您从阅读39页的规范开始。

正如Tihauan已经提到的那样,从阅读规范开始,并注意到仍有一些变化在进行中,尽管WebSocket现在比一年前更加稳定

对我来说,关键点是要求websocket数据完全是UTF-8文本,这非常适合基于JSON的消息定义

我们的系统使用嵌入式linux,因此我们添加并使用了以下库:

  • “libwebsockets”来自:
  • “jansson”来自:
使用上述作为支持库,我们创建了一个内部轻量级“客户机/服务器”,它允许我们的其他软件模块注册某些适用的websocket消息,并根据需要进行响应。工作得很好


祝你好运,并致以最良好的祝愿,

我有点晚了,但是Mozilla发布了一篇题为“编写WebSocket服务器”的指南,它可以指导你完成WebSocket服务器的编写

您需要已经知道HTTP是如何工作的,并且具有中级编程经验。根据语言支持,可能需要了解TCP套接字。本指南的范围是介绍编写WebSocket服务器所需的最低知识


您能分享一些客户端应用程序的示例代码吗?