Paketlenmiş uygulamalar

Antimatter'ın Docker görüntüleri, bir dizi uygulama (Sistem Konsolu'ndaki adıyla eklenti) ile birlikte gelir. Bu sayfa bu uygulamaları listeler, kurulumdan sonra hangilerinin açık olduğunu belirtir ve her birinin yönetici tarafından yapılması gereken ayarlarını ele alır.

Görüntüde yer alan uygulamalar

Uygulamalar, Sistem Konsolu'nda Uygulama ekleri olarak listelenir. Görüntünün içinde (/antimatter/prepackaged_plugins dizininde) bulunurlar ve Antimatter uygulama imzalama anahtarıyla imzalandıkları için internet bağlantısı olmadan kurulabilirler.

Sürüm arşivi ve .deb ile .rpm paketleri daha az uygulama içerir: Paketlerde ve arşivdeki uygulamalar bölümüne bakın.

UygulamaUygulama kimliğiGörüntüKurulumdan sonra açık mı?
Ajanlar (Yapay zekâ)mattermost-aiher ikisi deevet
Aramalarcom.mattermost.callsher ikisi deevet
Kanbanfocalboardher ikisi deevet
Playbook'larplaybooksher ikisi deevet
GitHubgithubher ikisi dehayır
GitLabcom.github.manland.mattermost-plugin-gitlabher ikisi dehayır
Jirajiraher ikisi dehayır
Metriklercom.mattermost.mattermost-plugin-metricsher ikisi dehayır
Ses kanallarıcom.antimatterchat.voice-channelsantimatter-nextevet
Anketlercom.antimatterchat.pollsantimatter-nextevet
Notlarcom.antimatterchat.notesantimatter-nextevet
Beyaz tahtacom.antimatterchat.whiteboardantimatter-nextevet
E-postacom.antimatterchat.mailantimatter-nextevet
Takvimcom.antimatterchat.calendarantimatter-nextevet
GIF'lercom.antimatterchat.gifsantimatter-nextevet
Mizahmemesantimatter-nexthayır
Yapılacaklarcom.mattermost.plugin-todoantimatter-nexthayır

