# What can [Watch Door Bot](https://t.me/WatchDoorBot) do?
[TOC]
## Feature List
### Welcome Message
You can use reply to create a new welcome message:
`$first_name` will be replace to the first name
`$last_name` will be replace to the last name
`$id` will be replace to the id
`$username` will be replace to the username
`$name` will be replace to the full name with tag
`$title` will be replace to group's title
default text formatting is Markdown
If you want to use `$name` the formatting will be Markdown
* customize welcome message
* delete previous welcome message(always on)
* you can use some link, bold, italic, or italic in your welcome message
use `!welcome_formatting [html/markdown/none]` to set which [formatting](https://core.telegram.org/bots/api#formatting-options)
### Captcha Button (below welcome message)
* use `!captcha [on/off]` to set
* or reply the message and send `!captcha` to set text on captcha button
* captcha button pressed message
- `!unrestrict` and reply a text message to set
what to alert after captcha button pressed
### Restrict New Member
* restrict new member setting
* use `/auto_restrict [on/off]` to set
### @admin to mention all admin
* `!admin [on/off]` to set
* after @admin bot will forward the original message to chat automatically
### Command to Kick/Mute Member
==All command start with `/` also can start with `!`==
The different between /command and !command is
if you enable `auto delete bot command`, /command will not leave any message after the command is complete.
But !command will mention sender and the member
#### Mute Member
* send `/mute [by reply|mention|id|username]` to mute member
* also can use `/mute time`
+ time means how long will the member be limit
+ time option:
- d = day(s)
- h = hour(s)
- m = minute(s)
+ according to telegram default setting, If user is banned for more than 366 days or less than 30 seconds from the current time they are considered to be banned forever
:::info
time mush use as `5d12h` or `1d` without any space
:::
* only admin has right to `Ban Users` can use this command
#### Kick/Mute Member
* send `/ban [reply|mention|id|username]` or `/kick [reply|mention|id|username]` to mute member
#### Unmute Member
* send `/unmute [reply|mention|id|username]` or `/un [reply|mention|id|username]` to mute member
* only admin has right to `Ban Users` can use this command
#### Kick Member
* like [`/mute`](#mute-member) can use `/ban time` to ban user for limit time
* only admin has right to `Ban Users` can use this command
#### Unban
* reply message and send /unban to unban the user
+ After this command the user will not come back to group, but can join group via link or be invited by other member
* only admin has right to `Ban Users` can use this command
#### kickme
* any member can use `/kickme` to kick himself.
5 minutes later they can join via invited link again.
### warning system
#### warn
* `/warn [by reply]`
* like [`/mute`](#mute-member) can use `/warn time` to ban user for limit time
* eg: `/warn text_mention 5h`, warn will auto remove after 5 hours
#### silent warn
* use `/sw [time]` to warn silent
#### unwarn
* `/unwarn [by reply|usernane|id|text mention]` to remove first warn records in this group
#### warns
* `/warns [by reply|usernane|id|text mention]` to list warn records in this group
#### user
* `/user [by reply|usernane|id|text mention]` to list warn records ==in ALL the group==
#### warnmax
* `/warnmax [number]` to set the max number of the warns before the kick
### Only Admin can Invited Bot
* if member invited the bot will be kicked
- only admin to invited bot
- `!kickbot [on/off]` to set
* kick member who invited bot|
- `!kick_member_invite_bot [on/off]` to set
### Auto Delete Message
* `/setting` to edit auto delete
only the sender can edit on each times
#### option: admin's message not delete
#### type:
* joins
* leaves
* bot command
* A pinned B message
* game
* sticker
* hashtag
* cashtag
* text
* photos
* voice
* document
* contact
* forward
* email
* mention
* link
## TODO
* kick who send auto delete item
* auto unshort URL
* /id
* you can tell me [smailzhubot](https://t.me/smailzhubot)
## Consider
* delete text according to regex
* /setchatphoto