Skip to content

Class: SessionTransport ​

Defined in: src/realtime/transport.ts:85

Transport 계층 — 단일 업스트림 연결의 수명 관리.

공식 세션 API로 URL을 발급받아 연결하고, SYSTEM(connected)의 sessionKey에 "반응해" 구독을 호출한다 (고정 지연 대기 없음). 연결이 끊기면 새 세션 URL 재발급 → 재연결 → 재구독을 자동 복구한다 (sessionKey는 세션마다 새로 발급됨).

원시 이벤트는 파싱 없이 raw로 그대로 전달한다 — 정규화는 #16, 팬아웃은 #17의 책임. SYSTEM 메시지만 수명 관리 목적으로 내부 해석한다.

Extends ​

Constructors ​

Constructor ​

ts
new SessionTransport(options): SessionTransport;

Defined in: src/realtime/transport.ts:99

Parameters ​

options ​

SessionTransportOptions

Returns ​

SessionTransport

Overrides ​

TypedEmitter.constructor

Accessors ​

sessionKey ​

Get Signature ​

ts
get sessionKey(): string | null;

Defined in: src/realtime/transport.ts:113

현재 세션 식별자 (연결 전/끊김 상태면 null). 재연결 시 값이 바뀐다.

Returns ​

string | null


status ​

Get Signature ​

ts
get status(): "idle" | "running" | "closed";

Defined in: src/realtime/transport.ts:118

수명 상태. 'closed'는 close() 호출 또는 재연결 시도 소진을 뜻한다.

Returns ​

"idle" | "running" | "closed"

Methods ​

close() ​

ts
close(): void;

Defined in: src/realtime/transport.ts:141

정상 종료. 자동 복구를 멈추고 소켓을 닫는다.

Returns ​

void


off() ​

ts
off<K>(event, listener): void;

Defined in: src/realtime/emitter.ts:20

Type Parameters ​

K ​

K extends keyof TransportEvents

Parameters ​

event ​

K

listener ​

(...args) => void

Returns ​

void

Inherited from ​

TypedEmitter.off


on() ​

ts
on<K>(event, listener): () => void;

Defined in: src/realtime/emitter.ts:10

Type Parameters ​

K ​

K extends keyof TransportEvents

Parameters ​

event ​

K

listener ​

(...args) => void

Returns ​

() => void

Inherited from ​

TypedEmitter.on


start() ​

ts
start(): Promise<void>;

Defined in: src/realtime/transport.ts:127

연결 시작. 최초 연결+구독까지 완료되면 resolve한다. 최초 시도 실패는 그대로 throw (설정 오류를 감추지 않기 위해 재시도하지 않는다). 성공 이후의 끊김은 자동 복구된다.

Returns ​

Promise<void>


subscribe() ​

ts
subscribe(eventType): Promise<void>;

Defined in: src/realtime/transport.ts:155

이벤트 구독 추가. 연결 중이면 즉시 REST 호출하고, 이후 재연결 시에도 자동으로 다시 구독된다.

Parameters ​

eventType ​

"chat" | "donation" | "subscription"

Returns ​

Promise<void>


unsubscribe() ​

ts
unsubscribe(eventType): Promise<void>;

Defined in: src/realtime/transport.ts:163

이벤트 구독 해지. 재연결 시 자동 구독 목록에서도 제거된다.

Parameters ​

eventType ​

"chat" | "donation" | "subscription"

Returns ​

Promise<void>

공식 OPEN API만 지원 — 비공식 엔드포인트 0건