|
|
@@ -1,7 +1,7 @@
|
|
|
package com.sirekanyan.andersrobot.extensions
|
|
|
|
|
|
import org.telegram.telegrambots.meta.api.methods.send.SendMessage
|
|
|
-import org.telegram.telegrambots.meta.api.methods.send.SendPhoto
|
|
|
+import org.telegram.telegrambots.meta.api.methods.send.SendSticker
|
|
|
import org.telegram.telegrambots.meta.api.objects.InputFile
|
|
|
import org.telegram.telegrambots.meta.api.objects.Message
|
|
|
import org.telegram.telegrambots.meta.bots.AbsSender
|
|
|
@@ -13,15 +13,13 @@ private val cachedFileIds: MutableMap<File, String> = ConcurrentHashMap()
|
|
|
fun AbsSender.sendText(chatId: Long, text: String): Message =
|
|
|
execute(SendMessage(chatId, text))
|
|
|
|
|
|
-fun AbsSender.sendPhoto(chatId: Long, file: File, caption: String) {
|
|
|
- fun send(f: InputFile) = execute(SendPhoto().setChatId(chatId).setPhoto(f).setCaption(caption))
|
|
|
+fun AbsSender.sendSticker(chatId: Long, file: File) {
|
|
|
+ fun send(f: InputFile) = execute(SendSticker().setChatId(chatId).setSticker(f))
|
|
|
val cachedFileId = cachedFileIds[file]
|
|
|
if (cachedFileId == null) {
|
|
|
println("sending file $file")
|
|
|
val message = send(InputFile(file, file.name))
|
|
|
- message.photo.maxByOrNull { it.width }?.fileId?.let { fileId ->
|
|
|
- cachedFileIds[file] = fileId
|
|
|
- }
|
|
|
+ cachedFileIds[file] = message.sticker.fileId
|
|
|
} else {
|
|
|
println("sending fileId $cachedFileId")
|
|
|
send(InputFile(cachedFileId))
|