2010-02-03 4 views
4

전자 제품 제조업체와 협력하여 LAN 기반 제어 시스템을 제품에 내장하고 있습니다. 이 아이디어는 웹 브라우저를 통해 시스템 구성/제어 인터페이스를 제공하여 클라이언트가 소프트웨어를 설치할 필요가 없도록하는 것입니다. 우리는 임베디드 모듈을 통해 직렬 데이터를 송수신함으로써 어플라이언스와 통신 할 수 있습니다. 어플라이언스는 전면 패널 UI에서도 제어 할 수 있기 때문에 원격 웹 인터페이스를 매우 낮은 대기 시간과 동기화 된 상태로 유지하는 데 어려움이 있습니다. 웹 소켓이나 Push와 같은 것 같습니다. 서버에서 클라이언트까지 실시간 이벤트를 처리하는 데 필요한 것입니다.임베디드 디바이스 서버에 웹 소켓을 구현하는 방법은 무엇입니까?

저는 Lantronix Mathport AR 내장 장치 서버를 사용하고 있습니다. 상자 밖에서 유닛은 모든 사용자 정의 HTML 및 java 서블릿/애플릿을 제공합니다. 유연성이 더 필요하다면 경량 Linux 배포판을 설치할 수있는 옵션이 있습니다. 장치가 표준 아파치를 실행하지 않기 때문에 어떤 서버 측 응용 프로그램을 구현하는 방법을 모르겠습니다. 보아를 사용하고 있다고 생각합니다.

아무도 나를 어떻게 안내 할 수 있습니까?

답변

2

몇 가지 일반 정보 ... WebSocket 프로토콜 (draft spec here)은 TCP 위에 단순한 계층입니다. 즉, 플랫폼에 TCP 서버가 이미있는 경우 WebSocket을 구현하는 데는 몇 시간 밖에 걸리지 않습니다. 프로토콜은 핸드 셰이크와 데이터 프레임을 전송하는 두 가지 방법을 지정합니다.

39 페이지 사양을 읽는 것이 좋습니다.

1

Tihauan이 이미 언급했듯이, 스펙을 읽으면서 시작하고, 웹 소켓이 1 년 전보다 안정적이기는하지만 여전히 몇 가지 변화가 있음을 주목하십시오.

요점은 websocket 데이터가 JSON 기반 메시지 정의에 잘 어울리는 UTF-8 텍스트라는 요구 사항이었습니다.

우리의 시스템은 임베디드 리눅스의 양식을 사용하기 때문에 우리는 추가 다음과 같은 라이브러리를 사용했다 :에서 http://git.warmcat.com/cgi-bin/cgit/libwebsockets/

  • "얀손": http://www.digip.org/jansson/
    • "libwebsockets"에서를

    위의 지원 라이브러리를 사용하여 우리의 다른 소프트웨어 모듈이 특정, 적용 가능한 websocket에 등록 할 수있게 해주는 내부 가벼운 "클라이언트/서버"를 만들었습니다 메시지를 읽고 필요에 따라 응답하십시오. 잘됐다.

    행운과 안녕하십니까,

    +0

    클라이언트 응용 프로그램에 몇 가지 예제 코드를 제공해 주시겠습니까? –