Instalační skript pro Mattermost
Tento skript se spustí automaticky po úspěšné instalaci rozšíření Mattermost do systému EspoCRM. Jeho hlavním účelem je připravit systém pro integraci s Mattermostem vytvořením speciálního uživatelského účtu, nastavením základní konfigurace a úpravou seznamu dostupných záložek v rozhraní.
Hlavní funkce
-
Vytvoření uživatele Mattermost: Skript vytváří speciální systémový účet s uživatelským jménem
mattermosta přiřazuje mu předdefinovanou roli s omezenými právy. Tento účet slouží pro komunikaci mezi EspoCRM a Mattermostem. -
Nastavení základní konfigurace: Pokud se nejedná o upgrade, skript aplikuje výchozí konfigurační hodnoty definované v konstantě
DEFAULT_CONFIG. -
Úprava seznamu záložek: Přidává entitu
Chatdo seznamu dostupných záložek v hlavním navigačním panelu EspoCRM, pokud tam již není. -
Vyčištění cache: Pro zajištění správného fungování všech změn skript na závěr vymaže systémovou cache.
Závislosti
Skript využívá následující klíčové komponenty EspoCRM:
Container- Pro přístup k systémovým službámEntityManager- Pro práci s databázovými entitami
Technické informace
Třída AfterInstall
Hlavní třída obsahující logiku post-instalačního procesu.
Konstanty
TAB_LIST_ENTITIES: Pole entit, které mají být přidány do seznamu záložek (výchozí:['Chat'])DEFAULT_CONFIG: Výchozí konfigurační hodnoty (výchozí: prázdné pole)
Metody
-
run(Container $container, array $params = []): Hlavní vstupní bod skriptu -
$container: Instance kontejneru EspoCRM -
$params: Volitelné parametry (např.isUpgradepro detekci upgradu) -
createMattermostUser(): Vytvoří uživatelemattermosts příslušnou rolí -
defaultConfig(): Nastaví výchozí konfiguraci zeDEFAULT_CONFIG -
addEntitiesToTabList(): Přidá entity do seznamu záložek -
clearCache(): Vymaže systémovou cache
Příklad použití
$container = new Container(...);
$installer = new AfterInstall();
$installer->run($container);