Skip to content

searchChatMessages

Sahri Riza Umami edited this page Jul 1, 2018 · 5 revisions

Searches for messages with given words in the chat.
Returns the results in reverse chronological order, i.e. in order of decreasing message_id.
Cannot be used in secret chats with a non-empty query (searchSecretMessages should be used instead), or without an enabled message database.
For optimal performance the number of returned messages is chosen by the library.

searchChatMessages(chat_id, query, filter, sender_user_id, from_message_id, offset, limit, callback, data)
Field Type Description
chat_id int53 Identifier of the chat in which to search messages.
query string Query to search for.
sender_user_id int32 If not 0, only messages sent by the specified user will be returned. Not supported in secret chats.
from_message_id int53 Identifier of the message starting from which history must be fetched; use 0 to get results from the beginning.
offset int32 Specify 0 to get results from exactly the from_message_id or a negative offset to get the specified message and some newer messages.
limit int32 The maximum number of messages to be returned; must be positive and can't be greater than 100. If the offset is negative, the limit must be greater than -offset. Fewer messages may be returned than specified by the limit, even if the end of the message history has not been reached.
filter string Filter for message content in the search results: Empty, Animation, Audio, Document, Photo, Video, VoiceNote, PhotoAndVideo, Url, ChatPhoto, Call, MissedCall, VideoNote, VoiceAndVideoNote, Mention or UnreadMention.

Example

  • Search 3 message from all found messages contain "tandain" string in the chat 1234567890.

    searchChatMessages(1234567890, 'tandain', 'Empty', 0, 0, 0, 3)

    Response:

      {
        ["@type"] = "messages",
        messages = {
          {
            ["@type"] = "message",
            author_signature = "",
            can_be_deleted_for_all_users = true,
            can_be_deleted_only_for_self = false,
            can_be_edited = true,
            can_be_forwarded = true,
            chat_id = "1234567890",
            contains_unread_mention = false,
            content = {
              ["@type"] = "messageText",
              text = {
                ["@type"] = "formattedText",
                entities = {},
                text = "tes tandain"
              }
            },
            date = 1530429004,
            edit_date = 0,
            id = "16341008384",
            is_channel_post = false,
            is_outgoing = true,
            media_album_id = "0",
            reply_to_message_id = 0,
            sender_user_id = 999999999,
            ttl = 0,
            ttl_expires_in = 0,
            via_bot_user_id = 0,
            views = 0
          },
          {
            ["@type"] = "message",
            author_signature = "",
            can_be_deleted_for_all_users = true,
            can_be_deleted_only_for_self = true,
            can_be_edited = false,
            can_be_forwarded = true,
            chat_id = -17081945,
            contains_unread_mention = false,
            content = {
              ["@type"] = "messageText",
              text = {
                ["@type"] = "formattedText",
                entities = {},
                text = "wah, tandain dulu mau ane tulis deh"
              }
            },
            date = 1530423944,
            edit_date = 0,
            id = "1875479887872",
            is_channel_post = false,
            is_outgoing = false,
            media_album_id = "0",
            reply_to_message_id = "1875478839296",
            sender_user_id = 888888888,
            ttl = 0,
            ttl_expires_in = 0,
            via_bot_user_id = 0,
            views = 0
          }
        },
        total_count = 28
      }

Frequently Asked Questions
The Functions

Clone this wiki locally