From 3758a05ec9506d5beef2a05d556183a61395b6cb Mon Sep 17 00:00:00 2001 From: Matteo Piccina Date: Fri, 14 Feb 2020 20:33:46 +0100 Subject: [PATCH] Add new routing types for edited_message --- .../TelegramBotSDK/Router/ContentType.swift | 19 ++++++++++++++++ Sources/TelegramBotSDK/Router/Router.swift | 22 +++++++++++++++++++ 2 files changed, 41 insertions(+) diff --git a/Sources/TelegramBotSDK/Router/ContentType.swift b/Sources/TelegramBotSDK/Router/ContentType.swift index ff83284..dbab5d3 100644 --- a/Sources/TelegramBotSDK/Router/ContentType.swift +++ b/Sources/TelegramBotSDK/Router/ContentType.swift @@ -45,4 +45,23 @@ public enum ContentType { case migrateFromChatId case pinnedMessage case callback_query(data: String?) + + case editedFrom + case editedForwardFrom + case editedForwardFromChat + case editedForwardDate + case editedReplyToMessage + case editedEditDate + case editedText + case editedEntities + case editedAudio + case editedDocument + case editedPhoto + case editedSticker + case editedVideo + case editedVoice + case editedCaption + case editedContact + case editedLocation + case editedVenue } diff --git a/Sources/TelegramBotSDK/Router/Router.swift b/Sources/TelegramBotSDK/Router/Router.swift index bde0f6c..de430c9 100644 --- a/Sources/TelegramBotSDK/Router/Router.swift +++ b/Sources/TelegramBotSDK/Router/Router.swift @@ -167,6 +167,28 @@ public class Router { case .pinnedMessage: return message.pinnedMessage != nil default: break } + } else if let message = update.editedMessage { + switch contentType { + case .editedFrom: return message.from != nil + case .editedForwardFrom: return message.forwardFrom != nil + case .editedForwardFromChat: return message.forwardFromChat != nil + case .editedForwardDate: return message.forwardDate != nil + case .editedReplyToMessage: return message.replyToMessage != nil + case .editedEditDate: return message.editDate != nil + case .editedText: return message.text != nil + case .editedEntities: return !message.entities.isEmpty + case .editedAudio: return message.audio != nil + case .editedDocument: return message.document != nil + case .editedPhoto: return !message.photo.isEmpty + case .editedSticker: return message.sticker != nil + case .editedVideo: return message.video != nil + case .editedVoice: return message.voice != nil + case .editedCaption: return message.caption != nil + case .editedContact: return message.contact != nil + case .editedLocation: return message.location != nil + case .editedVenue: return message.venue != nil + default: break + } } else { switch contentType { case .callback_query(let data):