Settings & Features

Here is a list of settings supported by Junction Bot:

1. Filtering

  • by word
  • by regex
  • receiving only N-th message
  • filtering out duplicates

2. Modification & Replace

  • change message’s title
  • change the link to the original message
  • change message body with Before After
  • change message body with Replace

3. Content changes

  • change the look of captions
  • change the look of the author’s name
  • shorten long messages

4. Buttons

  • add feedback buttons
  • copy original buttons
  • add your custom buttons

5. Other

  • forward edited messages
  • set a delay
  • pin messages
  • forward polls
  • change bot’s language

Applying settings to one or all channels

Please note that all settings which start with the command /setting can be applied either to all your channels or to a specific channel.

/setting - apply changes to all channels.
/settingchannel - apply changes to one source only.

Format: 
/setting setting_name value
/settingchannel source_channel_reference setting_name value

Referencing a source channel

In many commands you need to use a reference to a source (which can be: a channel, a group, a chat or a bot) as an argument. In examples it usually looks like source_channel_reference or just channel_reference. As a reference you can use:

  1. For Direct Connection: use the virtual number of a channel, chat or bot.
  2. Name of a channel/group (starts with @) – for public channels and groups.
  3. Link to a channel/group (like https://t.me/mychannel) – for public channels and groups.
  4. Invitation link to a channel/group – for private channels and groups.
Examples:
/settingchannel @mychannel header none
/settingchannel https://t.me/mychannel header none
/settingchannel https://t.me/joinchat/AAAAAffffSSSShhhh header none

For Direct Connection users:
/settingchannel &31612345678#78787878 header none

If you have multiple forwarding rules from the same source to different destinations, you can set different settings, filters and replacements for different destinations. See more details here.

Checking current settings

To see which settings are currently set on the source channel use the command /settingchannel.

/settingchannel source_channel_reference setting_name

where setting_name – should be one of the possible setting types.

You can see all possible setting types with the command

/settingchannel source_channel_reference

Using intermediate channels

If you need to apply some really complex rules you may need to create an intermediate channel to arrange everything.

For example you want all the messages be forwarded from A to B. But for messages that include a certain text you want to apply a setting after.

It’s quite tricky. The only way to do it is to create in intermediate channel, let’s call it C. Then you set up the following forwards:
A -> B for all messages without a certain text.
A -> C for all messages with a certain text.
C -> B for all messages.

Next, you add a setting after to a forward C -> B.