feat(telegram): support sending audio as native voice notes via asVoice param in message tool

This commit is contained in:
Muhammed Mukhthar CM
2026-01-17 11:32:16 +00:00
committed by Peter Steinberger
parent f6456c2883
commit f2a0e8e5bb
3 changed files with 4 additions and 0 deletions

View File

@@ -39,6 +39,7 @@ function buildSendSchema(options: { includeButtons: boolean }) {
media: Type.Optional(Type.String()), media: Type.Optional(Type.String()),
replyTo: Type.Optional(Type.String()), replyTo: Type.Optional(Type.String()),
threadId: Type.Optional(Type.String()), threadId: Type.Optional(Type.String()),
asVoice: Type.Optional(Type.Boolean()),
bestEffort: Type.Optional(Type.Boolean()), bestEffort: Type.Optional(Type.Boolean()),
gifPlayback: Type.Optional(Type.Boolean()), gifPlayback: Type.Optional(Type.Boolean()),
buttons: Type.Optional( buttons: Type.Optional(

View File

@@ -175,6 +175,7 @@ export async function handleTelegramAction(
buttons, buttons,
replyToMessageId: replyToMessageId ?? undefined, replyToMessageId: replyToMessageId ?? undefined,
messageThreadId: messageThreadId ?? undefined, messageThreadId: messageThreadId ?? undefined,
asVoice: typeof params.asVoice === "boolean" ? params.asVoice : undefined,
}); });
return jsonResult({ return jsonResult({
ok: true, ok: true,

View File

@@ -50,6 +50,7 @@ export const telegramMessageActions: ChannelMessageActionAdapter = {
const replyTo = readStringParam(params, "replyTo"); const replyTo = readStringParam(params, "replyTo");
const threadId = readStringParam(params, "threadId"); const threadId = readStringParam(params, "threadId");
const buttons = params.buttons; const buttons = params.buttons;
const asVoice = typeof params.asVoice === "boolean" ? params.asVoice : undefined;
return await handleTelegramAction( return await handleTelegramAction(
{ {
action: "sendMessage", action: "sendMessage",
@@ -60,6 +61,7 @@ export const telegramMessageActions: ChannelMessageActionAdapter = {
messageThreadId: threadId ?? undefined, messageThreadId: threadId ?? undefined,
accountId: accountId ?? undefined, accountId: accountId ?? undefined,
buttons, buttons,
asVoice,
}, },
cfg, cfg,
); );