서버 실행
IOSignal 서버는 클라이언트 사이의 채널 발행·구독과 CID 직접 통신을 중계합니다. 브라우저·Node.js는 WebSocket(port), Arduino·IOCongSocket은 TCP(congPort)로 연결합니다. 앱에 서버를 넣으려면 Node.js 코드로, 코드 없이 바로 실행하려면 CLI로 시작하세요. Node.js 22.16.0 이상이 필요합니다.
- Node.js 코드
- CLI
mkdir iosignal-server
cd iosignal-server
npm init -y
npm install iosignal
server.mjs을 작성합니다.
import { Server, version } from 'iosignal';
const server = new Server({ port: 7777 });
server.on('ready', () => console.log(`iosignal ${version}: ws://localhost:7777`));
node server.mjs로 실행합니다. Arduino 등 CongSocket 클라이언트도 연결하려면 new Server({ port: 7777, congPort: 8888 })처럼 두 포트를 지정합니다. 기존 HTTP 서버와 WebSocket 경로를 공유할 때에는 httpServer와 wsPath를 사용합니다. 생성 옵션과 서비스 등록은 서버 API에 정리했습니다.
npm install -g iosignal-cli
io-server -l 7777 # WebSocket 서버
io-server -l 7777 -L 8888 # WebSocket과 CongSocket(TCP) 함께 사용
-l 또는 -L 중 하나 이상을 지정해야 합니다. 서버는 Ctrl+C로 종료합니다. 인증·Redis·로그 옵션은 CLI 서버 옵션을 참고하세요.
전달 확인
별도 터미널에서 빠른 시작의 수신자와 송신자를 실행해 전달을 확인하세요.
운영 전에 확인할 것
- 다른 기기에서 접속하려면 연결 환경과 서버 주소에서 주소·포트·방화벽을 맞춥니다.
- HTTPS 페이지에서 쓰려면 TLS가 적용된
wss://를 준비합니다. - 외부에 제공하기 전 서버 인증 설정을 확인하세요.
프로토콜의 차이는 WebSocket·MQTT·Socket.IO 비교를 참고하세요.