How to Configure Bridges in Matrix: WhatsApp, Telegram, and Discord

To bridge Matrix with WhatsApp, Telegram, or Discord, run a compatible bridge service beside your homeserver, register that service as a Matrix application service, and then link or authorize the external account. Each network needs its own bridge configuration and credentials. A running process alone does not prove that a room is bridged: test a message in both directions after setup.

Serwer domowy Matrix przekierowuje za pośrednictwem oddzielnych usług mostowych Matrix WhatsApp, Telegram i Discord do odpowiednich sieci przesyłania wiadomości.
One Matrix homeserver can connect to three separately configured bridge services.

This guide uses mautrix-whatsapp and mautrix-telegram, plus the Matrix.org project matrix-appservice-discord for Discord. A bridge is a separate server-side program, not a switch in Element. The Matrix specification calls this kind of integration an application service: it receives relevant homeserver events and can create users or rooms within the namespace registered for it. See the Matrix technical overview and the Application Service API specification.

Should you self-host the bridges or use a public instance?

Self-hosting gives you control over where the bridge runs, how logs and credentials are stored, and which users may connect. It also means you maintain three services, update them, protect their databases, and troubleshoot connectivity. A public bridge can be faster to try, but its operator controls availability, access policy, and data handling. Check the bridge's current documentation and support room before choosing an instance; availability and features can change.

These connections are not equivalent to native support from the messaging services. Bridged features may differ from network to network, and voice/video calls, reactions, edits, threads, read receipts, history, or group administration may be incomplete. Test the features your community actually depends on before moving important conversations.

What do you need before installing anything?

  • A Matrix homeserver that supports application services and administrator access to register them. The examples below use Synapse; other homeservers have their own registration process.
  • A reachable network path between the homeserver and each bridge. In Docker, localhost inside one container means that container itself; use a shared Docker network and the bridge service's network name when the homeserver must reach another container.
  • A separate configuration, registration file, persistent data location, and secret store for each bridge. Follow the current project instructions for supported databases, runtime versions, and container images; requirements differ and change.
  • W przypadku WhatsApp, telefon z kontem, które chcesz połączyć. W przypadku Telegrama, konto, na którym jesteś już zalogowany za pośrednictwem oficjalnego klienta Telegrama. W przypadku Discorda, aplikacja/bot Discorda i zgoda właściciela lub administratora serwera.
Przykładowy edytor YAML Synapse wyświetla oddzielne ścieżki do plików rejestracyjnych w app_service_config_files dla usług pomostowych WhatsApp, Telegram i Discord.
Synapse odczytuje każdy plik rejestracji mostu ze ścieżki skonfigurowanej w app_service_config_files; pokazane ścieżki są przykładowe.

Jak zarejestrować most w Synapse?

  1. Wdrażaj most po moście. Zacznij od aktualnej wersji i jej przykładowej konfiguracji. Ustaw adres serwera domowego, nazwę serwera publicznego, adres nasłuchiwacza mostu, bazę danych i ścieżki pamięci masowej zgodnie z instrukcją dla danego projektu. Unikaj współdzielenia jednej bazy danych między niepowiązanymi usługami mostu.
  2. Wygeneruj plik rejestracyjny. Proces konfiguracji mostu tworzy plik YAML rejestracyjny zawierający tokeny tożsamości i uwierzytelniania usługi aplikacji. Traktuj te tokeny jak hasła: ogranicz uprawnienia do plików, nie zatwierdzaj ich w Gicie i nie wklejaj w pokojach publicznych, zrzutach ekranu ani postach pomocy technicznej.
  3. Ustaw plik jako widoczny dla Synapse. Skopiuj lub zamontuj plik rejestracyjny, aby proces Synapse mógł go odczytać. Dodaj ścieżkę poniżej app_service_config_filesw pliku Synapse homeserver.yaml. Dodaj osobny wpis na liście dla każdego mostu; nie nadpisuj wpisu innej usługi. Przewodnik po rejestracji usługi aplikacji Mautrix opisuje ten proces i zaznacza, że ​​po zmianie listy rejestracyjnej należy ponownie uruchomić Synapse.
  4. Uruchom ponownie i sprawdź logi. Po zmianie rejestracji uruchom ponownie Synapse, a następnie uruchom most. Jeśli Synapse nie uruchomi się, najpierw sprawdź wcięcie YAML, ścieżkę do pliku w kontenerze i uprawnienia do odczytu. Jeśli most uruchomi się, ale nie będzie mógł się połączyć, sprawdź adres URL serwera domowego, trasę sieciową, certyfikat TLS i adres nasłuchiwacza.

