feat(client): deleteScheduledMessages method

This commit is contained in:
teidesu 2021-07-10 15:00:40 +03:00
parent ca1e5c9efa
commit 2f8b3472d1
2 changed files with 45 additions and 0 deletions

View file

@ -92,6 +92,7 @@ import { getPrimaryInviteLink } from './methods/invite-links/get-primary-invite-
import { revokeInviteLink } from './methods/invite-links/revoke-invite-link'
import { closePoll } from './methods/messages/close-poll'
import { deleteMessages } from './methods/messages/delete-messages'
import { deleteScheduledMessages } from './methods/messages/delete-scheduled-messages'
import { editInlineMessage } from './methods/messages/edit-inline-message'
import { editMessage } from './methods/messages/edit-message'
import { _findMessageInUpdate } from './methods/messages/find-in-update'
@ -1831,6 +1832,16 @@ export interface TelegramClient extends BaseTelegramClient {
ids: MaybeArray<number>,
revoke?: boolean
): Promise<void>
/**
* Delete scheduled messages.
*
* @param chatId Chat's marked ID, its username, phone or `"me"` or `"self"`.
* @param ids Message(s) ID(s) to delete.
*/
deleteScheduledMessages(
chatId: InputPeerLike,
ids: MaybeArray<number>
): Promise<void>
/**
* Edit sent inline message text, media and reply markup.
*
@ -3465,6 +3476,7 @@ export class TelegramClient extends BaseTelegramClient {
revokeInviteLink = revokeInviteLink
closePoll = closePoll
deleteMessages = deleteMessages
deleteScheduledMessages = deleteScheduledMessages
editInlineMessage = editInlineMessage
editMessage = editMessage
protected _findMessageInUpdate = _findMessageInUpdate

View file

@ -0,0 +1,33 @@
import { TelegramClient } from '../../client'
import { InputPeerLike } from '../../types'
import { MaybeArray } from '@mtcute/core'
import {
isInputPeerChannel,
normalizeToInputChannel,
} from '../../utils/peer-utils'
import { createDummyUpdate } from '../../utils/updates-utils'
/**
* Delete scheduled messages.
*
* @param chatId Chat's marked ID, its username, phone or `"me"` or `"self"`.
* @param ids Message(s) ID(s) to delete.
* @internal
*/
export async function deleteScheduledMessages(
this: TelegramClient,
chatId: InputPeerLike,
ids: MaybeArray<number>,
): Promise<void> {
if (!Array.isArray(ids)) ids = [ids]
const peer = await this.resolvePeer(chatId)
const res = await this.call({
_: 'messages.deleteScheduledMessages',
peer,
id: ids
})
this._handleUpdate(res)
}