Link Search Menu Expand Document

danog\MadelineProto\EventHandler\Message\GroupMessage

Back to index

Author: Daniil Gentili daniil@daniil.it

Represents an incoming or outgoing group message.

Properties

  • $message: string Content of the message
  • $fwdInfo: ?danog\MadelineProto\EventHandler\ForwardedInfo Info about a forwarded message
  • $command: ?string Bot command (if present)
  • $commandType: ?danog\MadelineProto\EventHandler\CommandType Bot command type (if present)
  • $commandArgs: list<string> Bot command arguments (if present)
  • $protected: bool Whether this message is protected
  • $matches: list<string> Regex matches, if a filter regex is present
  • $matchesAll: array<array-key, (array<array-key, (list{string, int} | null | string)> | mixed)> Regex matches, if a filter multiple match regex is present
  • $media: (danog\MadelineProto\EventHandler\Media\Audio | danog\MadelineProto\EventHandler\Media\Document | danog\MadelineProto\EventHandler\Media\DocumentPhoto | danog\MadelineProto\EventHandler\Media\Gif | danog\MadelineProto\EventHandler\Media\MaskSticker | danog\MadelineProto\EventHandler\Media\Photo | danog\MadelineProto\EventHandler\Media\RoundVideo | danog\MadelineProto\EventHandler\Media\Sticker | danog\MadelineProto\EventHandler\Media\Video | danog\MadelineProto\EventHandler\Media\Voice | null) Attached media.
  • $fromScheduled: bool Whether this message is a sent scheduled message
  • $viaBotId: ?int If the message was generated by an inline query, ID of the bot that generated it
  • $editDate: ?int Last edit date of the message
  • $keyboard: (danog\MadelineProto\EventHandler\Keyboard\InlineKeyboard | danog\MadelineProto\EventHandler\Keyboard\ReplyKeyboard | null) Inline or reply keyboard.
  • $imported: bool Whether this message was imported from a foreign chat service
  • $psaType: ?string For Public Service Announcement messages, the PSA type
  • $nextSent: ?self
  • $views: ?int View counter for messages from channels or forwarded from channels
  • $forwards: ?int Forward counter for messages from channels or forwarded from channels
  • $signature: ?string Author of the post, if signatures are enabled for messages from channels or forwarded from channels
  • $entities: list<MessageEntity> Message entities for styled text
  • $groupedId: ?int Group ID for albums.

All messages associated to the same album will have an identical grouped ID.

  • $poll: ?danog\MadelineProto\EventHandler\AbstractPoll The poll
  • $id: int Message ID
  • $out: bool Whether the message is outgoing
  • $chatId: int ID of the chat where the message was sent
  • $senderId: int ID of the sender of the message
  • $replyToMsgId: ?int ID of the message to which this message is replying
  • $date: int When was the message sent
  • $topicId: ?int ID of the forum topic where the message was sent
  • $threadId: ?int ID of the message thread where the message was sent
  • $replyToScheduled: bool Whether this is a reply to a scheduled message
  • $mentioned: bool Whether we were mentioned in this message
  • $silent: bool Whether this message was sent without any notification (silently)
  • $ttlPeriod: ?int Time-to-live of the message

Method list:

Methods:

getMember((string|integer|null) $member = NULL): \danog\MadelineProto\EventHandler\Participant

Get info about a channel/supergroup participant.

Parameters:

  • $member: (string|integer|null) Participant to get info about; can be empty or null to get info about the sender of the message.

See also:

hideMembers(): void

Hide the participants list in a supergroup. The supergroup must have at least hidden_members_group_size_min participants in order to use this method, as specified by the client configuration parameters ».

unhideMembers(): void

Display the participants list in a supergroup. The supergroup must have at least hidden_members_group_size_min participants in order to use this method, as specified by the client configuration parameters ».

hideHistory(): void

Hide message history for new supergroup users.

unhideHistory(): void

Unhide message history for new supergroup users.

ban(int $untilDate = 0): void

Ban message sender from current supergroup.

Parameters:

  • $untilDate: int Validity of said permissions (it is considered forever any value less then 30 seconds or more then 366 days).

unban(int $untilDate = 0): void

Unban message sender from current supergroup.

Parameters:

  • $untilDate: int Validity of said permissions (it is considered forever any value less then 30 seconds or more then 366 days).

kick(): void

Kick message sender from current supergroup.

