बंडल्ड ऐप्स

Antimatter के Docker images में एक सेट ऐप्स (System Console में plugins) शामिल हैं। यह पेज उन्हें सूचीबद्ध करता है, बताता है कि इंस्टॉल करने के बाद कौन से चालू हैं, और एडमिन द्वारा हर ऐप की आवश्यक सेटिंग्स पर चर्चा करता है।

बंडल्ड ऐप्स

ऐप्स को प्लगइन्स के रूप में सिस्टम कंसोल में सूचीबद्ध किया जाता है। वे इमेज में (/antimatter/prepackaged_plugins) मौजूद हैं और Antimatter ऐप साइनिंग कुंजी से हस्ताक्षरित हैं, इसलिए वे इंटरनेट कनेक्शन के बिना इंस्टॉल हो जाते हैं।

रिलीज़ अरकाइव और .deb और .rpm पैकेज में कम ऐप शामिल हैं: पैकेज और अरकाइव में मौजूद ऐप देखें।

ऐपऐप idइमेजइंस्टॉल करने के बाद चालू
Agents (AI)mattermost-aiदोनोंहाँ
Callscom.mattermost.callsदोनोंहाँ
Kanbanfocalboardदोनोंहाँ
Playbooksplaybooksदोनोंहाँ
GitHubgithubदोनोंनहीं
GitLabcom.github.manland.mattermost-plugin-gitlabदोनोंनहीं
Jirajiraदोनोंनहीं
Metricscom.mattermost.mattermost-plugin-metricsदोनोंनहीं
Voice Channelscom.antimatterchat.voice-channelsantimatter-nextहाँ
Pollscom.antimatterchat.pollsantimatter-nextहाँ
Notescom.antimatterchat.notesantimatter-nextहाँ
Whiteboardcom.antimatterchat.whiteboardantimatter-nextहाँ
Mailcom.antimatterchat.mailantimatter-nextहाँ
Calendarcom.antimatterchat.calendarantimatter-nextहाँ
GIFscom.antimatterchat.gifsantimatter-nextहाँ
Memesmemesantimatter-nextनहीं
Todocom.mattermost.plugin-todoantimatter-nextनहीं

डिफ़ॉल्ट रूप से चालू ऐप्स हर स्टार्ट पर इंस्टॉल हो जाते हैं यदि वे पहले से मौजूद नहीं हैं, या image में नया वर्ज़न हो तो अपग्रेड हो जाते हैं। यदि आप किसी ऐप को बंद कर दें, तो वह बंद रहता है: डिफ़ॉल्ट केवल उन ऐप्स पर लागू होता है जिनका ज़िक्र कॉन्फ़िगरेशन में अभी तक नहीं हुआ है। Mattermost id रखने वाले ऐप्स (Agents, Calls, Kanban, Playbooks और integrations) Antimatter के अपने बिल्ड हैं।

ऐप्स को चालू, बंद और कॉन्फ़िगर करें

सिस्टम कंसोल › प्लगइन्स › प्लगइन प्रबंधन पर जाएं। इंस्टॉल किये गए प्लगइन के अंतर्गत, हर ऐप के लिए सक्रिय करें या अक्षम करें, सेटिंग्स और हटाएं उपलब्ध हैं, और उसकी स्थिति (Running, Not running, Failed to start…) दिखाई जाती है। हर ऐप जिसमें सेटिंग्स हैं, उसके लिए सिस्टम कंसोल › प्लगइन्स के अंतर्गत एक स्वतंत्र पेज भी होता है।

जो बंडल्ड ऐप डिफ़ॉल्ट रूप से बंद हैं, उन्हें इमेज की अपनी कॉपी से इंस्टॉल किया जाता है: ऐप रेल के शीर्ष पर अपनी तस्वीर पर क्लिक करें और ऐप मार्केटप्लेस चुनें (क्लासिक इंटरफ़ेस में यह प्रोडक्ट मेन्यू में है), ऐप खोजें और इंस्टॉल करें पर क्लिक करें, फिर प्लगइन मैनेजमेंट में इसे सक्षम करें। कमांड लाइन से:

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

अन्य कमांड: amctl plugin list, amctl plugin disable <id>, amctl plugin delete <id>।

कॉन्फ़िगरेशन के माध्यम से ऐप्स चालू करें

