AIDK API Reference / aidk-kernel / ChannelServiceInterface
Interface: ChannelServiceInterface ​
Defined in: packages/kernel/src/channel.ts:317
Kernel-level interface for channel service access. This allows KernelContext to reference channels without creating a circular dependency between kernel and engine packages.
Engine's ChannelService implements this interface.
Methods ​
getChannel() ​
getChannel(ctx: KernelContext, channelName: string): Channel;Defined in: packages/kernel/src/channel.ts:322
Get or create a channel within the current session. Session is determined from the provided context.
Parameters ​
| Parameter | Type |
|---|---|
ctx | KernelContext |
channelName | string |
Returns ​
publish() ​
publish(
ctx: KernelContext,
channelName: string,
event: Omit<ChannelEvent, "channel">): void;Defined in: packages/kernel/src/channel.ts:327
Publish an event to a channel.
Parameters ​
| Parameter | Type |
|---|---|
ctx | KernelContext |
channelName | string |
event | Omit<ChannelEvent, "channel"> |
Returns ​
void
subscribe() ​
subscribe(
ctx: KernelContext,
channelName: string,
handler: (event: ChannelEvent) => void): () => void;Defined in: packages/kernel/src/channel.ts:333
Subscribe to events on a channel.
Parameters ​
| Parameter | Type |
|---|---|
ctx | KernelContext |
channelName | string |
handler | (event: ChannelEvent) => void |
Returns ​
Unsubscribe function
(): void;Returns ​
void
waitForResponse() ​
waitForResponse(
ctx: KernelContext,
channelName: string,
requestId: string,
timeoutMs?: number): Promise<ChannelEvent>;Defined in: packages/kernel/src/channel.ts:342
Wait for a response on a channel (for bidirectional communication).
Parameters ​
| Parameter | Type |
|---|---|
ctx | KernelContext |
channelName | string |
requestId | string |
timeoutMs? | number |
Returns ​
Promise<ChannelEvent>