Skip to content

GramIO API Reference / @gramio/contexts/dist / ChatActionMixin

Class: ChatActionMixin<Bot>

Defined in: contexts/index.d.ts:5260

Main base context

Extends

Extended by

Type Parameters

Type Parameter
Bot extends BotLike

Constructors

Constructor

new ChatActionMixin<Bot>(): ChatActionMixin<Bot>

Returns

ChatActionMixin<Bot>

Inherited from

Context.constructor

Properties

PropertyModifierTypeInherited fromDefined in
botpublicBotContext.botcontexts/index.d.ts:4726
isTopicMessagepublic() => booleanSendMixin.isTopicMessagecontexts/index.d.ts:4863
update?publicTelegramUpdateContext.updatecontexts/index.d.ts:4728
updateId?publicnumberContext.updateIdcontexts/index.d.ts:4727
updateTypeprotectedUpdateNameContext.updateTypecontexts/index.d.ts:4729

Accessors

[toStringTag]

Get Signature

get [toStringTag](): string

Defined in: contexts/index.d.ts:4732

MDN

Returns

string

Inherited from

Context.[toStringTag]


businessConnectionId

Get Signature

get businessConnectionId(): string

Defined in: contexts/index.d.ts:4860

Returns

string

Inherited from

SendMixin.businessConnectionId


chatId

Get Signature

get chatId(): number

Defined in: contexts/index.d.ts:4859

Returns

number

Inherited from

SendMixin.chatId


senderId

Get Signature

get senderId(): number

Defined in: contexts/index.d.ts:4861

Returns

number

Inherited from

SendMixin.senderId


threadId

Get Signature

get threadId(): number

Defined in: contexts/index.d.ts:4862

Returns

number

Inherited from

SendMixin.threadId

Methods

createActionController()

createActionController(action, params?): ChatActionController<Bot>

Defined in: contexts/index.d.ts:5262

Parameters

ParameterType
actionSendChatActionAction
params?Pick<SendChatActionParams, "business_connection_id" | "message_thread_id"> & object & CreateActionControllerParams

Returns

ChatActionController<Bot>

Deprecated

Creates a controller that when start()ed executes sendChatAction(action) every interval milliseconds until stop()ped


getChatBoosts()

getChatBoosts(userId): Promise<TelegramUserChatBoosts>

Defined in: contexts/index.d.ts:4938

Returns chat boosts by the user

Parameters

ParameterType
userIdnumber

Returns

Promise<TelegramUserChatBoosts>

Inherited from

SendMixin.getChatBoosts


is()

is<T>(rawTypes): this is InstanceType<ContextsMapping<Bot>[T]> & Bot["__Derives"]["global"] & Bot["__Derives"][T] & (Bot["__Derives"] extends {} ? Bot["__Derives"]["global"] & Bot["__Derives"][T] : {})

Defined in: contexts/index.d.ts:4735

Type Parameters

Type Parameter
T extends UpdateName

Parameters

ParameterType
rawTypesMaybeArray<SoftString<T>>

Returns

this is InstanceType<ContextsMapping<Bot>[T]> & Bot["__Derives"]["global"] & Bot["__Derives"][T] & (Bot["__Derives"] extends {} ? Bot["__Derives"]["global"] & Bot["__Derives"][T] : {})

Inherited from

Context.is


send()

send(text, params?): Promise<MessageContext<Bot>>

Defined in: contexts/index.d.ts:4868

Sends message to current chat

Parameters

ParameterType
textstring | { toString: string; }
params?Optional<SendMessageParams, "text" | "chat_id">

Returns

Promise<MessageContext<Bot>>

Inherited from

SendMixin.send


sendAnimation()

sendAnimation(animation, params?): Promise<MessageContext<Bot>>

Defined in: contexts/index.d.ts:4878

Sends animation to current chat

Parameters

ParameterType
animationstring | Blob
params?Optional<SendAnimationParams, "animation" | "chat_id">

Returns

Promise<MessageContext<Bot>>

Inherited from

SendMixin.sendAnimation


sendAudio()

sendAudio(audio, params?): Promise<MessageContext<Bot>>

Defined in: contexts/index.d.ts:4874

Sends audio to current chat

Parameters

ParameterType
audiostring | Blob
params?Optional<SendAudioParams, "audio" | "chat_id">

Returns

Promise<MessageContext<Bot>>

Inherited from

SendMixin.sendAudio


sendChatAction()

sendChatAction(action, params?): Promise<true>

Defined in: contexts/index.d.ts:4902

Sends chat action to current chat

Parameters