कौन से ऐप्स चालू हैं, यह PluginSettings.PluginStates सेटिंग है, जो ऐप ids का एक मैप है। आप amctl के साथ इसमें प्रविष्टियां मर्ज कर सकते हैं; स्वतः प्रीपैकेज्ड प्लगइंज़ सक्षम करें चालू (डिफ़ॉल्ट) होने पर, एक सक्रिय बंडल्ड ऐप अगली स्टार्ट पर इंस्टॉल हो जाता है:

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

यह Todo को इंस्टॉल करने का तरीका भी है, जो Marketplace डायलॉग में उपलब्ध नहीं है। वेरिएबल AM_PLUGINSETTINGS_PLUGINSTATES भी काम करता है, लेकिन यह पूरा मैप बदल देता है: हर ऐप की सूची जो आप चालू चाहते हैं, लिखें।

ऐप सेटिंग्स

ऐप सेटिंग्स PluginSettings.Plugins.<app id> के तहत स्टोर होती हैं, जिनकी कीज़ लोअर केस में होती हैं। इन्हें ऐप की System Console पेज पर बदलें, या amctl config patch का उपयोग करके बदलें, जैसा कि Configuration में दिखाया गया है। AM_PLUGINSETTINGS_PLUGINS एक साथ सभी ऐप की सेटिंग्स बदल देता है और उन्हें लॉक कर देता है, इसलिए इसका उपयोग न करें।

GIFs

GIF ऐप इमोजी पिकर में GIF और स्टिकर टैब जोड़ता है, जो Antimatter के GIF सर्विस (gifs-server) द्वारा संचालित होता है, जो Tenor API से बात करता है। साइट का कंपोज़ फ़ाइल सर्विस को चलाती है और वेरिएबल्स के माध्यम से ऐप को कॉन्फ़िगर करती है। इसकी सेटिंग्स, सिस्टम कंसोल › प्लगइन्स › GIF में:

सेटिंगवेरिएबल (फ़ॉलबैक)डिफ़ॉल्टयह क्या करता है
GIF सर्विस URLAM_GIFS_SERVICE_URLखालीसर्विस का API बेस, उदाहरण के लिए http://gifs:8080/v2। जब तक यह खाली है, GIF बंद रहते हैं।
API कुंजीAM_GIFS_API_KEYखालीसर्विस की AM_GIFS_API_KEYS में से एक।
अपलोड कीAM_GIFS_UPLOAD_KEYखालीसेवा के AM_GIFS_UPLOAD_KEYS में से एक। इससे लोग पिकर से GIF और स्टिकर जोड़ सकते हैं और इसी तरह जोड़े गए को हटा सकते हैं। खाली छोड़ने से अपलोड बंद हो जाते हैं।
GIF और स्टिकर जोड़ने की अनुमति किसे हैसिस्टम एडमिनसिस्टम एडमिन, या सभी। अतिथि कभी नहीं, बिल्कुल कस्टम इमोजी की तरह। जो लोग जोड़ते हैं, वह सबके लिए उपलब्ध होता है; जो व्यक्ति ने जोड़ा है और सिस्टम एडमिन उसे हटा सकते हैं।
स्टिकर सक्षम करेंचालूस्टिकर टैब दिखाता है।
कंटेंट फ़िल्टरमध्यमउच्च, मध्यम, निम्न या बंद।
मीडिया को Antimatter के माध्यम से सर्व करेंचालूब्राउज़र Antimatter से GIF लोड करते हैं, जो उन्हें सर्विस से प्राप्त करता है। जब सर्विस केवल आपके आंतरिक नेटवर्क पर है, तो इसे चालू रखें।
मीडिया URLसर्विस का /media/जब मीडिया सीधे सर्व किया जाता है, तो वह कहाँ होता है।
कैश आकार (MB)64 MBऐप की मेमोरी कैश।

इस ऐप के लिए, वेरिएबल्स केवल फ़ॉलबैक हैं: System Console में सेट किया गया मान उन पर प्राथमिकता रखता है। यदि GIF पिकर खाली रहता है, तो उस पेज पर सर्विस URL और API की की जांच करें।

जब तक GIF ऐप सेट अप किया जाता है, उसका टैब बिल्ट-इन Giphy पिकर (सिस्टम कंसोल › इंटीग्रेशन › GIF › GIF पिकर सक्षम करें, ServiceSettings.EnableGifPicker) की जगह ले लेता है।

