@egain/ai-agent-sdk API Reference - v0.1.1 / WebSocketTransport
Class: WebSocketTransport
WebSocket-based transport implementation.
This transport uses the native WebSocket API to establish bidirectional communication with the server.
Example
const transport = new WebSocketTransport({
endpoint: 'wss://api.example.com/ws'
});
transport.on('message', ({ data }) => {
console.log('Received:', data);
});
await transport.connect();
await transport.send({ text: 'Hello' });Hierarchy
↳
WebSocketTransport
Table of contents
Constructors
Methods
Constructors
constructor
• new WebSocketTransport(config): WebSocketTransport
Parameters
| Name | Type |
|---|---|
config | WebSocketTransportConfig |
Returns
Overrides
Defined in
core/connection/WebSocketTransport.ts:39
Methods
getType
▸ getType(): string
Get the transport type identifier
Returns
string
Overrides
Defined in
core/connection/WebSocketTransport.ts:47
isConnected
▸ isConnected(): boolean
Check if the WebSocket is currently connected
Returns
boolean
Overrides
Defined in
core/connection/WebSocketTransport.ts:54
connect
▸ connect(): Promise<void>
Establish the WebSocket connection
Returns
Promise<void>
Overrides
Defined in
core/connection/WebSocketTransport.ts:61
disconnect
▸ disconnect(): void
Close the WebSocket connection
Returns
void
Overrides
Defined in
core/connection/WebSocketTransport.ts:137
send
▸ send(data): Promise<void>
Send data through the WebSocket
Parameters
| Name | Type |
|---|---|
data | any |
Returns
Promise<void>
Overrides
Defined in
core/connection/WebSocketTransport.ts:150
on
▸ on<K>(event, handler): this
Register an event handler.
The handler will be called every time the event is emitted.
Type parameters
| Name | Type |
|---|---|
K | extends keyof TransportEvents |
Parameters
| Name | Type | Description |
|---|---|---|
event | K | The event name to listen for |
handler | EventHandler<TransportEvents[K]> | The function to call when the event is emitted |
Returns
this
this for method chaining
Example
agent.on("message", (event) => {
console.log("Received:", event.payload);
});Inherited from
Defined in
core/events/EventEmitter.ts:64
once
▸ once<K>(event, handler): this
Register a one-time event handler.
The handler will be called only once, then automatically removed.
Type parameters
| Name | Type |
|---|---|
K | extends keyof TransportEvents |
Parameters
| Name | Type | Description |
|---|---|---|
event | K | The event name to listen for |
handler | EventHandler<TransportEvents[K]> | The function to call when the event is emitted |
Returns
this
this for method chaining
Example
agent.once("connected", () => {
console.log("First connection established!");
});Inherited from
Defined in
core/events/EventEmitter.ts:88
off
▸ off<K>(event, handler?): this
Remove an event handler.
If no handler is specified, removes all handlers for the event.
Type parameters
| Name | Type |
|---|---|
K | extends keyof TransportEvents |
Parameters
| Name | Type | Description |
|---|---|---|
event | K | The event name |
handler? | EventHandler<TransportEvents[K]> | The specific handler to remove (optional) |
Returns
this
this for method chaining
Example
const handler = (event) => console.log(event);
agent.on("message", handler);
agent.off("message", handler);Example
agent.off("message");Inherited from
Defined in
core/events/EventEmitter.ts:117
removeAllListeners
▸ removeAllListeners<K>(event?): this
Remove all event handlers
Type parameters
| Name | Type |
|---|---|
K | extends keyof TransportEvents |
Parameters
| Name | Type |
|---|---|
event? | K |
Returns
this
Inherited from
Defined in
core/events/EventEmitter.ts:180
listenerCount
▸ listenerCount<K>(event): number
Get the number of listeners for an event
Type parameters
| Name | Type |
|---|---|
K | extends keyof TransportEvents |
Parameters
| Name | Type |
|---|---|
event | K |
Returns
number