ParameterType
actionSendChatActionAction
params?Optional<SendChatActionParams, "chat_id" | "action">

Returns

Promise<true>

Inherited from

SendMixin.sendChatAction


sendChecklist()

sendChecklist(params): Promise<MessageContext<Bot>>

Defined in: contexts/index.d.ts:4894

Sends checklist to current chat

Parameters

ParameterType
paramsOptional<SendChecklistParams, "chat_id">

Returns

Promise<MessageContext<Bot>>

Inherited from

SendMixin.sendChecklist


sendContact()

sendContact(params): Promise<MessageContext<Bot>>

Defined in: contexts/index.d.ts:4890

Sends contact to current chat

Parameters

ParameterType
paramsOptional<SendContactParams, "chat_id">

Returns

Promise<MessageContext<Bot>>

Inherited from

SendMixin.sendContact


sendDice()

sendDice(emoji, params?): Promise<MessageContext<Bot>>

Defined in: contexts/index.d.ts:4904

Sends dice

Parameters

ParameterType
emojiSendDiceEmoji
params?Partial<SendDiceParams>

Returns

Promise<MessageContext<Bot>>

Inherited from

SendMixin.sendDice


sendDocument()

sendDocument(document, params?): Promise<MessageContext<Bot>>

Defined in: contexts/index.d.ts:4872

Sends document to current chat

Parameters

ParameterType
documentstring | Blob
params?Optional<SendDocumentParams, "document" | "chat_id">

Returns

Promise<MessageContext<Bot>>

Inherited from

SendMixin.sendDocument


sendInvoice()

sendInvoice(params): Promise<MessageContext<Bot>>

Defined in: contexts/index.d.ts:4886

Sends invoice to current user

Parameters

ParameterType
paramsOptional<SendInvoiceParams, "chat_id">

Returns

Promise<MessageContext<Bot>>

Inherited from

SendMixin.sendInvoice


sendLocation()

sendLocation(latitude, longitude, params?): Promise<MessageContext<Bot>>

Defined in: contexts/index.d.ts:4884

Sends location to current chat

Parameters

ParameterType
latitudenumber
longitudenumber
params?Optional<SendLocationParams, "chat_id" | "latitude" | "longitude">

Returns

Promise<MessageContext<Bot>>

Inherited from

SendMixin.sendLocation


sendMedia()

sendMedia<T>(query): ReturnType<T extends "animation" ? (animation, params?) => Promise<MessageContext<Bot>> : T extends "audio" ? (audio, params?) => Promise<MessageContext<Bot>> : T extends "document" ? (document, params?) => Promise<MessageContext<Bot>> : T extends "photo" ? (photo, params?) => Promise<MessageContext<Bot>> : T extends "sticker" ? (sticker, params?) => Promise<MessageContext<Bot>> : T extends "video_note" ? (videoNote, params?) => Promise<MessageContext<Bot>> : T extends "video" ? (video, params?) => Promise<MessageContext<...>> : T extends "voice" ? (voice, params?) => Promise<...> : () => never>

Defined in: contexts/index.d.ts:4921

Automatically uses correct media method to send media

Type Parameters

Type Parameter
T extends string

Parameters

ParameterType
queryobject & tSendMethods

Returns

ReturnType<T extends "animation" ? (animation, params?) => Promise<MessageContext<Bot>> : T extends "audio" ? (audio, params?) => Promise<MessageContext<Bot>> : T extends "document" ? (document, params?) => Promise<MessageContext<Bot>> : T extends "photo" ? (photo, params?) => Promise<MessageContext<Bot>> : T extends "sticker" ? (sticker, params?) => Promise<MessageContext<Bot>> : T extends "video_note" ? (videoNote, params?) => Promise<MessageContext<Bot>> : T extends "video" ? (video, params?) => Promise<MessageContext<...>> : T extends "voice" ? (voice, params?) => Promise<...> : () => never>

Example

js
context.sendMedia({
  type: 'photo',
  photo: MediaUpload.path('./image.png'),
  caption: 'good image yes yes'
})

Inherited from

SendMixin.sendMedia


sendMediaGroup()

sendMediaGroup(mediaGroup, params?): Promise<MessageContext<Bot>[]>

Defined in: contexts/index.d.ts:4908

Sends media group to current chat

Parameters

ParameterType
mediaGroup(TelegramInputMediaAudio | TelegramInputMediaDocument | TelegramInputMediaPhoto | TelegramInputMediaVideo)[]
params?Optional<SendMediaGroupParams, "chat_id" | "media">

Returns

Promise<MessageContext<Bot>[]>