deleteAll(bool $forEveryone = true, int $maxId = 0): void

Delete all supergroup message.

Parameters:

  • $forEveryone: bool
  • $maxId: int

deleteUserMessages((string|integer|null) $member = NULL): void

Delete all messages sent by a specific participant of a given supergroup.

Parameters:

  • $member: (string|integer|null) The participant whose messages should be deleted, if null or absent defaults to the sender of the message.

toSuperGroup(): integer

Turn a basic group into a supergroup.

Return value: the channel id we migrated to

enableAntiSpam(): void

Enable the native antispam system.

disableAntiSpam(): void

Disable the native antispam system.

enableTopics(): void

Enable forum functionality in a supergroup.

disableTopics(): void

Disable forum functionality in a supergroup.

createTopic(string $title, (\danog\MadelineProto\EventHandler\Topic\IconColor|int) $icon = \danog\MadelineProto\EventHandler\Topic\IconColor::NONE): \danog\MadelineProto\EventHandler\Message\Service\DialogTopicCreated

Create a forum topic; requires manage_topics rights.

Parameters:

  • $title: string Topic title (maximum UTF-8 length: 128)
  • $icon: (\danog\MadelineProto\EventHandler\Topic\IconColor|int) Icon color, or ID of the custom emoji used as topic icon. Telegram Premium users can use any custom emoji, other users can only use the custom emojis contained in the inputStickerSetEmojiDefaultTopicIcons emoji pack. If no custom emoji icon is specified, specifies the color of the fallback topic icon

See also:

editTopic(string $title, integer $icon = 0, (integer|null) $topicId = NULL): \danog\MadelineProto\EventHandler\Message\Service\DialogTopicEdited

Edit a forum topic; requires manage_topics rights.

Parameters:

  • $title: string Topic title (maximum UTF-8 length: 128)
  • $icon: integer ID of the custom emoji used as topic icon. Telegram Premium users can use any custom emoji, other users can only use the custom emojis contained in the inputStickerSetEmojiDefaultTopicIcons emoji pack. Pass 0 to switch to the fallback topic icon.
  • $topicId: (integer|null) Topic ID, if absent defaults to the topic where this message was sent.

See also:

openTopic((integer|null) $topicId = NULL): \danog\MadelineProto\EventHandler\Message\Service\DialogTopicEdited

Open a forum topic; requires manage_topics rights.

Parameters:

  • $topicId: (integer|null) Topic ID, if absent defaults to the topic where this message was sent.

See also:

closeTopic((integer|null) $topicId = NULL): \danog\MadelineProto\EventHandler\Message\Service\DialogTopicEdited

Close a forum topic; requires manage_topics rights.

Parameters:

  • $topicId: (integer|null) Topic ID, if absent defaults to the topic where this message was sent.

See also:

deleteTopic((integer|null) $topicId = NULL): void

Delete message history of a forum topic.

Parameters:

  • $topicId: (integer|null) Topic ID, if absent defaults to the topic where this message was sent.

enableSlowMode(integer $seconds): void

Toggle supergroup slow mode: Users will only be able to send one message every $seconds seconds.

Parameters:

  • $seconds: integer Users will only be able to send one message every $seconds seconds

disableSlowMode(): void

Disable supergroup slow mode.

enableProtection(): void

Enable or disable content protection on a chat.

disableProtection(): void

Enable or disable content protection on a chat.

enableJoinToComment(): void

Enable to all users should join a discussion group in order to comment on a post ».

disableJoinToComment(): void

Disable to all users should join a discussion group in order to comment on a post ».

pin(bool $pmOneside = false, bool $silent = false): void

Pin a message.

Parameters:

  • $pmOneside: bool Whether the message should only be pinned on the local side of a one-to-one chat
  • $silent: bool Pin the message silently, without triggering a notification

unpin(bool $pmOneside = false, bool $silent = false): ?\danog\MadelineProto\EventHandler\Update

Unpin a message.

Parameters:

  • $pmOneside: bool Whether the message should only be pinned on the local side of a one-to-one chat
  • $silent: bool Pin the message silently, without triggering a notification

See also:

getOurReactions(): list<(string|int)>

Get our reactions on the message.

report(\danog\MadelineProto\EventHandler\Message\ReportReason $reason, string $message): bool

Report a message in a chat for violation of telegram’s Terms of Service.

Parameters:

  • $reason: \danog\MadelineProto\EventHandler\Message\ReportReason Why are these messages being reported
  • $message: string Comment for report moderation

