mirror of https://github.com/mautrix/docs.git
63 lines
3.0 KiB
Markdown
63 lines
3.0 KiB
Markdown
# Authentication
|
|
0. Open a private chat with the bridge bot. Usually `@discordbot:your.server`
|
|
* If the bot doesn't accept the invite, see the [troubleshooting page](../../general/troubleshooting.md)
|
|
1. Follow one of the three instructions below.
|
|
|
|
**N.B.** Discord may ban users who are too suspicious. The bridge shouldn't be
|
|
too suspicious by default, but if you want to avoid any risk, use a bot account.
|
|
|
|
## QR login
|
|
QR login is more convenient, but requires having the Discord mobile app
|
|
installed, and may encounter CAPTCHAs which are currently not supported by the
|
|
bridge.
|
|
|
|
1. Send `login-qr` to start the login.
|
|
2. Log in by scanning the QR code with a Discord mobile app.
|
|
* After scanning the code, you'll need to approve the login on the mobile app.
|
|
See the [official docs] for more info.
|
|
* The app can be uninstalled afterwards.
|
|
3. If you encounter a bad request error saying something about a captcha,
|
|
you'll have to use token login. Otherwise the login should be successful.
|
|
|
|
[official docs]: https://support.discord.com/hc/en-us/articles/360039213771-QR-Code-Login-FAQ
|
|
|
|
## Token login
|
|
You can also log in by logging in manually and providing the access token to
|
|
the bridge.
|
|
|
|
1. Log in to Discord in a browser. A private window is recommended so you can
|
|
easily make the browser forget the token without invalidating it.
|
|
2. Press <kbd>F12</kbd> (or <kbd>Cmd</kbd>+<kbd>Shift</kbd>+<kbd>I</kbd> on Mac)
|
|
to open developer tools.
|
|
3. Select the "Network" tab and filter for `api`.
|
|
4. Press <kbd>F5</kbd> (or <kbd>Cmd</kbd>+<kbd>R</kbd> on Mac) to reload the page.
|
|
5. Pick any successful request (e.g. the `library` request). Scroll down to
|
|
"Request Headers" and find the `Authorization` header. Right-click the entry
|
|
and choose copy value.
|
|
7. Send `login-token user <token>` to the bot
|
|
(replacing `<token>` with the copied value).
|
|
8. (Close the private window)
|
|
|
|
## Bot token login
|
|
If you don't want to use a real account, you can also log in as a bot.
|
|
|
|
1. Create an application on <https://discord.com/developers/applications>.
|
|
2. In the "Bot" section, add a bot and copy the token.
|
|
3. Enable "server members intent" and "message content intent" under the
|
|
"Privileged Gateway Intents" section.
|
|
4. Send `login-token bot <token>`
|
|
5. To add your bot to a guild, go to OAuth2 -> URL Generator, select "bot"
|
|
under scopes and select the permissions to grant. The generated URL can then
|
|
be used to add the bot to a guild.
|
|
* At least "Send Messages", "Create Public Threads", "Send Messages in
|
|
Threads", "Read Message History" and "Add Reactions" are recommended.
|
|
* If you're the guild admin, you can just choose "Administrator" for the
|
|
bot and not worry about exact permissions.
|
|
|
|
---
|
|
|
|
After a successful login, the bridge will create portals for some recent DMs
|
|
(some is defined by `startup_private_channel_create_limit` in the bridge config).
|
|
Messages can also be backfilled, but that is disabled by default (the limit is 0).
|
|
To bridge guilds, use the `guilds` command.
|