Inherited from

SendMixin.sendMediaGroup


sendMessageDraft()

sendMessageDraft(params): Promise<true>

Defined in: contexts/index.d.ts:4900

Sends a message draft to the current private chat

Parameters

ParameterType
paramsOptional<SendMessageDraftParams, "chat_id">

Returns

Promise<true>

Inherited from

SendMixin.sendMessageDraft


sendPaidMedia()

sendPaidMedia(paidMedia, starCount, params?): Promise<MessageContext<Bot>>

Defined in: contexts/index.d.ts:4906

Sends paid media to current chat

Parameters

ParameterType
paidMediaTelegramInputPaidMedia[]
starCountnumber
params?Optional<SendPaidMediaParams, "chat_id" | "media" | "star_count">

Returns

Promise<MessageContext<Bot>>

Inherited from

SendMixin.sendPaidMedia


sendPhoto()

sendPhoto(photo, params?): Promise<MessageContext<Bot>>

Defined in: contexts/index.d.ts:4870

Sends photo to current chat

Parameters

ParameterType
photostring | Blob
params?Optional<SendPhotoParams, "photo" | "chat_id">

Returns

Promise<MessageContext<Bot>>

Inherited from

SendMixin.sendPhoto


sendPoll()

sendPoll(params): Promise<MessageContext<Bot>>

Defined in: contexts/index.d.ts:4892

Sends poll to current chat

Parameters

ParameterType
paramsOptional<SendPollParams, "chat_id">

Returns

Promise<MessageContext<Bot>>

Inherited from

SendMixin.sendPoll


sendSticker()

sendSticker(sticker, params?): Promise<MessageContext<Bot>>

Defined in: contexts/index.d.ts:4896

Sends sticker

Parameters

ParameterType
stickerstring | Blob
params?Optional<SendStickerParams, "sticker" | "chat_id">

Returns

Promise<MessageContext<Bot>>

Inherited from

SendMixin.sendSticker


sendVenue()

sendVenue(params): Promise<MessageContext<Bot>>

Defined in: contexts/index.d.ts:4888

Sends venue to current chat

Parameters

ParameterType
paramsOptional<SendVenueParams, "chat_id">

Returns

Promise<MessageContext<Bot>>

Inherited from

SendMixin.sendVenue


sendVideo()

sendVideo(video, params?): Promise<MessageContext<Bot>>

Defined in: contexts/index.d.ts:4876

Sends video to current chat

Parameters

ParameterType
videostring | Blob
params?Optional<SendVideoParams, "video" | "chat_id">

Returns

Promise<MessageContext<Bot>>

Inherited from

SendMixin.sendVideo


sendVideoNote()

sendVideoNote(videoNote, params?): Promise<MessageContext<Bot>>

Defined in: contexts/index.d.ts:4880

Sends video note to current chat

Parameters

ParameterType
videoNotestring | Blob
params?Optional<SendVideoNoteParams, "video_note" | "chat_id">

Returns

Promise<MessageContext<Bot>>

Inherited from

SendMixin.sendVideoNote


sendVoice()

sendVoice(voice, params?): Promise<MessageContext<Bot>>

Defined in: contexts/index.d.ts:4882

Sends voice to current chat

Parameters

ParameterType
voicestring | Blob
params?Optional<SendVoiceParams, "voice" | "chat_id">

Returns

Promise<MessageContext<Bot>>

Inherited from

SendMixin.sendVoice


stopPoll()

stopPoll(messageId, params?): Promise<Poll>

Defined in: contexts/index.d.ts:4898

Stops poll in current chat

Parameters

ParameterType
messageIdnumber
params?Partial<StopPollParams>

Returns

Promise<Poll>

Inherited from

SendMixin.stopPoll


streamMessage()

streamMessage(stream, options?): Promise<MessageContext<Bot>[]>

Defined in: contexts/index.d.ts:4936

Streams message drafts to the current chat, finalizing each completed draft as a sent message.

Accepts an Iterable or AsyncIterable of MessageDraftPiece (strings or objects with text+entities). Uses sendMessageDraft for live typing previews and sendMessage to finalize each 4096-char segment. Returns an array of sent MessageContext objects.

Parameters

ParameterType
streamIterable<MessageDraftPiece, any, any> | AsyncIterable<MessageDraftPiece, any, any>
options?StreamMessageOptions

Returns

Promise<MessageContext<Bot>[]>

Example

ts
// Stream from an async generator (e.g., LLM output)
const messages = await context.streamMessage(llmStream);

Inherited from

SendMixin.streamMessage