feat(core): getAllScheduledMessages method
This commit is contained in:
parent
f877e97d34
commit
47e1cde585
3 changed files with 46 additions and 0 deletions
|
@ -130,6 +130,7 @@ import { deleteScheduledMessages } from './methods/messages/delete-scheduled-mes
|
||||||
import { editInlineMessage } from './methods/messages/edit-inline-message.js'
|
import { editInlineMessage } from './methods/messages/edit-inline-message.js'
|
||||||
import { editMessage } from './methods/messages/edit-message.js'
|
import { editMessage } from './methods/messages/edit-message.js'
|
||||||
import { ForwardMessageOptions, forwardMessages, forwardMessagesById } from './methods/messages/forward-messages.js'
|
import { ForwardMessageOptions, forwardMessages, forwardMessagesById } from './methods/messages/forward-messages.js'
|
||||||
|
import { getAllScheduledMessages } from './methods/messages/get-all-scheduled-messages.js'
|
||||||
import { getCallbackQueryMessage } from './methods/messages/get-callback-query-message.js'
|
import { getCallbackQueryMessage } from './methods/messages/get-callback-query-message.js'
|
||||||
import { getDiscussionMessage } from './methods/messages/get-discussion-message.js'
|
import { getDiscussionMessage } from './methods/messages/get-discussion-message.js'
|
||||||
import { getHistory, GetHistoryOffset } from './methods/messages/get-history.js'
|
import { getHistory, GetHistoryOffset } from './methods/messages/get-history.js'
|
||||||
|
@ -3199,6 +3200,14 @@ export interface TelegramClient extends ITelegramClient {
|
||||||
messages: Message[]
|
messages: Message[]
|
||||||
},
|
},
|
||||||
): Promise<Message[]>
|
): Promise<Message[]>
|
||||||
|
/**
|
||||||
|
* Get all scheduled messages in chat
|
||||||
|
*
|
||||||
|
* **Available**: 👤 users only
|
||||||
|
*
|
||||||
|
* @param chatId Chat's marked ID, its username, phone or `"me"` or `"self"`
|
||||||
|
*/
|
||||||
|
getAllScheduledMessages(chatId: InputPeerLike): Promise<Message[]>
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the message containing the button being clicked
|
* Get the message containing the button being clicked
|
||||||
|
@ -5802,6 +5811,9 @@ TelegramClient.prototype.forwardMessagesById = function (...args) {
|
||||||
TelegramClient.prototype.forwardMessages = function (...args) {
|
TelegramClient.prototype.forwardMessages = function (...args) {
|
||||||
return forwardMessages(this._client, ...args)
|
return forwardMessages(this._client, ...args)
|
||||||
}
|
}
|
||||||
|
TelegramClient.prototype.getAllScheduledMessages = function (...args) {
|
||||||
|
return getAllScheduledMessages(this._client, ...args)
|
||||||
|
}
|
||||||
TelegramClient.prototype.getCallbackQueryMessage = function (...args) {
|
TelegramClient.prototype.getCallbackQueryMessage = function (...args) {
|
||||||
return getCallbackQueryMessage(this._client, ...args)
|
return getCallbackQueryMessage(this._client, ...args)
|
||||||
}
|
}
|
||||||
|
|
|
@ -128,6 +128,7 @@ export { editMessage } from './methods/messages/edit-message.js'
|
||||||
export type { ForwardMessageOptions } from './methods/messages/forward-messages.js'
|
export type { ForwardMessageOptions } from './methods/messages/forward-messages.js'
|
||||||
export { forwardMessagesById } from './methods/messages/forward-messages.js'
|
export { forwardMessagesById } from './methods/messages/forward-messages.js'
|
||||||
export { forwardMessages } from './methods/messages/forward-messages.js'
|
export { forwardMessages } from './methods/messages/forward-messages.js'
|
||||||
|
export { getAllScheduledMessages } from './methods/messages/get-all-scheduled-messages.js'
|
||||||
export { getCallbackQueryMessage } from './methods/messages/get-callback-query-message.js'
|
export { getCallbackQueryMessage } from './methods/messages/get-callback-query-message.js'
|
||||||
export { getDiscussionMessage } from './methods/messages/get-discussion-message.js'
|
export { getDiscussionMessage } from './methods/messages/get-discussion-message.js'
|
||||||
export type { GetHistoryOffset } from './methods/messages/get-history.js'
|
export type { GetHistoryOffset } from './methods/messages/get-history.js'
|
||||||
|
|
|
@ -0,0 +1,33 @@
|
||||||
|
import Long from 'long'
|
||||||
|
|
||||||
|
import { assertTypeIsNot } from '../../../utils/type-assertions.js'
|
||||||
|
import { ITelegramClient } from '../../client.types.js'
|
||||||
|
import { InputPeerLike, Message, PeersIndex } from '../../types/index.js'
|
||||||
|
import { resolvePeer } from '../users/resolve-peer.js'
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get all scheduled messages in chat
|
||||||
|
*
|
||||||
|
* @param chatId Chat's marked ID, its username, phone or `"me"` or `"self"`
|
||||||
|
*/
|
||||||
|
export async function getAllScheduledMessages(client: ITelegramClient, chatId: InputPeerLike): Promise<Message[]> {
|
||||||
|
const peer = await resolvePeer(client, chatId)
|
||||||
|
|
||||||
|
const res = await client.call({
|
||||||
|
_: 'messages.getScheduledHistory',
|
||||||
|
peer,
|
||||||
|
hash: Long.ZERO,
|
||||||
|
})
|
||||||
|
|
||||||
|
assertTypeIsNot('getScheduledMessages', res, 'messages.messagesNotModified')
|
||||||
|
|
||||||
|
const peers = PeersIndex.from(res)
|
||||||
|
|
||||||
|
const ret = res.messages.map((msg) => {
|
||||||
|
assertTypeIsNot('getScheduledMessages', msg, 'messageEmpty')
|
||||||
|
|
||||||
|
return new Message(msg, peers, true)
|
||||||
|
})
|
||||||
|
|
||||||
|
return ret
|
||||||
|
}
|
Loading…
Reference in a new issue