GIF सर्विस

सर्विस अपनी डेटा डायरेक्टरी (/data, gifs वॉल्यूम) में सब कुछ रखती है: एक सर्च इंडेक्स और मीडिया। इसके मुख्य वेरिएबल्स:

वेरिएबलडिफ़ॉल्टयह क्या करता है
AM_GIFS_API_KEYSकोई नहींकॉमा-अलग किए गए API कीज़। बिना की के, API किसी भी व्यक्ति के लिए खुला है जो इसे पहुँच सकता है। कई कीज़ आपको उन्हें रोटेट करने की अनुमति देती हैं।
AM_GIFS_UPLOAD_KEYSकोई नहींअपलोड करने और अपलोड की गई चीज़ें हटाने के लिए अनुमत कुंजियाँ। एक भी कुंजी के बिना कोई अपलोड नहीं होगा।
AM_GIFS_RATE_LIMIT20प्रति क्लाइंट (API की और पता) प्रति सेकंड अनुरोध; 0 इसे बंद कर देता है। compose फ़ाइल 0 सेट करती है, क्योंकि Antimatter के सभी अनुरोध एक ही की और पते का साझा करते हैं।
AM_GIFS_LISTEN:8080सुनने का पता (Listen address)।
AM_GIFS_PUBLIC_URLअनुरोधों सेबाहरी URL, यदि आप सेवा को बाहर से उपलब्ध कराते हैं।
AM_GIFS_TRUST_PROXYfalseकेवल प्रॉक्सी के पीछे X-Forwarded-* हेडर पर भरोसा करें।
AM_GIFS_UPLOAD_MAX_MB16सबसे बड़ा अपलोड किया गया फ़ाइल।

अपने GIFs को बल्क में जोड़ने के लिए, उन्हें एक मैनिफेस्ट के साथ, एक one-off कंटेनर में माउंट किए गए डायरेक्टरी से इम्पोर्ट करें:

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

अपग्रेड के बाद स्टार्टर स्टिकर पुनः इम्पोर्ट करने के लिए: docker compose run --rm gifs stickers। मैनिफेस्ट फ़ॉर्मेट और अन्य कमांड gifs-server README में हैं।

मेल और कैलेंडर

मेल और कैलेंडर हर व्यक्ति को उनके अपने मेलबॉक्स (IMAP और SMTP) और अपने कैलेंडर (CalDAV) से जोड़ते हैं। लोग ऐप में अपना सर्वर और पासवर्ड दर्ज करते हैं; पासवर्ड एन्क्रिप्टेड रूप में संग्रहीत किए जाते हैं। आप उनके लिए मेल या कैलेंडर सर्वर कॉन्फ़िगर नहीं करते, लेकिन आप तय करते हैं कि वे किससे जुड़ सकते हैं:

ऐपसेटिंगडिफ़ॉल्टयह क्या करता है
मेल, कैलेंडरनिजी नेटवर्क पर मेल सर्वर की अनुमति दें, निजी नेटवर्क पर कैलेंडर सर्वर की अनुमति दें (AllowPrivateNetworks)बंदबंद, सर्वर लूपबैक, निजी और लिंक-लोकल पताओं से जुड़ने से इनकार कर देता है, ताकि ऐप्स आपके आंतरिक नेटवर्क तक पहुँच न सकें। यदि आपका मेल या कैलेंडर सर्वर निजी पते पर है, तो इसे चालू करें।
मेल, कैलेंडरअनएन्क्रिप्टेड कनेक्शन की अनुमति दें (AllowInsecureConnections)बंदबंद, कनेक्शन को TLS का उपयोग करना होगा (मेल: TLS या STARTTLS; कैलेंडर: HTTPS)।
Mailअपठित जाँच अंतराल (मिनट) (UnreadCheckMinutes)2 मिनटजब मेल सर्वर अपठित गिनती को पुश नहीं कर सकता, तब कितनी बार अपठित गिनती की जाँच की जाती है।
Mailसबसे बड़ा संदेश आकार (MB) (MaxMessageSizeMB)25 MBभेजे और पढ़े गए संदेशों का आकार सीमा।
Calendarरिमाइंडर भेजें (EnableReminders)चालूकैलेंडर बॉट इवेंट से पहले (10 मिनट पहले, उन इवेंट्स के लिए जिनमें अपना अलार्म नहीं है) एक डायरेक्ट मैसेज भेजता है।

