Aplikacje wbudowane

Obrazy Docker Antimatter zawierają zestaw aplikacji (wtyczek, w Konsoli systemu). Ta strona je wymienia, wskazuje, które są włączone po instalacji, i omawia ustawienia wymagane od administratora dla każdej z nich.

Wbudowane aplikacje

Aplikacje są wymieniane jako Wtyczki w Konsoli systemu. Znajdują się w obrazie (w /antimatter/prepackaged_plugins), są podpisane kluczem podpisywania aplikacji Antimatter, dzięki czemu instalują się bez połączenia z Internetem.

Archiwum wydania oraz pakiety .deb i .rpm zawierają mniej aplikacji: zobacz Aplikacje w pakietach i archiwum.

AplikacjaIdentyfikator aplikacjiObrazWłączona po instalacji
Agenci (AI)mattermost-aiobietak
Rozmowycom.mattermost.callsobietak
Kanbanfocalboardobietak
Playbookiplaybooksobietak
GitHubgithubobienie
GitLabcom.github.manland.mattermost-plugin-gitlabobienie
Jirajiraobienie
Metrykicom.mattermost.mattermost-plugin-metricsobienie
Kanały głosowecom.antimatterchat.voice-channelsantimatter-nexttak
Ankietycom.antimatterchat.pollsantimatter-nexttak
Notatkicom.antimatterchat.notesantimatter-nexttak
Biała tablicacom.antimatterchat.whiteboardantimatter-nexttak
Pocztacom.antimatterchat.mailantimatter-nexttak
Kalendarzcom.antimatterchat.calendarantimatter-nexttak
GIF-ycom.antimatterchat.gifsantimatter-nexttak
Memymemesantimatter-nextnie
Do zrobieniacom.mattermost.plugin-todoantimatter-nextnie

Aplikacje włączone domyślnie są instalowane przy każdym uruchomieniu, jeśli jeszcze nie są, lub aktualizowane, jeśli obraz zawiera nowszą wersję. Jeśli wyłączysz jedną z nich, pozostanie wyłączona: wartość domyślna dotyczy tylko aplikacji, które nie są jeszcze wymienione w konfiguracji. Aplikacje zachowujące identyfikator Mattermost (Agenci, Rozmowy, Kanban, Playbooki i integracje) to własne buildy Antimatter.

Włączanie, wyłączanie i konfigurowanie aplikacji

Przejdź do Konsola systemu › Wtyczki › Zarządzanie wtyczkami. Pod Zainstalowane wtyczki każda aplikacja ma opcje Włącz lub Wyłącz, Ustawienia i Usuń, a także wyświetla swój stan (Uruchamiana, Nie uruchomiona, Błąd uruchomienia…). Każda aplikacja z ustawieniami ma również własną stronę pod Konsola systemu › Wtyczki.

Wbudowane aplikacje, które są domyślnie wyłączone, są instalowane z własnej kopii obrazu: kliknij swoje zdjęcie na górze paska aplikacji i wybierz Sklep z Aplikacjami (w klasycznym interfejsie znajduje się w menu produktu), znajdź aplikację i kliknij Zainstaluj, a następnie włącz ją w Zarządzaniu wtyczkami. Z wiersza poleceń:

docker compose exec antimatter amctl --local plugin marketplace install github
docker compose exec antimatter amctl --local plugin enable github

Inne polecenia: amctl plugin list, amctl plugin disable <id>, amctl plugin delete <id>.

Włączanie aplikacji przez konfigurację

Które aplikacje są włączone, określa ustawienie PluginSettings.PluginStates, będące mapą identyfikatorów aplikacji. Możesz dołączyć do niej wpisy za pomocą amctl; przy włączonym Włącz Automatycznie Przygotowane Wtyczki (ustawienie domyślne) włączona wbudowana aplikacja zostanie zainstalowana przy następnym uruchomieniu:

docker compose exec -T antimatter amctl --local config patch /dev/stdin <<'EOF'
{"PluginSettings": {"PluginStates": {"com.mattermost.plugin-todo": {"Enable": true}}}}
EOF
docker compose restart antimatter

To również sposób na instalację aplikacji Do zrobienia, która nie jest oferowana w oknie sklepu. Zmienna AM_PLUGINSETTINGS_PLUGINSTATES również działa, ale zastępuje całą mapę: wymień wszystkie aplikacje, które chcesz włączyć.

Ustawienia aplikacji

