Skip to content

Commit e660f06

Browse files
add showing of user audios and update telegram bot api version onto temporal version
1 parent fb6ed8b commit e660f06

File tree

2 files changed

+33
-2
lines changed

2 files changed

+33
-2
lines changed

CustomBot/src/main/kotlin/CustomBot.kt

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,19 @@ import dev.inmo.micro_utils.coroutines.subscribeSafelyWithoutExceptions
66
import dev.inmo.tgbotapi.extensions.api.bot.getMe
77
import dev.inmo.tgbotapi.extensions.api.bot.getMyStarBalance
88
import dev.inmo.tgbotapi.extensions.api.chat.get.getChat
9+
import dev.inmo.tgbotapi.extensions.api.get.getUserProfileAudios
910
import dev.inmo.tgbotapi.extensions.api.send.reply
11+
import dev.inmo.tgbotapi.extensions.api.send.replyWithAudio
12+
import dev.inmo.tgbotapi.extensions.api.send.replyWithPlaylist
1013
import dev.inmo.tgbotapi.extensions.behaviour_builder.BehaviourContextData
1114
import dev.inmo.tgbotapi.extensions.behaviour_builder.buildSubcontextInitialAction
1215
import dev.inmo.tgbotapi.extensions.behaviour_builder.telegramBotWithBehaviourAndLongPolling
1316
import dev.inmo.tgbotapi.extensions.behaviour_builder.triggers_handling.onChannelDirectMessagesConfigurationChanged
1417
import dev.inmo.tgbotapi.extensions.behaviour_builder.triggers_handling.onChatOwnerChanged
1518
import dev.inmo.tgbotapi.extensions.behaviour_builder.triggers_handling.onChatOwnerLeft
1619
import dev.inmo.tgbotapi.extensions.behaviour_builder.triggers_handling.onCommand
20+
import dev.inmo.tgbotapi.types.media.AudioMediaGroupMemberTelegramMedia
21+
import dev.inmo.tgbotapi.types.media.toTelegramMediaAudio
1722
import dev.inmo.tgbotapi.types.message.abstracts.CommonMessage
1823
import dev.inmo.tgbotapi.types.update.abstracts.Update
1924
import kotlinx.coroutines.CoroutineScope
@@ -72,6 +77,32 @@ suspend fun main(vararg args: String) {
7277
println(data.update)
7378
println(data.commonMessage)
7479
println(getChat(it.chat))
80+
var currentOffset = 0
81+
val pageSize = 2
82+
do {
83+
val userAudios = getUserProfileAudios(userId = it.chat.id, offset = currentOffset, limit = pageSize)
84+
currentOffset += pageSize
85+
println(userAudios)
86+
when (userAudios.audios.size) {
87+
1 -> {
88+
replyWithAudio(
89+
it,
90+
userAudios.audios.first().fileId
91+
)
92+
}
93+
0 -> {
94+
// do nothing
95+
}
96+
else -> {
97+
replyWithPlaylist(
98+
it,
99+
userAudios.audios.map {
100+
it.toTelegramMediaAudio()
101+
}
102+
)
103+
}
104+
}
105+
} while (currentOffset < userAudios.totalCount && userAudios.audios.isNotEmpty())
75106
}
76107

77108
onCommand(

gradle.properties

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ kotlin.daemon.jvmargs=-Xmx3g -Xms500m
66

77

88
kotlin_version=2.2.21
9-
telegram_bot_api_version=31.0.0
10-
micro_utils_version=0.26.8
9+
telegram_bot_api_version=31.0.0-branch_31.0.0-build3109
10+
micro_utils_version=0.26.9
1111
serialization_version=1.9.0
1212
ktor_version=3.3.2
1313
compose_version=1.8.2

0 commit comments

Comments
 (0)