W przypadku wdrożeń Dockera, skonfigurowany adres usługi aplikacji mostu musi być dostępny z kontenera serwera domowego. Wstępne uwagi dotyczące konfiguracji Mautrix wyjaśniają, dlaczego nazwa kontenera w sieci współdzielonej może działać, a localhostnie działa. Projekt Discorda dokumentuje również własny przepływ pracy rejestracji i przykładową konfigurację w pliku README .

Jak połączyć konto WhatsApp?

Po zarejestrowaniu i uruchomieniu aplikacji Mautrix-WhatsApp, otwórz prywatny czat Matrix z botem mostu i wyślij wiadomość login qr. Otwórz WhatsApp na telefonie, do którego przypisane jest konto, przejdź do sekcji „Połączone urządzenia” i zeskanuj kod wyświetlony przez most. Dokumentacja mostu opisuje również opcję parowania numeru telefonu; użyj metody aktualnie obsługiwanej przez zainstalowaną wersję. Nie kopiuj kodu logowania ani obrazu QR do pokoju publicznego.

Bezpośrednia rozmowa Matrixa z botem WhatsApp Bridge pokazuje polecenie logowania QR i monit o połączenie urządzeń obok ekranu telefonu.
Proces uwierzytelniania mostu WhatsApp wymaga połączenia mostu jako urządzenia z kontem WhatsApp na telefonie.

Podczas parowania zachowaj telefon i konto, a przed otwarciem pokoi w portalu upewnij się, że most zgłasza pomyślne logowanie. To połączenie konta odbywa się poprzez sesję w stylu urządzenia towarzyszącego; nie powoduje to przekształcenia mostu w oficjalną integrację z API WhatsApp Business. WhatsApp może zmienić sposób łączenia urządzeń, dlatego należy postępować zgodnie z aktualnymi instrukcjami uwierzytelniania Mautrix-WhatsApp . Most może synchronizować tylko historię udostępnianą przez usługę zewnętrzną połączonemu urządzeniu i implementowaną przez most.

Jak podłączyć Telegram?

Rozpocznij prywatną rozmowę z botem mautrix-telegram. Most obsługuje logowanie za pomocą kodu QR i sześciocyfrowy kod logowania wysyłany do już zalogowanego klienta Telegram; nie rejestruje nowego konta w Telegramie. Aby zalogować się za pomocą kodu QR, otwórz Telegram na telefonie, przejdź do Ustawienia > Urządzenia > Połącz urządzenie stacjonarne , a następnie wyślij login qrkod do bota mostu i zeskanuj go. Postępuj zgodnie z instrukcjami bota, jeśli Twoje konto Telegram ma włączoną weryfikację dwuetapową.

Bot Telegram Bridge wyświetla monit o podanie kodu QR do logowania, natomiast na telefonie wyświetlają się Ustawienia Telegramu, Urządzenia oraz Połącz urządzenie stacjonarne.
Ekran urządzenia Link Desktop Device w aplikacji Telegram służy do autoryzacji sesji mostu; etykiety menu mogą się różnić w zależności od wersji aplikacji.