Ustawienia aplikacji są przechowywane pod PluginSettings.Plugins.<app id>, a klucze zapisywane są małymi literami. Możesz je zmienić na stronie Konsola systemu danej aplikacji lub za pomocą polecenia amctl config patch, jak opisano w sekcji Konfiguracja. Zmienna AM_PLUGINSETTINGS_PLUGINS zastępuje ustawienia wszystkich aplikacji naraz i blokuje je, dlatego należy jej unikać.

GIF-y

Aplikacja GIFy dodaje zakładkę GIF-ów i naklejek do okna wyboru emoji, opartą na usłudze GIF-ów Antimatter (gifs-server), która komunikuje się z API Tenor. Plik compose witryny uruchamia usługę i konfiguruje aplikację za pomocą zmiennych. Jej ustawienia, w Konsola systemu › Wtyczki › GIFy:

UstawienieZmienna (wartość domyślna)DomyślnieOpis
Adres URL usługi GIFAM_GIFS_SERVICE_URLpustaPodstawowy adres API usługi, na przykład http://gifs:8080/v2. Funkcja GIF jest wyłączona, gdy to pole jest puste.
Klucz APIAM_GIFS_API_KEYpustaJeden z kluczy AM_GIFS_API_KEYS usługi.
Klucz przesyłaniaAM_GIFS_UPLOAD_KEYpustaJeden z kluczy AM_GIFS_UPLOAD_KEYS usługi. Pozwala użytkownikom dodawać GIF-y i naklejki z okna wyboru oraz usuwać te dodane w ten sposób. Puste pole wyłącza przesyłanie.
Kto może dodawać GIF-y i naklejkiAdministratorzy systemuAdministratorzy systemu lub Wszyscy. Goście nigdy nie mogą, podobnie jak w przypadku niestandardowych emoji. To, co dodają użytkownicy, jest dostępne dla wszystkich; osoba, która dodała element, oraz administratorzy systemu mogą go usunąć.
Włącz naklejkiwłączoneWyświetla zakładkę z naklejkami.
Filtr treściśredniwysoki, średni, niski lub wyłączony.
Serwuj media przez AntimatterwłączonePrzeglądarki pobierają GIF-y z Antimatter, a ten pobiera je z usługi. Pozostaw to włączone, jeśli usługa jest dostępna tylko w sieci wewnętrznej.
Adres URL mediów/media/ usługiLokalizacja mediów, gdy są serwowane bezpośrednio.
Rozmiar pamięci podręcznej (MB)64 MBPamięć podręczna aplikacji.

W przypadku tej aplikacji zmienne służą tylko jako wartości domyślne: wartość ustawiona w Konsoli systemu ma pierwszeństwo przed nimi. Jeśli okno wyboru GIF-ów pozostaje puste, sprawdź adres URL usługi i klucz API na tej stronie.

Podczas gdy aplikacja GIFy jest skonfigurowana, jej zakładka zastępuje wbudowany wybór Giphy (Konsola systemu › Integracje › GIF › Włącz wybieranie GIF-ów, ServiceSettings.EnableGifPicker).

Usługa GIF

Usługa przechowuje wszystko w swoim katalogu danych (/data, wolumen gifs): indeks wyszukiwania oraz media. Główne zmienne:

ZmiennaDomyślnieOpis
AM_GIFS_API_KEYSbrakKlucze API oddzielone przecinkami. Bez klucza API jest otwarte dla każdego, kto do niego dotrze. Kilka kluczy umożliwia ich rotację.
AM_GIFS_UPLOAD_KEYSbrakKlucze upoważnione do przesyłania oraz usuwania przesłanych elementów. Bez klucza przesyłanie jest niemożliwe.
AM_GIFS_RATE_LIMIT20Liczba żądań na sekundę na klienta (klucz API i adres); 0 wyłącza limit. Plik compose ustawia 0, ponieważ wszystkie żądania Antimatter współdzielą jeden klucz i adres.
AM_GIFS_LISTEN:8080Adres nasłuchiwania.
AM_GIFS_PUBLIC_URLz żądańZewnętrzny adres URL, jeśli udostępniasz usługę.
AM_GIFS_TRUST_PROXYfalseUfaj nagłówkom X-Forwarded-*, tylko za proxy.
AM_GIFS_UPLOAD_MAX_MB16Największy przesłany plik.

Aby dodać własne GIF-y hurtowo, zaimportuj je za pomocą manifestu z katalogu zamontowanego w jednorazowym kontenerze:

