mirror of
https://github.com/InsanusMokrassar/TelegramBotAPI.git
synced 2024-11-22 08:13:47 +00:00
add support of forum topic service messages
This commit is contained in:
parent
5bf30bc6c6
commit
ad75aef64f
@ -171,6 +171,7 @@ const val isPremiumField = "is_premium"
|
|||||||
const val hasPrivateForwardsField = "has_private_forwards"
|
const val hasPrivateForwardsField = "has_private_forwards"
|
||||||
const val hasRestrictedVoiceAndVideoMessagesField = "has_restricted_voice_and_video_messages"
|
const val hasRestrictedVoiceAndVideoMessagesField = "has_restricted_voice_and_video_messages"
|
||||||
const val emojiStatusCustomEmojiIdField = "emoji_status_custom_emoji_id"
|
const val emojiStatusCustomEmojiIdField = "emoji_status_custom_emoji_id"
|
||||||
|
const val iconCustomEmojiIdField = "icon_custom_emoji_id"
|
||||||
const val canJoinGroupsField = "can_join_groups"
|
const val canJoinGroupsField = "can_join_groups"
|
||||||
const val canReadAllGroupMessagesField = "can_read_all_group_messages"
|
const val canReadAllGroupMessagesField = "can_read_all_group_messages"
|
||||||
const val supportInlineQueriesField = "supports_inline_queries"
|
const val supportInlineQueriesField = "supports_inline_queries"
|
||||||
@ -250,6 +251,7 @@ const val expireDateField = "expire_date"
|
|||||||
const val createsJoinRequestField = "creates_join_request"
|
const val createsJoinRequestField = "creates_join_request"
|
||||||
const val pendingJoinRequestCountField = "pending_join_request_count"
|
const val pendingJoinRequestCountField = "pending_join_request_count"
|
||||||
const val memberLimitField = "member_limit"
|
const val memberLimitField = "member_limit"
|
||||||
|
const val iconColorField = "icon_color"
|
||||||
|
|
||||||
const val requestContactField = "request_contact"
|
const val requestContactField = "request_contact"
|
||||||
const val requestLocationField = "request_location"
|
const val requestLocationField = "request_location"
|
||||||
|
@ -0,0 +1,3 @@
|
|||||||
|
package dev.inmo.tgbotapi.types.message.ChatEvents.abstracts
|
||||||
|
|
||||||
|
interface ForumEvent: SupergroupEvent
|
@ -0,0 +1,7 @@
|
|||||||
|
package dev.inmo.tgbotapi.types.message.ChatEvents.forum
|
||||||
|
|
||||||
|
import dev.inmo.tgbotapi.types.message.ChatEvents.abstracts.ForumEvent
|
||||||
|
import kotlinx.serialization.Serializable
|
||||||
|
|
||||||
|
@Serializable
|
||||||
|
object ForumTopicClosed : ForumEvent
|
@ -0,0 +1,20 @@
|
|||||||
|
package dev.inmo.tgbotapi.types.message.ChatEvents.forum
|
||||||
|
|
||||||
|
import dev.inmo.tgbotapi.types.CustomEmojiId
|
||||||
|
import dev.inmo.tgbotapi.types.iconColorField
|
||||||
|
import dev.inmo.tgbotapi.types.iconCustomEmojiIdField
|
||||||
|
import dev.inmo.tgbotapi.types.message.ChatEvents.abstracts.ForumEvent
|
||||||
|
import dev.inmo.tgbotapi.types.nameField
|
||||||
|
import dev.inmo.tgbotapi.utils.RGBColor
|
||||||
|
import kotlinx.serialization.SerialName
|
||||||
|
import kotlinx.serialization.Serializable
|
||||||
|
|
||||||
|
@Serializable
|
||||||
|
data class ForumTopicCreated(
|
||||||
|
@SerialName(nameField)
|
||||||
|
val name: String,
|
||||||
|
@SerialName(iconColorField)
|
||||||
|
val iconColor: RGBColor,
|
||||||
|
@SerialName(iconCustomEmojiIdField)
|
||||||
|
val iconEmojiId: CustomEmojiId? = null
|
||||||
|
) : ForumEvent
|
@ -0,0 +1,7 @@
|
|||||||
|
package dev.inmo.tgbotapi.types.message.ChatEvents.forum
|
||||||
|
|
||||||
|
import dev.inmo.tgbotapi.types.message.ChatEvents.abstracts.ForumEvent
|
||||||
|
import kotlinx.serialization.Serializable
|
||||||
|
|
||||||
|
@Serializable
|
||||||
|
object ForumTopicReopened : ForumEvent
|
@ -12,6 +12,9 @@ import dev.inmo.tgbotapi.types.games.RawGame
|
|||||||
import dev.inmo.tgbotapi.types.location.Location
|
import dev.inmo.tgbotapi.types.location.Location
|
||||||
import dev.inmo.tgbotapi.types.message.ChatEvents.*
|
import dev.inmo.tgbotapi.types.message.ChatEvents.*
|
||||||
import dev.inmo.tgbotapi.types.message.ChatEvents.abstracts.*
|
import dev.inmo.tgbotapi.types.message.ChatEvents.abstracts.*
|
||||||
|
import dev.inmo.tgbotapi.types.message.ChatEvents.forum.ForumTopicClosed
|
||||||
|
import dev.inmo.tgbotapi.types.message.ChatEvents.forum.ForumTopicCreated
|
||||||
|
import dev.inmo.tgbotapi.types.message.ChatEvents.forum.ForumTopicReopened
|
||||||
import dev.inmo.tgbotapi.types.message.ChatEvents.voice.*
|
import dev.inmo.tgbotapi.types.message.ChatEvents.voice.*
|
||||||
import dev.inmo.tgbotapi.types.message.abstracts.*
|
import dev.inmo.tgbotapi.types.message.abstracts.*
|
||||||
import dev.inmo.tgbotapi.types.message.content.*
|
import dev.inmo.tgbotapi.types.message.content.*
|
||||||
@ -91,6 +94,11 @@ internal data class RawMessage(
|
|||||||
private val video_chat_ended: VideoChatEnded? = null,
|
private val video_chat_ended: VideoChatEnded? = null,
|
||||||
private val video_chat_participants_invited: VideoChatParticipantsInvited? = null,
|
private val video_chat_participants_invited: VideoChatParticipantsInvited? = null,
|
||||||
|
|
||||||
|
// Forum
|
||||||
|
private val forum_topic_created: ForumTopicCreated? = null,
|
||||||
|
private val forum_topic_closed: ForumTopicClosed? = null,
|
||||||
|
private val forum_topic_reopened: ForumTopicReopened? = null,
|
||||||
|
|
||||||
// AutoDelete Message time changed
|
// AutoDelete Message time changed
|
||||||
private val message_auto_delete_timer_changed: MessageAutoDeleteTimerChanged? = null,
|
private val message_auto_delete_timer_changed: MessageAutoDeleteTimerChanged? = null,
|
||||||
|
|
||||||
@ -204,6 +212,9 @@ internal data class RawMessage(
|
|||||||
video_chat_started != null -> video_chat_started
|
video_chat_started != null -> video_chat_started
|
||||||
video_chat_scheduled != null -> video_chat_scheduled
|
video_chat_scheduled != null -> video_chat_scheduled
|
||||||
message_auto_delete_timer_changed != null -> message_auto_delete_timer_changed
|
message_auto_delete_timer_changed != null -> message_auto_delete_timer_changed
|
||||||
|
forum_topic_created != null -> forum_topic_created
|
||||||
|
forum_topic_closed != null -> forum_topic_closed
|
||||||
|
forum_topic_reopened != null -> forum_topic_reopened
|
||||||
video_chat_ended != null -> video_chat_ended
|
video_chat_ended != null -> video_chat_ended
|
||||||
video_chat_participants_invited != null -> video_chat_participants_invited
|
video_chat_participants_invited != null -> video_chat_participants_invited
|
||||||
delete_chat_photo -> DeleteChatPhoto()
|
delete_chat_photo -> DeleteChatPhoto()
|
||||||
|
@ -0,0 +1,10 @@
|
|||||||
|
package dev.inmo.tgbotapi.utils
|
||||||
|
|
||||||
|
import kotlinx.serialization.Serializable
|
||||||
|
import kotlin.jvm.JvmInline
|
||||||
|
|
||||||
|
@Serializable
|
||||||
|
@JvmInline
|
||||||
|
value class RGBColor(
|
||||||
|
val int: Int
|
||||||
|
)
|
Loading…
Reference in New Issue
Block a user