Użyj konta, które jest już utworzone i przestrzegaj zasad logowania Telegrama. Opiekunowie mostu ostrzegają, że Telegram może traktować nowe konta korzystające z zewnętrznych aplikacji jako podejrzane; jest to ryzyko po stronie platformy, którego administrator Matrixa nie jest w stanie zagwarantować. Przed zalogowaniem zapoznaj się z instrukcją uwierzytelniania Mautrix-Telegram i zachowaj jednorazowy kod lub hasło w prywatnym czacie bota.

Jak skonfigurować Discorda?

Projekt matrix-appservice-discord korzysta z aplikacji i bota Discord. Utwórz aplikację w portalu programistów Discord , utwórz/skonfiguruj użytkownika bota i ustaw dane uwierzytelniające bota w konfiguracji mostu, korzystając z aktualnego przykładu projektu. Nie udostępniaj tokena bota. Uruchom udokumentowane polecenie lub przepływ authorization-link mostu, a następnie poproś właściciela serwera Discord o autoryzację bota dla wybranego serwera, udzielając mu tylko uprawnień wymaganych przez most.

Strona ustawień stylu portalu dla programistów zawiera sekcje Aplikacja, Bot i OAuth2 dla bota mostu Discord.
Konfiguracja Discorda zaczyna się od aplikacji i bota; dokładne pola i opcje autoryzacji są zgodne z bieżącym portalem Discorda i przykładową konfiguracją mostu.

W przypadku konkretnego kanału, należy uzyskać identyfikatory serwera i kanału za pomocą obsługiwanych narzędzi programistycznych Discorda, zaprosić bota mostu Matrix do pokoju Matrix i użyć udokumentowanego polecenia „room” mostu. Plik README zawiera przykład w formacie !discord bridge ServerID ChannelID; do utworzenia linku może być wymagana zgoda administratora. Nie należy używać identyfikatorów z ilustracji: należy je zastąpić rzeczywistymi identyfikatorami i potwierdzić polecenie oraz uprawnienia, porównując je z plikiem README dla zainstalowanej wersji.

Pokój Matrix zawiera przykładowe polecenie !discord bridge, po którym następują symbole zastępcze serwera i identyfikatora kanału.
Polecenie Discord room łączy pokój Matrix z serwerem Discord i kanałem; podmień prawdziwe identyfikatory i postępuj zgodnie z monitem o zatwierdzenie.

Discord jest szczególnie zależny od uprawnień botów i polityki serwera. Jeśli bot może dołączyć, ale wiadomości nie napływają, sprawdź, czy kanał jest dla niego widoczny, czy przyznano wymagane uprawnienia do wiadomości, a most zakończył wszelkie potwierdzenia administratora. Projekt jest oznaczony jako beta w pliku README, więc sprawdź aktualny status projektu i obsługiwane zachowania, zamiast zakładać, że każda funkcja Discorda jest dublowana.

Jak można sprawdzić czy most działa?

Najpierw skorzystaj z małego, prywatnego pokoju testowego i kanału o niskim ryzyku. Wyślij unikalną wiadomość tekstową z Matrix i potwierdź jej pojawienie się w usłudze zdalnej; następnie odpowiedz ze strony zdalnej i potwierdź, że odpowiedź pojawi się w Matrix. Sprawdź osobno atrybucję, wątki odpowiedzi, załączniki, edycje i reakcje, jeśli mają one znaczenie dla Twojego przypadku użycia. Zielony status procesu oznacza jedynie, że program jest uruchomiony: nie potwierdza, że ​​logowanie zakończyło się powodzeniem, bot ma dostęp do kanału ani że mapowanie pokoju na kanał jest poprawne.

Wiadomość testowa pojawia się zarówno w pokoju Matrix, jak i na kanale Discord, a pomiędzy dwoma panelami czatu pojawia się symbol łącza.
Przydatnym sposobem przeprowadzenia kompleksowej kontroli jest wysłanie wiadomości testowej w obu kierunkach i sprawdzenie, czy jej odpowiednik pojawia się w połączonym pokoju.