See also:

saveContact(string $firstName, (string|null) $lastName = NULL, (string|null) $phoneNumber = NULL, bool $addPhonePrivacyException = false): void

Save message sender to your account contacts.

Parameters:

  • $firstName: string First name
  • $lastName: (string|null) Last name
  • $phoneNumber: (string|null) Telegram ID of the other user
  • $addPhonePrivacyException: bool Allow the other user to see our phone number?

removeContact(): void

Remove message sender from your account contacts.

inviteToChannel((string|int) $channel): void

Invite message sender to requested channel.

Parameters:

  • $channel: (string|int) Username, Channel ID

addReaction((string|int) $reaction, bool $big = false, bool $addToRecent = true): list<(string|int)>

Add reaction to message.

Parameters:

  • $reaction: (string|int) reaction
  • $big: bool Whether a bigger and longer reaction should be shown
  • $addToRecent: bool Add this reaction to the recent reactions list.

delReaction((string|int) $reaction): list<(string|int)>

Delete reaction from message.

Parameters:

  • $reaction: (string|int) string or int Reaction

translate(string $toLang): string

Translate text message(for media translate it caption).

Parameters:

  • $toLang: string Two-letter ISO 639-1 language code of the language to which the message is translated

editText(string $message, \danog\MadelineProto\ParseMode $parseMode = \danog\MadelineProto\ParseMode::TEXT, (array|null) $replyMarkup = NULL, (int|null) $scheduleDate = NULL, bool $noWebpage = false): \danog\MadelineProto\EventHandler\Message

Edit message text.

Parameters:

  • $message: string New message
  • $parseMode: \danog\MadelineProto\ParseMode Whether to parse HTML or Markdown markup in the message
  • $replyMarkup: (array|null) Reply markup for inline keyboards
  • $scheduleDate: (int|null) Scheduled message date for scheduled messages
  • $noWebpage: bool Disable webpage preview

See also:

editReplyMarkup(array $replyMarkup): \danog\MadelineProto\EventHandler\Message

Edit message keyboard.

Parameters:

  • $replyMarkup: array Reply markup for inline keyboards

replyOrEdit(string $message, \danog\MadelineProto\ParseMode $parseMode = \danog\MadelineProto\ParseMode::TEXT, (array|null) $replyMarkup = NULL, (int|null) $scheduleDate = NULL, bool $noWebpage = false): \danog\MadelineProto\EventHandler\Message

If the message is outgoing, will edit the message’s text, otherwise will reply to the message.

Parameters:

  • $message: string New message
  • $parseMode: \danog\MadelineProto\ParseMode Whether to parse HTML or Markdown markup in the message
  • $replyMarkup: (array|null) Reply markup for inline keyboards
  • $scheduleDate: (int|null) Scheduled message date for scheduled messages
  • $noWebpage: bool Disable webpage preview

See also:

forward((integer|string) $peer, list<int> $id = [], bool $dropAuthor = false, bool $dropCaption = false, int $topicId = 1, boolean $silent = false, boolean $noForwards = false, boolean $background = false, boolean $score = false, (integer|null) $scheduleDate = NULL, (integer|string|null) $sendAs = NULL): array

Forwards messages by their IDs.

Parameters:

  • $peer: (integer|string) Destination peer
  • $id: list<int> IDs of messages
  • $dropAuthor: bool Whether to forward messages without quoting the original author
  • $dropCaption: bool Whether to strip captions from media
  • $topicId: int Destination forum topic
  • $silent: boolean Whether to send the message silently, without triggering notifications.
  • $noForwards: boolean Only for bots, disallows further re-forwarding and saving of the messages, even if the destination chat doesn’t have content protection enabled
  • $background: boolean Send this message as background message
  • $score: boolean When forwarding games, whether to include your score in the game
  • $scheduleDate: (integer|null) Schedule date.
  • $sendAs: (integer|string|null) Peer to send the message as.

getHTML(bool $allowTelegramTags = false): string

Get an HTML version of the message.

Parameters:

  • $allowTelegramTags: bool Whether to allow telegram-specific tags like tg-spoiler, tg-emoji, mention links and so on…

isReply(): boolean

Check if the current message replies to another message.

getReply(class-string<T> $class = 'danog\\MadelineProto\\EventHandler\\AbstractMessage'): ?T

Get replied-to message.

May return null if the replied-to message was deleted or if the message does not reply to any other message.

