Class: TelegramChannelAdapter
Defined in: packages/agentos/src/channels/adapters/TelegramChannelAdapter.ts:67
Channel adapter for Telegram using the Telegraf SDK.
Uses dynamic import so telegraf is only required at runtime when the
adapter is actually initialized. Falls back to grammy if telegraf
is not available.
Capabilities: text, rich_text, images, video, audio, voice_notes, stickers, reactions, buttons, inline_keyboard, group_chat, channels, editing, deletion.
Extends
Constructors
Constructor
new TelegramChannelAdapter(
retryConfig?):TelegramChannelAdapter
Defined in: packages/agentos/src/channels/adapters/BaseChannelAdapter.ts:111
Parameters
retryConfig?
Partial<RetryConfig>
Returns
TelegramChannelAdapter
Inherited from
BaseChannelAdapter.constructor
Properties
auth
protectedauth:ChannelAuthConfig&object|undefined
Defined in: packages/agentos/src/channels/adapters/BaseChannelAdapter.ts:97
Stored auth config so reconnect() can re-use it.
Inherited from
capabilities
readonlycapabilities: readonlyChannelCapability[]
Defined in: packages/agentos/src/channels/adapters/TelegramChannelAdapter.ts:70
Declared capabilities of this adapter.
Overrides
BaseChannelAdapter.capabilities
connectedSince
protectedconnectedSince:string|undefined
Defined in: packages/agentos/src/channels/adapters/BaseChannelAdapter.ts:92
Inherited from
BaseChannelAdapter.connectedSince
displayName
readonlydisplayName:"Telegram"='Telegram'
Defined in: packages/agentos/src/channels/adapters/TelegramChannelAdapter.ts:69
Human-readable display name (e.g., "WhatsApp Business").
Overrides
BaseChannelAdapter.displayName
errorMessage
protectederrorMessage:string|undefined
Defined in: packages/agentos/src/channels/adapters/BaseChannelAdapter.ts:93
Inherited from
BaseChannelAdapter.errorMessage
platform
readonlyplatform:ChannelPlatform='telegram'
Defined in: packages/agentos/src/channels/adapters/TelegramChannelAdapter.ts:68
Platform this adapter serves.
Overrides
platformInfo
protectedplatformInfo:Record<string,unknown> ={}
Defined in: packages/agentos/src/channels/adapters/BaseChannelAdapter.ts:94
Inherited from
BaseChannelAdapter.platformInfo
retryConfig
protectedreadonlyretryConfig:RetryConfig
Defined in: packages/agentos/src/channels/adapters/BaseChannelAdapter.ts:101
Inherited from
BaseChannelAdapter.retryConfig
status
protectedstatus:ChannelConnectionStatus='disconnected'
Defined in: packages/agentos/src/channels/adapters/BaseChannelAdapter.ts:91
Inherited from
Methods
addReaction()
addReaction(
conversationId,messageId,emoji):Promise<void>
Defined in: packages/agentos/src/channels/adapters/TelegramChannelAdapter.ts:281
Parameters
conversationId
string
messageId
string
emoji
string
Returns
Promise<void>
deleteMessage()
deleteMessage(
conversationId,messageId):Promise<void>
Defined in: packages/agentos/src/channels/adapters/TelegramChannelAdapter.ts:271
Parameters
conversationId
string
messageId
string
Returns
Promise<void>
doConnect()
protecteddoConnect(auth):Promise<void>
Defined in: packages/agentos/src/channels/adapters/TelegramChannelAdapter.ts:104
Establish the platform connection using the supplied credentials.
Called by initialize after state has been set to connecting.
Must throw on failure — the base class handles retry and state changes.
Parameters
auth
ChannelAuthConfig & object
Returns
Promise<void>
Overrides
doSendMessage()
protecteddoSendMessage(conversationId,content):Promise<ChannelSendResult>
Defined in: packages/agentos/src/channels/adapters/TelegramChannelAdapter.ts:193
Deliver a message to the external platform.
Called by sendMessage only when the adapter is connected.
Parameters
conversationId
string
content
Returns
Promise<ChannelSendResult>
Overrides
BaseChannelAdapter.doSendMessage
doShutdown()
protecteddoShutdown():Promise<void>
Defined in: packages/agentos/src/channels/adapters/TelegramChannelAdapter.ts:233
Release platform resources (close WebSocket, stop polling, etc.).
Called by shutdown before the state transitions to disconnected.
Returns
Promise<void>
Overrides
editMessage()
editMessage(
conversationId,messageId,content):Promise<void>
Defined in: packages/agentos/src/channels/adapters/TelegramChannelAdapter.ts:251
Parameters
conversationId
string
messageId
string
content
Returns
Promise<void>
emit()
protectedemit(event):void
Defined in: packages/agentos/src/channels/adapters/BaseChannelAdapter.ts:265
Emit an event to all matching subscribers. Subclasses call this when the platform SDK receives an inbound event.
Parameters
event
Returns
void
Inherited from
emitConnectionChange()
protectedemitConnectionChange():void
Defined in: packages/agentos/src/channels/adapters/BaseChannelAdapter.ts:296
Convenience helper: emit a connection_change event with the current
status. Called automatically by setStatus.
Returns
void
Inherited from
BaseChannelAdapter.emitConnectionChange
getConnectionInfo()
getConnectionInfo():
ChannelConnectionInfo
Defined in: packages/agentos/src/channels/adapters/BaseChannelAdapter.ts:205
Get the current connection status and metadata.
Returns
Inherited from
BaseChannelAdapter.getConnectionInfo
hasCapability()
protectedhasCapability(cap):boolean
Defined in: packages/agentos/src/channels/adapters/BaseChannelAdapter.ts:312
Check whether this adapter declares a specific capability.
Parameters
cap
Returns
boolean
Inherited from
BaseChannelAdapter.hasCapability
initialize()
initialize(
auth):Promise<void>
Defined in: packages/agentos/src/channels/adapters/BaseChannelAdapter.ts:151
Initialize the adapter with auth credentials. If already connected this will shut down the existing connection first (idempotent).
Parameters
auth
Returns
Promise<void>
Inherited from
on()
on(
handler,eventTypes?): () =>void
Defined in: packages/agentos/src/channels/adapters/BaseChannelAdapter.ts:248
Register an event handler. Returns an unsubscribe function.
Parameters
handler
eventTypes?
Returns
():
void
Returns
void
Inherited from
reconnect()
reconnect():
Promise<void>
Defined in: packages/agentos/src/channels/adapters/BaseChannelAdapter.ts:186
Manually trigger a reconnection attempt using stored credentials. Useful for UI-driven "reconnect" buttons.
Returns
Promise<void>
Inherited from
sendMessage()
sendMessage(
conversationId,content):Promise<ChannelSendResult>
Defined in: packages/agentos/src/channels/adapters/BaseChannelAdapter.ts:218
Send a message to a conversation on the external platform.
Parameters
conversationId
string
Platform-native conversation/chat ID.
content
Message content to send.
Returns
Promise<ChannelSendResult>
The platform-assigned message ID.
Inherited from
BaseChannelAdapter.sendMessage
sendTypingIndicator()
sendTypingIndicator(
conversationId,_isTyping):Promise<void>
Defined in: packages/agentos/src/channels/adapters/TelegramChannelAdapter.ts:298
Default stub — platforms that support typing indicators should override.
Parameters
conversationId
string
_isTyping
boolean
Returns
Promise<void>
Overrides
BaseChannelAdapter.sendTypingIndicator
setStatus()
protectedsetStatus(newStatus,error?):void
Defined in: packages/agentos/src/channels/adapters/BaseChannelAdapter.ts:319
Transition to a new connection status and emit an event.
Parameters
newStatus
error?
string
Returns
void
Inherited from
shutdown()
shutdown():
Promise<void>
Defined in: packages/agentos/src/channels/adapters/BaseChannelAdapter.ts:166
Gracefully shut down the adapter and release all resources.
Returns
Promise<void>