लोगों को पासवर्ड के बजाय अपने खाते से Gmail या Microsoft 365 मेलबॉक्स में साइन इन करने की अनुमति देने के लिए, एक OAuth क्लाइंट बनाएं और मेल ऐप के Google या Microsoft फ़ील्ड भरें:

  • Google: Gmail API और https://mail.google.com/ स्कोप के साथ एक Web OAuth क्लाइंट।
  • Microsoft: IMAP.AccessAsUser.All, SMTP.Send, offline_access, openid, email और profile डिलीगेटेड परमिशन के साथ एक Entra ID ऐप। डिफ़ॉल्ट रूप से टेंनेंट common होता है।
  • दोनों में, रीडायरेक्ट URI https://chat.example.com/plugins/com.antimatterchat.mail/oauth/callback (आपकी साइट URL) है।

Kanban, Notes, Whiteboard, Polls और Playbooks

  • Kanban (focalboard) बातचीत के बगल में अपने साइड पैनल में खुलता है, जैसे Playbooks खुलता है। /kanban/… और /boards/… पेज के पुराने लिंक एक कम्युनिटी में वही बोर्ड या कार्ड खोलते हैं। इसका एकमात्र सेटिंग, Enable Publicly-Shared Boards (EnablePublicSharedBoards, बंद), बोर्ड एडिटर्स को किसी भी व्यक्ति के साथ बोर्ड साझा करने की अनुमति देता है, जो लिंक रखता है, बिना साइन-इन किए।
  • Notes और Polls में कोई सेटिंग नहीं है।
  • Whiteboard: सिस्टम एडमिन पूरे सर्वर के लिए आकार लाइब्रेरी (Excalidraw .excalidrawlib फ़ाइलें, प्रत्येक 5 MB तक) इसकी सेटिंग्स पेज पर अपलोड कर सकते हैं। कम्युनिटी एडमिन अपनी कम्युनिटी की लाइब्रेरी का प्रबंधन करते हैं।
  • Playbooks अपने साइड पैनल में खुलता है। /playbooks/… पेज के पुराने लिंक एक कम्युनिटी में वही रन या प्लेबुक खोलते हैं। इसमें कुछ सेटिंग्स हैं, जिनमें से अधिकांश प्रयोगात्मक फीचर हैं; डिफ़ॉल्ट अधिकांश सर्वरों के लिए उपयुक्त हैं।
  • Memes: मिम्स टेम्पलेट जोड़ने की अनुमति: सभी (डिफ़ॉल्ट), सिस्टम एडमिन, या कोई नहीं (कस्टम टेम्पलेट बंद), जो नए टेम्पलेट जोड़ने को रोकता है, जबकि पहले जोड़े गए टेम्पलेट उपयोग योग्य रहते हैं। अतिथि कभी टेम्पलेट नहीं जोड़ते। जो व्यक्ति ने टेम्पलेट जोड़ा है और सिस्टम एडमिन उसे हटा सकते हैं।
  • Todo में कोई सर्वर सेटिंग नहीं है।

GitHub, GitLab और Jira

ये ऐप्स Antimatter को आपके कोड होस्टिंग और इश्यू ट्रैकर से जोड़ते हैं। प्रत्येक के लिए दूसरी ओर एक OAuth एप्लिकेशन और Antimatter की ओर इशारा करने वाला वेबहुक आवश्यक है। ऐप को सक्षम करें, फिर किसी भी चैनल में उसकी सेटअप कमांड चलाएँ, जो आपको चरण-दर-चरण मार्गदर्शन करती है: /github setup, /gitlab setup या /jira setup।

ऐपOAuth रीडायरेक्ट URLवेबहुक URL
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> या /jira instance install cloud-oauth <url>; /jira webhook वेबहुक URL प्रिंट करता है।
GitHub और GitLab ऐप्स में Use Preregistered OAuth Application को बंद रखें: यह Mattermost सेवा पर निर्भर करता है जिसका Antimatter में अभाव है, और इसे चालू करने पर ऐप शुरू करने से इनकार कर देता है। अपना स्वयं का OAuth एप्लिकेशन पंजीकृत करें।