W przypadku niepowodzenia testu należy porównać dokładny czas wysłania komunikatu z logami mostu i serwera domowego. Przed udostępnieniem logów należy usunąć tokeny dostępu, numery telefonów, identyfikatory Discord (jeśli są poufne) oraz nazwiska kontaktów. W przypadku wdrożeń kontenerowych należy również sprawdzić, czy plik rejestracyjny jest zamontowany w Synapse, punkt końcowy mostu jest rozpoznawany w sieci współdzielonej i czy żadna zapora sieciowa nie blokuje skonfigurowanego odbiornika.

Panel dziennika w stylu terminala wyświetla neutralne linie statusu dla uruchomionego procesu mostu oraz dostępne połączenia z serwerem domowym i zdalnym.
Do sprawdzania stanu procesów i łączności używaj dzienników mostu i serwera domowego; te przykładowe wiersze stanu nie stanowią przechwyconych wyników diagnostycznych.

Co powinieneś wiedzieć o szyfrowaniu i prywatności?

Usługi aplikacji odbierają zdarzenia w przestrzeniach nazw i pokojach, do obsługi których są skonfigurowane. Nie należy zakładać, że zaszyfrowany pokój Matrix jest automatycznie odczytywalny przez każdy most. Niektóre mosty Mautrix obsługują szyfrowanie typu „end-to-bridge”, które musi być celowo skonfigurowane i ma własne wymagania dotyczące zarządzania kluczami; należy zapoznać się z przewodnikiem szyfrowania Mautrix typu „end-to-bridge” i zweryfikować obsługę konkretnego mostu. Możliwości szyfrowania mostu Discord mogą się różnić. Jeśli most nie obsługuje trybu szyfrowania pokoju, należy użyć odpowiedniego, niezaszyfrowanego pokoju testowego lub wybrać most z udokumentowaną obsługą, zamiast osłabiać pokój produkcyjny metodą domysłów.

Na koniec pamiętaj, że treść wiadomości i dane uwierzytelniające konta przechodzą przez oprogramowanie, którym zarządzasz lub które obsługuje publiczny operator mostu. Ogranicz liczbę osób, które mogą zapraszać boty mostu, chroń bazy danych i kopie zapasowe, wymień token w przypadku wycieku i zapoznaj się z aktualnymi wytycznymi dotyczącymi prywatności i bezpieczeństwa mostu. Przed aktualizacjami sprawdź ponownie dokumentację źródłową: klucze konfiguracyjne, przepływy logowania, zależności i zasady platformy mogą się zmieniać niezależnie.

Szybka lista kontrolna decyzji

  • Wybierz instancję mostu, której operatorowi i zasadom dostępu ufasz.
  • Zarejestruj każdy most osobno i chroń każdy wygenerowany token.
  • Sprawdź, czy serwer domowy może dotrzeć do adresu mostu po wdrożeniu.
  • Połącz prywatnie konta WhatsApp/Telegram i autoryzuj bota Discord u administratora serwera.
  • Przetestuj wiadomości w obu kierunkach, a następnie przetestuj tylko te dodatkowe funkcje, których potrzebujesz.
  • Przed wykorzystaniem mostu do komunikacji poufnej lub istotnej należy sprawdzić obsługę szyfrowania, historię zachowania i status konserwacji.

Zostaw komentarz

10 najlepszych narzędzi do pingowania w celu znajdowania urządzeń w sieci

10 najlepszych narzędzi do pingowania w celu znajdowania urządzeń w sieci

Porównaj 10 narzędzi do pingowania, które umożliwiają szybkie wykrywanie sieci LAN, skanowanie międzyplatformowe i zarządzanie adresami IP. Dowiedz się, co narzędzie pingujące może Ci powiedzieć, a czego nie.