Parameters:

  • $class: class-string<T> Only return a reply if it is of the specified type, return null otherwise.

delete(boolean $revoke = true): void

Delete the message.

Parameters:

  • $revoke: boolean Whether to delete the message for all participants of the chat.

reply(string $message, \danog\MadelineProto\ParseMode $parseMode = \danog\MadelineProto\ParseMode::TEXT, (array|null) $replyMarkup = NULL, (integer|string|null) $sendAs = NULL, (integer|null) $scheduleDate = NULL, boolean $noWebpage = false, boolean $silent = false, boolean $noForwards = false, boolean $background = false, boolean $clearDraft = false, boolean $updateStickersetsOrder = false, ?\Amp\Cancellation $cancellation = NULL): \danog\MadelineProto\EventHandler\Message

Reply to the message.

Parameters:

  • $message: string Message to send
  • $parseMode: \danog\MadelineProto\ParseMode Parse mode
  • $replyMarkup: (array|null) Keyboard information.
  • $sendAs: (integer|string|null) Peer to send the message as.
  • $scheduleDate: (integer|null) Schedule date.
  • $noWebpage: boolean Set this flag to disable generation of the webpage preview
  • $silent: boolean Whether to send the message silently, without triggering notifications.
  • $noForwards: boolean Only for bots, disallows further re-forwarding and saving of the messages, even if the destination chat doesn’t have content protection enabled
  • $background: boolean Send this message as background message
  • $clearDraft: boolean Clears the draft field
  • $updateStickersetsOrder: boolean Whether to move used stickersets to top
  • $cancellation: ?\Amp\Cancellation

See also:

sendText(string $message, \danog\MadelineProto\ParseMode $parseMode = \danog\MadelineProto\ParseMode::TEXT, (array|null) $replyMarkup = NULL, (integer|string|null) $sendAs = NULL, (integer|null) $scheduleDate = NULL, boolean $noWebpage = false, boolean $silent = false, boolean $noForwards = false, boolean $background = false, boolean $clearDraft = false, boolean $updateStickersetsOrder = false, ?\Amp\Cancellation $cancellation = NULL): \danog\MadelineProto\EventHandler\Message

Send a text message.

Parameters:

  • $message: string Message to send
  • $parseMode: \danog\MadelineProto\ParseMode Parse mode
  • $replyMarkup: (array|null) Keyboard information.
  • $sendAs: (integer|string|null) Peer to send the message as.
  • $scheduleDate: (integer|null) Schedule date.
  • $noWebpage: boolean Set this flag to disable generation of the webpage preview
  • $silent: boolean Whether to send the message silently, without triggering notifications.
  • $noForwards: boolean Only for bots, disallows further re-forwarding and saving of the messages, even if the destination chat doesn’t have content protection enabled
  • $background: boolean Send this message as background message
  • $clearDraft: boolean Clears the draft field
  • $updateStickersetsOrder: boolean Whether to move used stickersets to top
  • $cancellation: ?\Amp\Cancellation

See also:

block(): boolean

Adds the user to the blacklist.

unblock(): boolean

Deletes the user from the blacklist.

getStories(): list<\danog\MadelineProto\EventHandler\AbstractStory>

Get user stories.

See also:

setAction(\danog\MadelineProto\EventHandler\Action $action = \danog\MadelineProto\EventHandler\Action\Typing::__set_state(array(]]): boolean

Sends a current user typing event (see SendMessageAction for all event types) to a conversation partner or group.

Parameters:

  • $action: \danog\MadelineProto\EventHandler\Action

See also:

read(boolean $readAll = false): boolean

Mark selected message as read.

Parameters:

  • $readAll: boolean

Return value: if set, read all messages in current chat.

enableTTL(int<1, max> $seconds = 86400): \danog\MadelineProto\EventHandler\Message\Service\DialogSetTTL

Set maximum Time-To-Live of all messages in the specified chat.

Parameters:

  • $seconds: int<1, max> Automatically delete all messages sent in the chat after this many seconds

See also:

disableTTL(): \danog\MadelineProto\EventHandler\Message\Service\DialogSetTTL

Disable Time-To-Live of all messages in the specified chat.

See also:

enableAutoTranslate(): boolean

Show the real-time chat translation popup for a certain chat.

disableAutoTranslate(): boolean

Hide the real-time chat translation popup for a certain chat.


Generated by danog/phpdoc