Přeskočit na hlavní obsah

Integrace Mattermost - Kanály projektů

Tato funkce automaticky vytváří a spravuje komunikační kanály v Mattermostu pro každý nový projekt v systému EspoCRM. Když je v EspoCRM vytvořen nový projekt, systém automaticky vytvoří odpovídající veřejný kanál v Mattermostu se stejným názvem jako projekt. Do tohoto kanálu jsou přidáni všichni sledující (followers) projektu z EspoCRM, což umožňuje okamžitou a centralizovanou komunikaci o projektu.

Klíčové funkce

  • Automatické vytváření kanálů: Při vytvoření nového projektu se automaticky vytvoří odpovídající kanál v Mattermostu.
  • Správa členů: Všichni sledující projektu v EspoCRM jsou automaticky přidáni jako členové kanálu v Mattermostu.
  • Archivace kanálů: Při odstranění projektu z EspoCRM je odpovídající kanál v Mattermostu archivován.
  • Integrované odkazy: Kanál obsahuje odkaz zpět na projekt v EspoCRM v hlavičce kanálu.

Závislosti

  • Vyžaduje správně nakonfigurované připojení k Mattermost serveru v systémových nastaveních EspoCRM.
  • Závisí na službě Chat z modulu Mattermost pro komunikaci s Mattermost API.
  • Používá standardní ORM rozhraní EspoCRM pro práci s entitami a jejich sledujícími.

Technické informace

Třída SyncChannel

Hlavní logika pro synchronizaci projektových kanálů je implementována v třídě SyncChannel, která je registrována jako hook pro entity projektu. Tato třída reaguje na události afterSave a afterRemove entity projektu.

Metody

  • afterSave:

  • Vytvoří nový kanál v Mattermostu při vytvoření nového projektu.

  • Získá seznam sledujících projektu pomocí služby Stream.

  • Pro každého sledujícího získá jeho uživatelské jméno a přidá ho do kanálu.

  • Volá metodu createProjectChannel ze služby Chat.

  • afterRemove:

  • Archivuje odpovídající kanál v Mattermostu při odstranění projektu.

  • Volá metodu archiveChannel ze služby Chat.

Konfigurace

Integrace vyžaduje následující systémová nastavení v EspoCRM:

  • mattermostTeamId: ID týmu v Mattermostu, pod kterým se budou vytvářet kanály.
  • mattermostServerUrl: URL Mattermost serveru.
  • mattermostMasterToken: Hlavní token pro přístup k Mattermost API.

Lokalizace

Texty a chybové zprávy jsou lokalizovány v souborech:

  • cs_CZ/Global.json
  • en_US/Global.json

Ošetření chyb

Všechny operace s Mattermost API jsou obaleny v try-catch blocích a chyby jsou logovány do systémového logu EspoCRM.