@egain/ai-agent-sdk API Reference - v0.1.1 / Transport
Class: Transport
Abstract base class for transport implementations.
Any transport mechanism (WebSocket, SSE, HTTP polling, etc.) should extend this class and implement the abstract methods.
Example
class MyCustomTransport extends Transport {
async connect(): Promise<void> { ... }
disconnect(): void { ... }
async send(data: any): Promise<void> { ... }
isConnected(): boolean { ... }
}Hierarchy
↳
Transport
Table of contents
Constructors
Methods
Constructors
constructor
• new Transport(config): Transport
Parameters
| Name | Type |
|---|---|
config | TransportConfig |
Returns
Overrides
Defined in
core/connection/Transport.ts:73
Methods
connect
▸ connect(): Promise<void>
Establish the transport connection
Returns
Promise<void>
Defined in
core/connection/Transport.ts:83
disconnect
▸ disconnect(): void
Close the transport connection
Returns
void
Defined in
core/connection/Transport.ts:88
send
▸ send(data): Promise<void>
Send data through the transport
Parameters
| Name | Type | Description |
|---|---|---|
data | any | The data to send |
Returns
Promise<void>
Defined in
core/connection/Transport.ts:94
isConnected
▸ isConnected(): boolean
Check if the transport is currently connected
Returns
boolean
Defined in
core/connection/Transport.ts:99
getType
▸ getType(): string
Get the transport type identifier
Returns
string
Defined in
core/connection/Transport.ts:104
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
EventEmitter.removeAllListeners
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