diff --git a/assets/openapi.json b/assets/openapi.json index cb36dd630..a6ccabe49 100644 Binary files a/assets/openapi.json and b/assets/openapi.json differ diff --git a/assets/schemas.json b/assets/schemas.json index de6311a5e..c1f47bce3 100644 Binary files a/assets/schemas.json and b/assets/schemas.json differ diff --git a/src/api/util/handlers/Message.ts b/src/api/util/handlers/Message.ts index 212049921..3b2fda51a 100644 --- a/src/api/util/handlers/Message.ts +++ b/src/api/util/handlers/Message.ts @@ -490,6 +490,12 @@ export async function handleMessage(opts: MessageOptions): Promise { message.poll.expiry = new Date(Date.now() + opts.poll.duration * 3600000); } + if (message.poll && opts.poll?.answers) { + for (let i = 0; i < opts.poll.answers.length; i++) { + message.poll.answers[i].answer_id = i; + } + } + await handleMessageMentionsAsync(message); const attachmentIndices = new Map(message.attachments?.map((attachment, index) => [`attachment://${attachment.filename}`, index])); diff --git a/src/schemas/api/messages/Polls.ts b/src/schemas/api/messages/Polls.ts index 85fe69b32..bd6555613 100644 --- a/src/schemas/api/messages/Polls.ts +++ b/src/schemas/api/messages/Polls.ts @@ -32,7 +32,7 @@ export interface PollMedia { } export interface PollAnswer { - answer_id?: string; + answer_id?: number; poll_media: PollMedia; }