GitHub और GitLab ऐप्स पहली सहेज पर अपना वेबहुक सीक्रेट और एन्क्रिप्शन की जनरेट करते हैं। GitHub ऐप को संगठनों तक (GithubOrg) और GitLab ऐप को एक समूह तक (GitlabGroup) सीमित किया जा सकता है; GitHub Enterprise या स्वयं-होस्टेड GitLab के लिए, इसका बेस URL सेट करें।

Metrics

Metrics ऐप सर्वर के प्रदर्शन मेट्रिक्स को Antimatter के अंदर एक छोटे समय-श्रृंखला डेटाबेस में एकत्र करता है, ताकि आप उन्हें डाउनलोड कर सकें या Prometheus चलाए बिना समर्थन पैकेट में शामिल कर सकें। जब यह शुरू होता है, तो यह सर्वर के मेट्रिक्स एंडपॉइंट (MetricsSettings.Enable) को चालू कर देता है। देखें Operations।

अन्य ऐप्स इंस्टॉल करना

Antimatter Mattermost ऐप्स (प्लग-इन) चलाता है। एक ऐप जोड़ने के तीन तरीके:

  • रिमोट मार्केटप्लेस से। रिमोट मार्केटप्लेस सक्षम करें (PluginSettings.EnableRemoteMarketplace) डिफ़ॉल्ट रूप से बंद है, और मार्केटप्लेस URL (PluginSettings.MarketplaceURL) खाली है: Antimatter Mattermost के मार्केटप्लेस का उपयोग नहीं करता है, और यदि Mattermost की कॉन्फ़िगरेशन में अभी भी उसका पता मौजूद है तो उसे नज़रअंदाज़ कर देता है। किसी ऐसे मार्केटप्लेस सर्वर के ऐप्स की सूची दिखाने के लिए जिसे आप भरोसा करते हैं, इस सेटिंग को चालू करें और उसका URL सेट करें। Antimatter द्वारा प्रदान किए जाने वाले ऐप्स (Calls, Playbooks, Kanban और अन्य) के उन मार्केटप्लेस बिल्ड छिपे रहते हैं, ताकि वे Antimatter के ऐप्स की जगह न ले सकें: Antimatter प्लगइन के मार्केटप्लेस बिल्ड की अनुमति दें (PluginSettings.AllowMarketplaceToReplaceAntimatterPlugins) डिफ़ॉल्ट रूप से बंद है।
  • बंडल अपलोड करके (.tar.gz)। अपलोड डिफ़ॉल्ट रूप से बंद रहते हैं और इनके लिए System Console में कोई स्विच नहीं है: AM_PLUGINSETTINGS_ENABLEUPLOADS=true सेट करें, फिर Plugin Management में प्लगइन अपलोड करें का उपयोग करें, या amctl --local plugin add app.tar.gz।
  • URL से: amctl plugin install-url <url>, यह भी अपलोड चालू होने पर।

Antimatter ऐप के सिग्नचर की जाँच उन कुंजियों के विरुद्ध करता है जिन पर भरोसा करता है: Antimatter की कुंजी, Mattermost, Inc. द्वारा अपने प्रकाशित ऐप के लिए हस्ताक्षरित की गई कुंजी (इसलिए आप स्वयं डाउनलोड किया गया Mattermost ऐप इंस्टॉल हो जाता है) और PluginSettings.SignaturePublicKeyFiles में जोड़ी गई कोई भी कुंजी। प्लगइन सिग्नेचर आवश्यक करें (PluginSettings.RequirePluginSignature, डिफ़ॉल्ट रूप से बंद) चालू होने पर, अहस्ताक्षरित ऐप अस्वीकार कर दिए जाते हैं और अपलोड अक्षम हो जाते हैं।

ऐप सर्वर के अंदर चलाता है, जिसमें उसके डेटा तक पूर्ण पहुंच होती है। केवल उन ऐप्स को इंस्टॉल करें जिन पर आप विश्वास करते हैं।

Mattermost के भुगतान वाले संस्करणों के लिए बनाए गए कुछ ऐप्स स्वयं Mattermost लाइसेंस की जाँच करते हैं और चलने से इनकार कर देते हैं; Antimatter उनके लिए ऐसा होने का दावा नहीं करता है।