157 lines
6.7 KiB
Kotlin
157 lines
6.7 KiB
Kotlin
package dev.inmo.tgbotapi.extensions.api.send
|
|
|
|
import dev.inmo.tgbotapi.bot.TelegramBot
|
|
import dev.inmo.tgbotapi.requests.send.SendAction
|
|
import dev.inmo.tgbotapi.types.ChatIdentifier
|
|
import dev.inmo.tgbotapi.types.MessageThreadId
|
|
import dev.inmo.tgbotapi.types.actions.*
|
|
import dev.inmo.tgbotapi.types.businessConnectionId
|
|
import dev.inmo.tgbotapi.types.business_connection.BusinessConnectionId
|
|
import dev.inmo.tgbotapi.types.chat.Chat
|
|
import dev.inmo.tgbotapi.types.threadId
|
|
|
|
suspend fun TelegramBot.sendBotAction(
|
|
chatId: ChatIdentifier,
|
|
action: BotAction,
|
|
threadId: MessageThreadId? = chatId.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId
|
|
) = execute(
|
|
SendAction(chatId, action, threadId, businessConnectionId)
|
|
)
|
|
|
|
suspend fun TelegramBot.sendBotAction(
|
|
chat: Chat,
|
|
action: BotAction,
|
|
threadId: MessageThreadId? = chat.id.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chat.id.businessConnectionId
|
|
) = sendBotAction(chat.id, action, threadId, businessConnectionId)
|
|
|
|
|
|
suspend fun TelegramBot.sendActionTyping(
|
|
chatId: ChatIdentifier,
|
|
threadId: MessageThreadId? = chatId.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId
|
|
) = sendBotAction(chatId, TypingAction, threadId, businessConnectionId)
|
|
|
|
suspend fun TelegramBot.sendActionUploadPhoto(
|
|
chatId: ChatIdentifier,
|
|
threadId: MessageThreadId? = chatId.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId
|
|
) = sendBotAction(chatId, UploadPhotoAction, threadId, businessConnectionId)
|
|
|
|
suspend fun TelegramBot.sendActionRecordVideo(
|
|
chatId: ChatIdentifier,
|
|
threadId: MessageThreadId? = chatId.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId
|
|
) = sendBotAction(chatId, RecordVideoAction, threadId, businessConnectionId)
|
|
|
|
suspend fun TelegramBot.sendActionUploadVideo(
|
|
chatId: ChatIdentifier,
|
|
threadId: MessageThreadId? = chatId.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId
|
|
) = sendBotAction(chatId, UploadVideoAction, threadId, businessConnectionId)
|
|
|
|
suspend fun TelegramBot.sendActionRecordVoice(
|
|
chatId: ChatIdentifier,
|
|
threadId: MessageThreadId? = chatId.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId
|
|
) = sendBotAction(chatId, RecordVoiceAction, threadId, businessConnectionId)
|
|
|
|
suspend fun TelegramBot.sendActionUploadVoice(
|
|
chatId: ChatIdentifier,
|
|
threadId: MessageThreadId? = chatId.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId
|
|
) = sendBotAction(chatId, UploadVoiceAction, threadId, businessConnectionId)
|
|
|
|
suspend fun TelegramBot.sendActionUploadDocument(
|
|
chatId: ChatIdentifier,
|
|
threadId: MessageThreadId? = chatId.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId
|
|
) = sendBotAction(chatId, UploadDocumentAction, threadId, businessConnectionId)
|
|
|
|
suspend fun TelegramBot.sendActionFindLocation(
|
|
chatId: ChatIdentifier,
|
|
threadId: MessageThreadId? = chatId.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId
|
|
) = sendBotAction(chatId, FindLocationAction, threadId, businessConnectionId)
|
|
|
|
suspend fun TelegramBot.sendActionRecordVideoNote(
|
|
chatId: ChatIdentifier,
|
|
threadId: MessageThreadId? = chatId.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId
|
|
) = sendBotAction(chatId, RecordVideoNoteAction, threadId, businessConnectionId)
|
|
|
|
suspend fun TelegramBot.sendActionUploadVideoNote(
|
|
chatId: ChatIdentifier,
|
|
threadId: MessageThreadId? = chatId.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId
|
|
) = sendBotAction(chatId, UploadVideoNoteAction, threadId, businessConnectionId)
|
|
|
|
|
|
suspend fun TelegramBot.sendActionTyping(
|
|
chat: Chat,
|
|
threadId: MessageThreadId? = chat.id.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chat.id.businessConnectionId
|
|
) = sendBotAction(chat, TypingAction, threadId, businessConnectionId)
|
|
|
|
suspend fun TelegramBot.sendActionUploadPhoto(
|
|
chat: Chat,
|
|
threadId: MessageThreadId? = chat.id.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chat.id.businessConnectionId
|
|
) = sendBotAction(chat, UploadPhotoAction, threadId, businessConnectionId)
|
|
|
|
suspend fun TelegramBot.sendActionRecordVideo(
|
|
chat: Chat,
|
|
threadId: MessageThreadId? = chat.id.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chat.id.businessConnectionId
|
|
) = sendBotAction(chat, RecordVideoAction, threadId, businessConnectionId)
|
|
|
|
suspend fun TelegramBot.sendActionUploadVideo(
|
|
chat: Chat,
|
|
threadId: MessageThreadId? = chat.id.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chat.id.businessConnectionId
|
|
) = sendBotAction(chat, UploadVideoAction, threadId, businessConnectionId)
|
|
|
|
suspend fun TelegramBot.sendActionRecordVoice(
|
|
chat: Chat,
|
|
threadId: MessageThreadId? = chat.id.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chat.id.businessConnectionId
|
|
) = sendBotAction(chat, RecordVoiceAction, threadId, businessConnectionId)
|
|
|
|
suspend fun TelegramBot.sendActionUploadVoice(
|
|
chat: Chat,
|
|
threadId: MessageThreadId? = chat.id.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chat.id.businessConnectionId
|
|
) = sendBotAction(chat, UploadVoiceAction, threadId, businessConnectionId)
|
|
|
|
suspend fun TelegramBot.sendActionUploadDocument(
|
|
chat: Chat,
|
|
threadId: MessageThreadId? = chat.id.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chat.id.businessConnectionId
|
|
) = sendBotAction(chat, UploadDocumentAction, threadId, businessConnectionId)
|
|
|
|
suspend fun TelegramBot.sendActionFindLocation(
|
|
chat: Chat,
|
|
threadId: MessageThreadId? = chat.id.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chat.id.businessConnectionId
|
|
) = sendBotAction(chat, FindLocationAction, threadId, businessConnectionId)
|
|
|
|
suspend fun TelegramBot.sendActionRecordVideoNote(
|
|
chat: Chat,
|
|
threadId: MessageThreadId? = chat.id.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chat.id.businessConnectionId
|
|
) = sendBotAction(chat, RecordVideoNoteAction, threadId, businessConnectionId)
|
|
|
|
suspend fun TelegramBot.sendActionUploadVideoNote(
|
|
chat: Chat,
|
|
threadId: MessageThreadId? = chat.id.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chat.id.businessConnectionId
|
|
) = sendBotAction(chat, UploadVideoNoteAction, threadId, businessConnectionId)
|
|
|
|
suspend fun TelegramBot.sendActionChooseStickerAction(
|
|
chat: Chat,
|
|
threadId: MessageThreadId? = chat.id.threadId,
|
|
businessConnectionId: BusinessConnectionId? = chat.id.businessConnectionId
|
|
) = sendBotAction(chat, ChooseStickerAction, threadId, businessConnectionId)
|
|
|