diff --git a/src/bot/macros.rs b/src/bot/macros.rs index 03550a3..7bd9184 100644 --- a/src/bot/macros.rs +++ b/src/bot/macros.rs @@ -8,9 +8,14 @@ macro_rules! respond { } else { None }; + let thread_id = $this.message + .is_topic_message + .unwrap_or(false) + .then_some($this.message.message_thread_id) + .flatten(); let params = ::frankenstein::methods::SendMessageParams::builder() .chat_id($this.chat_id()) - .maybe_message_thread_id($this.message.message_thread_id) + .maybe_message_thread_id(thread_id) .maybe_reply_parameters(reply_parameters) .link_preview_options(::frankenstein::types::LinkPreviewOptions::builder().is_disabled(true).build()) $(.$p(respond!(@param $p $($v)?)))* diff --git a/src/bot/mod.rs b/src/bot/mod.rs index 3795745..eed1e72 100644 --- a/src/bot/mod.rs +++ b/src/bot/mod.rs @@ -317,7 +317,7 @@ impl HandleMessage<'_> { } if let Some(text) = &self.message.text { - if self.message.message_thread_id.is_some() { + if self.message.is_topic_message == Some(true) { return Err(Error::TopicsNotSupported); }