6 najlepszych narzędzi do zarządzania siecią, umożliwiających śledzenie wydajności

6 najlepszych narzędzi do zarządzania siecią, umożliwiających śledzenie wydajności

Porównaj sześć narzędzi do zarządzania siecią służących do monitorowania wydajności, obejmujących zasięg SNMP, mapowanie, alerty, modele wdrażania i kompromisy kosztów.

Ping Monitor: 7 darmowych i otwartych narzędzi do monitorowania dostępności sieci

Ping Monitor: 7 darmowych i otwartych narzędzi do monitorowania dostępności sieci

Porównaj siedem darmowych i otwartych monitorów pingów — od kompletnych pakietów sieciowych po ukierunkowane sondy opóźnień — i wybierz odpowiedni monitor pod kątem dostępności, utraty pakietów i historii.

QoS w sieciach: czym jest jakość usług i jak działa

QoS w sieciach: czym jest jakość usług i jak działa

Dowiedz się, co oznacza QoS w sieciach, w jaki sposób oznaczenia DSCP i kolejki ruchu nadają priorytet aplikacjom głosowym, wideo i biznesowym oraz czego QoS nie jest w stanie naprawić.

Najlepsze oprogramowanie serwera SFTP do bezpiecznego przesyłania plików

Najlepsze oprogramowanie serwera SFTP do bezpiecznego przesyłania plików

Porównaj niezawodne oprogramowanie serwera SFTP dla systemów Windows i Linux, w tym OpenSSH, Bitvise, SolarWinds i SFTPGo. Znajdź rozwiązanie odpowiednie dla swoich potrzeb w zakresie bezpieczeństwa i transferu plików.

7 najlepszych narzędzi do zarządzania adresami IP dla zespołów sieciowych

7 najlepszych narzędzi do zarządzania adresami IP dla zespołów sieciowych

Porównaj siedem narzędzi do zarządzania adresami IP służących do wykrywania podsieci, koordynacji DNS i DHCP, inwentaryzacji sieci i otwartego oprogramowania IPAM.

6 najlepszych narzędzi do monitorowania serwerów Windows Server zapewniających lepszą dostępność i wydajność

6 najlepszych narzędzi do monitorowania serwerów Windows Server zapewniających lepszą dostępność i wydajność

Porównaj sześć narzędzi do monitorowania systemu Windows Server pod kątem zbierania danych systemu Windows, widoczności aplikacji, modelu wdrażania i licencjonowania, aby znaleźć odpowiednie rozwiązanie.

10 najlepszych narzędzi do skanowania sieci w celu wykrywania urządzeń i adresów IP

10 najlepszych narzędzi do skanowania sieci w celu wykrywania urządzeń i adresów IP

Porównaj narzędzia do skanowania sieciowego umożliwiające szybkie wykrywanie urządzeń, skanowanie adresów IP na wielu platformach oraz zarządzanie IPAM w przedsiębiorstwie. Znajdziesz tu wskazówki dotyczące dopasowania każdej opcji do swojej sieci.

Najlepsze praktyki monitorowania sieci: co śledzić i jakich narzędzi używać

Najlepsze praktyki monitorowania sieci: co śledzić i jakich narzędzi używać

Zbuduj praktyczny monitoring sieci z przejrzystym zakresem urządzeń, przydatnymi wskaźnikami wydajności, przydatnymi alertami oraz porównaniem SolarWinds NPM, PRTG i OpManager.

Jak używać Nmap do śledzenia trasy i odczytywania ścieżki sieciowej

Jak używać Nmap do śledzenia trasy i odczytywania ścieżki sieciowej

Użyj opcji --traceroute programu Nmap, aby mapować przeskoki do autoryzowanego hosta, zrozumieć dane wyjściowe dotyczące przeskoków i czasu RTT oraz rozwiązywać problemy z brakującymi odpowiedziami bez nadmiernego skanowania.