docker compose run --rm -v "$PWD/my-gifs:/import:ro" gifs import -manifest /import/manifest.json

Aby zaimportować ponownie naklejki startowe po aktualizacji: docker compose run --rm gifs stickers. Format manifestu i inne polecenia znajdziesz w README serwera GIF-ów.

Poczta i Kalendarz

Poczta i Kalendarz łączą każdą osobę z jej własną skrzynką pocztową (IMAP i SMTP) oraz własnym kalendarzem (CalDAV). Osoby wprowadzają w aplikacji dane serwera i hasło; hasła są przechowywane w zaszyfrowanej formie. Nie konfigurujesz dla nich serwerów poczty ani kalendarza, ale decydujesz, do czego mogą się łączyć:

AplikacjaUstawienieDomyślnieOpis
Poczta, KalendarzDozwól serwery poczty w sieciach prywatnych, Dozwól serwery kalendarza w sieciach prywatnych (AllowPrivateNetworks)WyłączoneWyłączone, serwer odmawia łączenia się z adresami pętli, prywatnymi i link-local, dzięki czemu aplikacje nie mogą być użyte do uzyskania dostępu do wewnętrznej sieci. Włącz tę opcję, jeśli serwer poczty lub kalendarza znajduje się pod adresem prywatnym.
Poczta, KalendarzDozwól połączenia niezaszyfrowane (AllowInsecureConnections)WyłączoneWyłączone, połączenia muszą używać TLS (Poczta: TLS lub STARTTLS; Kalendarz: HTTPS).
PocztaInterwał sprawdzania nieprzeczytanych (minuty) (UnreadCheckMinutes)2 minutyJak często sprawdzane są liczniki nieprzeczytanych, gdy serwer poczty nie może ich wysyłać aktywnie.
PocztaNajwiększy rozmiar wiadomości (MB) (MaxMessageSizeMB)25 MBLimit rozmiaru wysyłanych i odczytywanych wiadomości.
KalendarzWysyłaj przypomnienia (EnableReminders)włączoneBot Kalendarza wysyła wiadomość bezpośrednią przed wydarzeniami (10 minut przed, w przypadku wydarzeń bez własnego alarmu).

Aby umożliwić osobom logowanie do skrzynek Gmail lub Microsoft 365 za pomocą ich konta, zamiast hasła, utwórz klienta OAuth i wypełnij pola Google lub Microsoft w aplikacji Poczta:

  • Google: klient OAuth Web z API Gmail i zakresem https://mail.google.com/.
  • Microsoft: aplikacja Entra ID z uprawnieniami delegowanymi IMAP.AccessAsUser.All, SMTP.Send, offline_access, openid, email i profile. Domyślnie najemcą jest common.
  • W obu przypadkach URI przekierowania to https://chat.example.com/plugins/com.antimatterchat.mail/oauth/callback (adres URL Twojej strony).

Kanban, Notatki, Biała tablica, Ankiety i Playbooki

  • Kanban (focalboard) otwiera się w bocznym panelu obok rozmowy, podobnie jak Playbooks. Stare linki do stron /kanban/… i /boards/… otwierają tę samą tablicę lub kartę w społeczności. Jedyny parametr, Włącz publicznie udostępniane tablice (EnablePublicSharedBoards, wyłączony), pozwala twórcom tablic udostępniać je każdemu, kto posiada link, bez konieczności logowania.
  • Notatki i Ankiety nie mają ustawień.
  • Biała tablica: administratorzy systemu mogą w ustawieniach serwera przesłać biblioteki kształtów (pliki Excalidraw .excalidrawlib, do 5 MB każdy) dla całego serwera. Administratorzy społeczności zarządzają bibliotekami własnej społeczności.
  • Playbooki otwiera się w bocznym panelu. Stare linki do stron /playbooks/… otwierają ten sam przebieg lub playbook w społeczności. Posiada kilka ustawień, głównie eksperymentalnych funkcji; wartości domyślne nadają się do większości serwerów.
  • Memy: Kto może dodawać szablony memów: Wszyscy (domyślnie), Administratorzy systemu lub Nikt (wyłączone niestandardowe szablony), co blokuje dodawanie nowych szablonów, a już dodane pozostają w użyciu. Goście nigdy nie dodają szablonów. Osoba, która dodała szablon, oraz administratorzy systemu mogą go usunąć.
  • Do zrobienia nie ma ustawień serwera.

GitHub, GitLab i Jira