Varsayılan olarak açık olan uygulamalar, henüz kurulu değilse her başlangıçta kurulur; görüntüde daha yeni bir sürüm varsa yükseltilir. Bir uygulamayı devre dışı bırakırsanız, devre dışı kalır: varsayılan ayar yalnızca yapılandırmada henüz yer almayan uygulamalara uygulanır. Mattermost kimliğini koruyan uygulamalar (Ajanlar, Aramalar, Kanban, Playbook'lar ve entegrasyonlar) Antimatter'ın kendi derlemeleridir.

Uygulamaları etkinleştirme, devre dışı bırakma ve yapılandırma

Sistem Konsolu › Uygulama ekleri › Uygulama eki yönetimi bölümüne gidin. Kurulu uygulama ekleri altında her uygulamanın Kullanıma al veya Kullanımdan kaldır, Ayarlar ve Kaldır düğmeleri vardır ve durumu (Çalışıyor, Çalışmıyor, Başlatılamadı…) gösterilir. Ayarları olan her uygulamanın ayrıca Sistem Konsolu › Uygulama ekleri altında kendi sayfası da vardır.

Varsayılan olarak kapalı gelen yerleşik uygulamalar, imgenin kendi kopyasından kurulur: Uygulama rayının üst kısmındaki profil resminize tıklayıp Uygulama mağazası seçeneğini seçin (klasik arayüzde bu seçenek ürün menüsündedir), uygulamayı bulun ve Kur düğmesine tıklayın, ardından Eklenti Yönetimi bölümünde etkinleştirin. Komut satırından:

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

Diğer komutlar: amctl plugin list, amctl plugin disable <id>, amctl plugin delete <id>.

Yapılandırma üzerinden uygulamaları etkinleştirme

Hangi uygulamaların açık olduğu, PluginSettings.PluginStates ayarıyla belirlenir; bu, uygulama kimliklerinden oluşan bir haritadır. Girdileri amctl ile birleştirebilirsiniz; Hazır uygulama eki paketleri otomatik kurulsun seçeneği açıkken (varsayılan), etkinleştirilen bir görüntü uygulaması bir sonraki başlangıçta kurulur:

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

Mağaza penceresinde sunulmayan Todo uygulamasını kurmanın yolu da budur. AM_PLUGINSETTINGS_PLUGINSTATES değişkeni de işe yarar, ancak tüm haritayı değiştirir: açık olmasını istediğiniz her uygulamayı listelemelisiniz.

Uygulama ayarları

Uygulama ayarları, anahtarlar küçük harfle yazılmış şekilde PluginSettings.Plugins.<app id> altında saklanır. Bunları uygulamanın Sistem Konsolu sayfasından veya Yapılandırma bölümünde gösterildiği gibi amctl config patch komutuyla değiştirebilirsiniz. AM_PLUGINSETTINGS_PLUGINS tüm uygulamaların ayarlarını tek seferde değiştirir ve hepsini kilitler, bu yüzden kullanmaktan kaçının.

GIF'ler

GIFs uygulaması, emoji seçicisine GIF ve çıkartma sekmesi ekler. Bu sekme, Tenor API'si kullanan Antimatter GIF hizmeti (gifs-server) tarafından desteklenir. Sitein compose dosyası hizmeti çalıştırır ve değişkenler aracılığıyla uygulamayı yapılandırır. Ayarları, Sistem Konsolu › Uygulama ekleri › GIF görselleri bölümünde bulunur:

AyarDeğişken (yedek)VarsayılanNe işe yarar
GIF hizmeti URL'siAM_GIFS_SERVICE_URLboşHizmetin API taban adresi, örneğin http://gifs:8080/v2. Bu alan boşken GIF'ler devre dışıdır.
API anahtarıAM_GIFS_API_KEYboşHizmetin AM_GIFS_API_KEYS değerlerinden biri.
Yükleme anahtarıAM_GIFS_UPLOAD_KEYboşHizmetin AM_GIFS_UPLOAD_KEYS değerlerinden biri. Kullanıcıların seçiciden GIF ve çıkartma eklemesini ve bu şekilde eklenenleri silmesini sağlar. Boş bırakılırsa yüklemeler devre dışı kalır.
GIF ve çıkartma ekleyebilecek kişilerSistem yöneticileriSistem yöneticileri veya Herkes. Özel emojilerde olduğu gibi konuklar asla ekleyemez. Kullanıcıların ekledikleri içerik herkesin kullanımına açıktır; ekleyen kişi ve sistem yöneticileri bu içeriği silebilir.
Çıkartmaları etkinleştiraçıkÇıkartma sekmesini gösterir.
İçerik filtresiortaYüksek, orta, düşük veya devre dışı.
Medyayı Antimatter üzerinden sunaçıkTarayıcılar GIF'leri Antimatter'dan yükler, Antimatter ise onları hizmetten alır. Hizmet yalnızca dahili ağınızda erişilebilir olduğunda bunu açık bırakın.
Medya URL'sihizmetin /media/ yoluMedyanın doğrudan sunulduğunda bulunduğu yer.
Önbellek boyutu (MB)64 MBUygulamanın bellek önbelleği.

Bu uygulama için değişkenler yalnızca yedek değerlerdir: Sistem Konsolu'nda ayarlanan bir değer, bunlara öncelik kazanır. GIF seçici boş kalırsa, o sayfadaki hizmet URL'sini ve API anahtarını kontrol edin.

GIFs uygulaması yapılandırılırken, sekmesi yerleşik Giphy seçicisinin yerini alır (Sistem Konsolu › Bütünleştirmeler › GIF › GIF seçici kullanılsın, ServiceSettings.EnableGifPicker).

GIF hizmeti

Hizmet, her şeyi veri dizininde (/data, gifs hacmi) saklar: bir arama dizini ve medya dosyaları. Ana değişkenleri:

DeğişkenVarsayılanNe işe yarar
AM_GIFS_API_KEYSyokVirgülle ayrılmış API anahtarları. Anahtar olmadan API, ona ulaşabilen herkese açıktır. Birden fazla anahtar, anahtarları döndürmenize olanak tanır.
AM_GIFS_UPLOAD_KEYSyokYükleme ve yüklenenleri silme izni verilen anahtarlar. En az bir anahtar olmadan yükleme yapılamaz.
AM_GIFS_RATE_LIMIT20İstemci başına saniyede istek sayısı (API anahtarı ve adres); 0 devre dışı bırakır. Compose dosyası 0 değerini ayarlar, çünkü Antimatter'ın tüm istekleri tek bir anahtar ve adres paylaşır.
AM_GIFS_LISTEN:8080Dinleme adresi.
AM_GIFS_PUBLIC_URListeklerdenHizmeti dışa açtığınızda dış URL.
AM_GIFS_TRUST_PROXYfalseYalnızca bir vekilin arkasında X-Forwarded-* başlıklarına güvenin.
AM_GIFS_UPLOAD_MAX_MB16Yüklenen en büyük dosya.

Kendi GIF'lerinizi toplu olarak eklemek için, bunları bir manifest ile, tek seferlik bir konteynere bağlanmış bir dizinden içe aktarın:

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

Bir yükseltmeden sonra başlangıç çıkartmalarını yeniden içe aktarmak için: docker compose run --rm gifs stickers. Manifest biçimi ve diğer komutlar gifs-server README'sindedir.

E-posta ve Takvim

E-posta ve Takvim, her kişiyi kendi e-posta kutusuna (IMAP ve SMTP) ve kendi takvimine (CalDAV) bağlar. Kişiler sunucu ve şifrelerini uygulamaya girer; şifreler şifreli olarak saklanır. Onlar için e-posta veya takvim sunucularını yapılandırmazsınız, ancak neye bağlanabileceklerine siz karar verirsiniz:

UygulamaAyarVarsayılanNe işe yarar
E-posta, TakvimÖzel ağlardaki e-posta sunucularına izin ver, Özel ağlardaki takvim sunucularına izin ver (AllowPrivateNetworks)kapalıKapalıyken, sunucu döngü içi (loopback), özel ve bağlantı yerel (link-local) adreslere bağlanmayı reddeder, böylece uygulamalar dahili ağınıza erişmek için kullanılamaz. E-posta veya takvim sunucunuz özel bir adreste ise bunu açın.
E-posta, TakvimŞifrelenmemiş bağlantılara izin ver (AllowInsecureConnections)kapalıKapalıyken, bağlantıların TLS kullanması gerekir (E-posta: TLS veya STARTTLS; Takvim: HTTPS).
E-postaOkunmamış denetim aralığı (dakika) (UnreadCheckMinutes)2 dakikaE-posta sunucusu bunları itemediğinde okunmamış sayılarının ne sıklıkla denetlendiği.
E-postaEn büyük ileti boyutu (MB) (MaxMessageSizeMB)25 MBGönderilen ve okunan iletilerin boyut sınırı.
TakvimHatırlatıcılar gönder (EnableReminders)açıkTakvim botu, etkinliklerden önce (kendi alarmı olmayan etkinlikler için 10 dakika önce) bir Doğrudan ileti gönderir.

Kişilerin şifre yerine hesaplarıyla Gmail veya Microsoft 365 e-posta kutularına giriş yapabilmeleri için bir OAuth istemcisi oluşturun ve E-posta uygulamasının Google veya Microsoft alanlarını doldurun:

  • Google: Gmail API'si ve https://mail.google.com/ kapsamına sahip bir Web OAuth istemcisi.
  • Microsoft: IMAP.AccessAsUser.All, SMTP.Send, offline_access, openid, email ve profile devredilen izinlerine sahip bir Entra ID uygulaması. Kiracı (tenant) varsayılan olarak common'dır.
  • Her ikisinde de yönlendirme URI'si https://chat.example.com/plugins/com.antimatterchat.mail/oauth/callback'dir (sitenizin URL'si).

Kanban, Notlar, Beyaz Tahta, Anketler ve Playbook'lar

  • Kanban (focalboard), Playbook'lar gibi sohbetin yanındaki yan panelde açılır. /kanban/… ve /boards/… sayfalarına giden eski bağlantılar, aynı pano veya kartı bir toplulukta açar. Tek ayarı olan Genel Olarak Paylaşılan Panoları Etkinleştir (EnablePublicSharedBoards, kapalı), pano düzenleyicilerinin bir panoyu giriş yapmadan, bağlantıya sahip olan herkesle paylaşmasına olanak tanır.
  • Notes ve Polls uygulamalarının ayarı yoktur.
  • Whiteboard: Sistem yöneticileri, tüm sunucu için ayarlar sayfasından şekil kütüphaneleri (her biri en fazla 5 MB olan Excalidraw .excalidrawlib dosyaları) yükleyebilir. Topluluk yöneticileri kendi topluluklarının kütüphanelerini yönetir.
  • Playbook'lar yan panelinde açılır. /playbooks/… sayfalarına giden eski bağlantılar, aynı çalıştırmayı veya playbook'u bir toplulukta açar. Birkaç ayarı vardır, çoğu deneysel özelliklerdir; varsayılanlar çoğu sunucu için uygundur.
  • Meme'ler: Meme şablonları kimler tarafından eklenebilir: Herkes (varsayılan), Sistem yöneticileri veya Kimsenin (özel şablonlar kapalı); bu seçenek yeni şablon eklenmesini engellerken, daha önce eklenenlerin kullanılabilir olmasını sağlar. Konuklar asla şablon ekleyemez. Şablonu ekleyen kişi ve sistem yöneticileri bu şablonu silebilir.
  • Todo uygulamasının sunucu ayarı yoktur.

GitHub, GitLab ve Jira

Bu uygulamalar Antimatter'ı kod barındırma ve sorun izleme sistemlerinize bağlar. Her biri karşı tarafta bir OAuth uygulaması ve Antimatter'a geri dönen bir webhook gerektirir. Uygulamayı etkinleştirin, ardından herhangi bir kanalda kurulum komutunu çalıştırın; bu komut sizi adım adım yönlendirir: /github setup, /gitlab setup veya /jira setup.

UygulamaOAuth yönlendirme URL'siWebhook URL'si
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> veya /jira instance install cloud-oauth <url>; /jira webhook webhook URL'lerini görüntüler.
GitHub ve GitLab uygulamalarında Use Preregistered OAuth Application ayarını kapalı bırakın: bu ayar, Antimatter'ın sahip olmadığı bir Mattermost hizmetine dayanır ve açıkken uygulama başlatmayı reddeder. Kendi OAuth uygulamanızı kaydedin.

GitHub ve GitLab uygulamaları, webhook gizli anahtarını ve şifreleme anahtarını ilk kaydetme sırasında oluşturur. GitHub uygulaması kuruluşlarla (GithubOrg), GitLab uygulaması ise gruplarla (GitlabGroup) sınırlanabilir; GitHub Enterprise veya kendi barındırdığınız GitLab için taban URL'sini ayarlayın.

Metrikler

Metrics uygulaması, sunucunun performans metriklerini Antimatter içindeki küçük bir zaman serisi veritabanına toplar; böylece Prometheus çalıştırmadan metrikleri indirebilir veya destek paketlerine ekleyebilirsiniz. Uygulama başladığında sunucunun metrik uç noktasını (MetricsSettings.Enable) etkinleştirir. Operations bölümüne bakın.

Diğer uygulamaların yüklenmesi

Antimatter, Mattermost uygulamalarını (eklentileri) çalıştırır. Bir uygulama eklemenin üç yolu vardır:

  • Uzak bir mağazadan. Uzak mağaza kullanılsın (PluginSettings.EnableRemoteMarketplace) varsayılan olarak kapalıdır ve Mağaza adresi (PluginSettings.MarketplaceURL) boştur: Antimatter, Mattermost'un mağazasını kullanmaz ve Mattermost'tan devralınan bir yapılandırmada adres hâlâ varsa onu yok sayar. Güvendiğiniz bir mağaza sunucusundaki uygulamaları listelemek için ayarı açın ve adresini girin. Antimatter'in birlikte geldiği uygulamaların (Calls, Playbooks, Kanban ve diğerleri) mağaza sürümleri gizlenir, böylece Antimatter'in kendi sürümlerinin yerini alamazlar: Antimatter Eklentilerinin Pazar Yeri Sürümlerine İzin Ver (PluginSettings.AllowMarketplaceToReplaceAntimatterPlugins) varsayılan olarak kapalıdır.
  • Bir paket yükleyerek (.tar.gz). Yüklemeler varsayılan olarak kapalıdır ve Sistem Konsolu'nda bir anahtarı yoktur: AM_PLUGINSETTINGS_ENABLEUPLOADS=true değerini ayarlayın, ardından Uygulama Yönetimi'ndeki Uygulama eki yükle seçeneğini veya amctl --local plugin add app.tar.gz komutunu kullanın.
  • Bir URL'den: amctl plugin install-url <url>, bu da yüklemeler açıkken kullanılır.

Antimatter, uygulama imzalarını güvendiği anahtarlarla karşılaştırır: Antimatter anahtarı, Mattermost, Inc.'in yayınladığı uygulamaları imzaladığı anahtar (böylece kendiniz indirip yüklediğiniz bir Mattermost uygulaması kurulabilir) ve PluginSettings.SignaturePublicKeyFiles içinde eklediğiniz herhangi bir anahtar. Uygulama eki imzası istensin (PluginSettings.RequirePluginSignature, varsayılan olarak kapalı) açıkken, imzasız uygulamalar reddedilir ve yüklemeler devre dışı bırakılır.

Bir uygulama, sunucunun verilerine tam erişimle sunucu içinde çalışır. Yalnızca güvendiğiniz uygulamaları yükleyin.

Mattermost'un ücretli sürümleri için yapılmış bazı uygulamalar, Mattermost lisansını kendileri denetler ve çalışmayı reddeder; Antimatter, bu uygulamalar için bir lisansa sahip olduğunu iddia etmez.