mirror of
https://github.com/InsanusMokrassar/TelegramBotAPI.git
synced 2025-11-16 20:10:18 +00:00
fixes in business connections
This commit is contained in:
@@ -1,10 +1,10 @@
|
||||
package dev.inmo.tgbotapi.requests.get
|
||||
|
||||
import dev.inmo.tgbotapi.abstracts.types.WithBusinessConnectionId
|
||||
import dev.inmo.tgbotapi.requests.abstracts.SimpleRequest
|
||||
import dev.inmo.tgbotapi.types.businessConnectionIdField
|
||||
import dev.inmo.tgbotapi.types.business_connection.BusinessConnection
|
||||
import dev.inmo.tgbotapi.types.business_connection.BusinessConnectionId
|
||||
import dev.inmo.tgbotapi.types.files.PathedFile
|
||||
import dev.inmo.tgbotapi.types.idField
|
||||
import kotlinx.serialization.DeserializationStrategy
|
||||
import kotlinx.serialization.SerialName
|
||||
import kotlinx.serialization.Serializable
|
||||
@@ -12,15 +12,15 @@ import kotlinx.serialization.SerializationStrategy
|
||||
|
||||
@Serializable
|
||||
data class GetBusinessConnection(
|
||||
@SerialName(idField)
|
||||
val id: BusinessConnectionId
|
||||
) : SimpleRequest<BusinessConnection> {
|
||||
@SerialName(businessConnectionIdField)
|
||||
override val businessConnectionId: BusinessConnectionId
|
||||
) : SimpleRequest<BusinessConnection>, WithBusinessConnectionId {
|
||||
override fun method(): String {
|
||||
return "getBusinessConnection"
|
||||
}
|
||||
|
||||
override val resultDeserializer: DeserializationStrategy<BusinessConnection>
|
||||
get() = BusinessConnection.serializer()
|
||||
get() = BusinessConnection.Companion
|
||||
override val requestSerializer: SerializationStrategy<*>
|
||||
get() = serializer()
|
||||
}
|
||||
@@ -4,15 +4,12 @@ import dev.inmo.tgbotapi.abstracts.types.WithBusinessConnectionId
|
||||
import dev.inmo.tgbotapi.types.*
|
||||
import dev.inmo.tgbotapi.types.chat.PreviewUser
|
||||
import dev.inmo.tgbotapi.utils.internal.ClassCastsIncluded
|
||||
import kotlinx.serialization.EncodeDefault
|
||||
import kotlinx.serialization.KSerializer
|
||||
import kotlinx.serialization.SerialName
|
||||
import kotlinx.serialization.Serializable
|
||||
import kotlinx.serialization.*
|
||||
import kotlinx.serialization.descriptors.SerialDescriptor
|
||||
import kotlinx.serialization.encoding.Decoder
|
||||
import kotlinx.serialization.encoding.Encoder
|
||||
|
||||
@Serializable
|
||||
@Serializable(BusinessConnection.Companion::class)
|
||||
@ClassCastsIncluded
|
||||
sealed interface BusinessConnection : WithBusinessConnectionId {
|
||||
val id: BusinessConnectionId
|
||||
@@ -59,6 +56,7 @@ sealed interface BusinessConnection : WithBusinessConnectionId {
|
||||
override val isEnabled: Boolean = false
|
||||
}
|
||||
|
||||
@Serializer(BusinessConnection::class)
|
||||
companion object : KSerializer<BusinessConnection> {
|
||||
override val descriptor: SerialDescriptor
|
||||
get() = RawBusinessConnection.serializer().descriptor
|
||||
@@ -69,8 +67,7 @@ sealed interface BusinessConnection : WithBusinessConnectionId {
|
||||
}
|
||||
|
||||
override fun serialize(encoder: Encoder, value: BusinessConnection) {
|
||||
|
||||
RawBusinessConnection.serializer().serialize(encoder, RawBusinessConnection(value))
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,11 +2,8 @@ package dev.inmo.tgbotapi.types.business_connection
|
||||
|
||||
import dev.inmo.tgbotapi.abstracts.types.WithBusinessConnectionId
|
||||
import dev.inmo.tgbotapi.abstracts.types.WithOptionalBusinessConnectionId
|
||||
import dev.inmo.tgbotapi.types.MessageId
|
||||
import dev.inmo.tgbotapi.types.businessConnectionIdField
|
||||
import dev.inmo.tgbotapi.types.*
|
||||
import dev.inmo.tgbotapi.types.chat.PreviewChat
|
||||
import dev.inmo.tgbotapi.types.chatField
|
||||
import dev.inmo.tgbotapi.types.messageIdField
|
||||
import kotlinx.serialization.SerialName
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
@@ -16,6 +13,6 @@ data class BusinessMessagesDeleted(
|
||||
override val businessConnectionId: BusinessConnectionId,
|
||||
@SerialName(chatField)
|
||||
val chat: PreviewChat,
|
||||
@SerialName(messageIdField)
|
||||
val messageId: MessageId
|
||||
@SerialName(messageIdsField)
|
||||
val messageIds: List<MessageId>
|
||||
) : WithBusinessConnectionId
|
||||
|
||||
@@ -6,7 +6,7 @@ import kotlinx.serialization.SerialName
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
@Serializable
|
||||
data class RawBusinessConnection(
|
||||
internal data class RawBusinessConnection(
|
||||
@SerialName(idField)
|
||||
val id: BusinessConnectionId,
|
||||
@SerialName(userField)
|
||||
|
||||
@@ -49,6 +49,7 @@ internal data class RawUpdate constructor(
|
||||
private val message_reaction_count: ChatMessageReactionsCountUpdated? = null,
|
||||
private val chat_boost: ChatBoostUpdated? = null,
|
||||
private val removed_chat_boost: ChatBoostRemoved? = null,
|
||||
@Serializable(BusinessConnection.Companion::class)
|
||||
private val business_connection: BusinessConnection? = null,
|
||||
@Serializable(TelegramBotAPIMessageDeserializeOnlySerializer::class)
|
||||
private val business_message: BusinessContentMessage<*>? = null,
|
||||
|
||||
Reference in New Issue
Block a user