Te aplikacje łączą Antimatter z Twoim hostem kodu i systemem śledzenia problemów. Każda wymaga aplikacji OAuth po drugiej stronie oraz webhooka wskazującego z powrotem na Antimatter. Włącz aplikację, a następnie uruchom jej polecenie konfiguracji w dowolnym kanale, które przeprowadzi Cię krok po kroku: /github setup, /gitlab setup lub /jira setup.

AplikacjaAdres URL przekierowania OAuthAdres URL webhooka
GitHubhttps://chat.example.com/plugins/github/oauth/completehttps://chat.example.com/plugins/github/webhook
GitLabhttps://chat.example.com/plugins/com.github.manland.mattermost-plugin-gitlab/oauth/completehttps://chat.example.com/plugins/com.github.manland.mattermost-plugin-gitlab/webhook
Jira/jira instance install server <url> lub /jira instance install cloud-oauth <url>; /jira webhook wyświetla adresy URL webhooków.
Pozostaw Użyj preregisterowanej aplikacji OAuth wyłączone w aplikacjach GitHub i GitLab: opiera się ona na usłudze Mattermost, której Antimatter nie posiada, a aplikacja odmówi startu, jeśli jest włączona. Zarejestruj własną aplikację OAuth.

Aplikacje GitHub i GitLab generują sekret webhooka i klucz szyfrowania przy pierwszym zapisie. Aplikację GitHub można ograniczyć do organizacji (GithubOrg), a aplikację GitLab do grupy (GitlabGroup); w przypadku GitHub Enterprise lub własnego hostingu GitLab ustaw jego adres URL bazowy.

Metryki

Aplikacja Metryki zbiera metryki wydajności serwera do małej bazy danych szeregu czasowego wewnątrz Antimatter, dzięki czemu możesz je pobrać lub dołączyć do pakietu wsparcia bez uruchamiania Prometheus. Po uruchomieniu włącza punkt końcowy metryk serwera (MetricsSettings.Enable). Zobacz Operacje.

Instalowanie innych aplikacji

Antimatter uruchamia aplikacje Mattermost (wtyczki). Trzy sposoby dodania jednej z nich:

  • Z zdalnego sklepu z wtyczkami. Włącz Remote Marketplace (PluginSettings.EnableRemoteMarketplace) jest domyślnie wyłączony, a Adres URL sklepu z wtyczkami (PluginSettings.MarketplaceURL) jest pusty: Antimatter nie korzysta ze sklepu z wtyczkami Mattermost i ignoruje jego adres, jeśli konfiguracja z Mattermost go zawiera. Aby wyświetlić aplikacje z serwera sklepu, któremu ufasz, włącz to ustawienie i podaj jego adres URL. Wersje aplikacji dostarczanych przez Antimatter (Rozmowy, Playbooki, Kanban i inne) z tego sklepu są ukryte, więc nie mogą zastąpić wersji Antimatter: Zezwalaj na wersje wtyczek Antimatter z Marketplace (PluginSettings.AllowMarketplaceToReplaceAntimatterPlugins) jest domyślnie wyłączony.
  • Przez przesłanie pakietu (.tar.gz). Przesyłanie jest domyślnie wyłączone i nie ma przełącznika w Konsoli systemu: ustaw AM_PLUGINSETTINGS_ENABLEUPLOADS=true, a następnie użyj opcji Wyślij Wtyczkę w Zarządzaniu wtyczkami lub polecenia amctl --local plugin add app.tar.gz.
  • Z adresu URL: amctl plugin install-url <url>, również przy włączonym przesyłaniu.

Antimatter weryfikuje sygnatury aplikacji względem kluczy, którym ufa: klucz Antimatter, klucz, którym Mattermost, Inc. podpisuje swoje publikowane aplikacje (dzięki czemu aplikacja Mattermost pobrana samodzielnie może zostać zainstalowana) oraz dowolny klucz dodany w PluginSettings.SignaturePublicKeyFiles. Jeśli Wymagaj sygnatury wtyczki (PluginSettings.RequirePluginSignature, domyślnie wyłączone) jest włączone, aplikacje bez sygnatury są odrzucane, a przesyłanie jest wyłączone.

Aplikacja działa na serwerze i ma pełny dostęp do jego danych. Instaluj tylko aplikacje, którym ufasz.

Niektóre aplikacje przeznaczone dla płatnych edycji Mattermost samodzielnie sprawdzają licencję Mattermost i odmawiają działania; Antimatter nie udaje, że posiada taką licencję.