Skip to main content

Overview

When a member posts the link of a message of this server (https://discord.com/channels/..., copied with Copy Message Link), Petto answers with an embed of that message: who wrote it, its text, its first picture, its other files, any sticker, who it replies to, the channel and the time, and a Jump to message button. It is a way to bring a message into a conversation without sending people to scroll for it. It is off in every server until a member with Manage Server turns it on. A server that never turns it on sees no change at all.

Commands

It needs Manage Server. !messagelinks also works as !msglinks, !linkembed and !mlinks, and as the slash command /messagelinks. With no subcommand it shows the status.
  • on and off turn the feature on or off for the server. When you turn it on, Petto says if it lacks Embed Links in the channel you are in.
  • status shows whether it is on, the ignored channels and the rules below.
  • ignore stops Petto from opening links posted in that channel, and from opening messages that live in it. A thread is ignored when its channel is. Up to 50 channels.
  • unignore takes a channel off that list.
The same switch and the list of ignored channels are in the dashboard: Community, Settings, the card Message link embeds.

Who can see what

This feature shows the content of a message, so it follows strict rules, and when one of them is not met Petto does nothing and says nothing.
  • Only what the member who posted the link can already see. Petto checks the permissions of that member in the linked channel (or thread): they need View Channel and Read Message History there. A private thread is shown only to someone who is in it or can manage threads.
  • Petto needs the same permissions in the linked channel, and Embed Links and Send Messages where the link was posted. Without Embed Links it shows nothing and notes it once in its log.
  • Same server only. A link to a message of another server is ignored.
  • NSFW channels are never shown in a channel that is not NSFW.
  • Ignored channels are not read and not shown, in either direction.

What is left alone

  • Links inside code (`like this` or a code block), inside a spoiler, or written as <https://...>, the way Discord asks for no preview.
  • Links posted by a bot or a webhook, and links to system messages, to messages only the person who used a command could see, or to messages that were deleted.
  • A link to the message that contains it.
  • A message that has more than 3 links: only the first 3 are shown, in one answer.

What the embed shows

  • The name and the avatar of the author, with a link to the message.
  • The text, cut at the limit of an embed. A message of a bot that only has an embed shows the title and the text of that embed.
  • The first picture attached (or, if there is none, the first picture of an embed of the message) as the image. A picture sent as a spoiler is only listed as a link.
  • The other files, and the other pictures of embeds, listed by name with their links.
  • A note for each sticker, and a line for who the message replies to.
  • The channel and the time in the footer, and the Jump to message button.
Videos, audio, polls and music are not played or drawn: a video is listed as a file.

Limits and privacy

  • At most 3 links per message and one answer every 3 seconds in each channel, so a flood of links cannot be used to spam. There is no other limit, and none depends on a plan.
  • The answer is a reply to the message with the link, it pings nobody (not the author of the shown message, not the member who posted the link), and it never deletes or edits the member’s message, even if it only has the link.
  • Petto keeps nothing: it reads the one message that is linked, builds the embed and lets it go. Only the switch and the list of ignored channels are saved.
Changing the setting in the dashboard reaches the bot within a moment; with the command it is immediate.