본문으로 건너뛰기

서버 API와 옵션

기준: ServerserverOption, iosignal 5.2.x.

import { Server } from 'iosignal';

const server = new Server({ port: 7777 });
server.on('ready', () => console.log('연결 수신 준비'));

서버 생성 시 port(WebSocket), httpServer(기존 HTTP 서버), congPort(CongSocket) 중 하나 이상을 지정해야 합니다.

생성 옵션의미
portWebSocket 연결 포트. 브라우저와 Node.js IO 클라이언트가 사용합니다.
httpServer, wsPath기존 HTTP 서버에 WebSocket을 연결하고 경로를 지정합니다.
congPortCongSocket 연결 포트. Arduino와 해당 Node.js 클라이언트에 사용합니다.
timeout, monitorPeriod밀리초 단위의 연결·모니터링 설정. 생성자에서 1000ms 이상만 반영됩니다.
showMessage, showMetric메시지·지표 출력 설정.
membersOnly인증된 구성원만 허용하는 설정. 인증 공급자와 함께 구성하세요.

서버 서비스는 server.attach(name, service)로 등록합니다. 서비스에는 commands 배열과 checkPermission(remote, req) 함수가 필요하며, 명령별 메서드 또는 call(remote, req)를 구현합니다. 반환 응답과 권한 검사를 포함한 예제는 replyServiceattach 테스트를 참고하세요.

운영 시에는 WebSocket의 ws:/// wss:// 주소와 CongSocket 포트를 구분하고, 공개 서비스의 인증과 접근 정책을 명시하세요.