Konfiguration

Die Einrichtung des best4Automic Service Portal erfolgt in mehreren Schritten. Die Basiskonfiguration ist in der Konfigurationsdatei config.js zu finden, die im Ordner config liegt. Anschließend sollte es bereits möglich sein das best4Automic Service Portal im Web-Browser zu öffnen.

Die weitere Konfiguration ist in der Automation Engine durchzuführen. Im Folgenden wird von der Beispielkonfiguration durch das b4A Package B4A.WEB ausgegangen um die Konfiguration zu veranschaulichen.

Basiskonfiguration

In der Datei config.js müssen einige Einstellungen vorgenommen werden, die von dem Ort der Installation des best4Automic Service Portal sowie der best4Automic RESTful API abhängen.

window.env = {
    restApiUrl: '<your REST API url>',
    baseUrl: '',
    title: 'Service Portal',
    logo: '/images/best4automic.svg',
    language: 'de',
    department: ''
}

Variable

Beschreibung

Beispiel

restApiUrl

Enthält die vollständige URL zur best4Automic RESTful API. Sollte der Web-Server nicht auf einem der Standard-Ports lauschen, dann muss dieser mit angegeben werden

https://rest.b4a.local/best4automic-api#v2/

baseUrl

legt den URL-Pfad fest unter der das best4Automic Service Portal auf dem Web-Server erreichbar ist. Bei einer URL https://b4a.local/service-portal wäre der folgende Wert anzugeben, welcher nicht mit einem Schrägstrich (/) enden soll.

/service-portal

title

Legt den Namen fest, der in der Web-Anwendung angezeigt wird.

Unser eigenes Service Portal

logo

Legt den URL-Pfad fest unter dem das Logo zu finden ist, welches in der Web-Anwendung angezeigt soll.

/images/mein-logo.svg

language

Das best4Automic Service Portal wird immer in einerSprache pro Installation angezeigt. Hier sollte die Sprache geweählt werden in der auch die Services implementiert werden, die über das Portal zur Verfügung gestellt werden. Mögliche Werte sind de und en

de

department

Dieser Wert wird in der Anmeldemaske als Vorgabewert bei der Abteilung eingetragen

B4A

Die Vorgabewerte für title, logo und language können belassen werden, da diese Werte bereits gültig sind.

Berechtigungen

Im best4Automic Service Portal werden die verfügbaren Services in Kategorien eingeteilt. Diese können auf Basis von Rollen, den Benutzern zugeteilt werden. Rollen wiederum werden den Gruppen in der Automation Engine zugeordnet. Diese Einstellungen werden in einer XML-Variable gespeichert. Das b4A Package B4A.WEB enthält ein Beispiel für solch eine Konfigurationsvariable.

Rollen

In dem Eintrag Roles werden die Rollen festgelegt. Dabei wird einerseits jeder Rolle eine Gruppe zugewiesen und andererseits wird jeder Rolle eine Menge von Kategorien zugewiesen. Im best4Automic Service Portal werden für die Rollen die Objekttitel der Gruppen angezeigt. Daher ist es wichtig, dass diese gepflegt sind und sprechende Namen enthalten.

<best4Automic version="5.0.0">
    <web>
        <roles>
            <role name="B4A.WEB.USRG.DEV">
                <category key="DEVELOPMENT"/>
                <category key="TESTING"/>
                <category key="EXAMPLES"/>
            </role>
            <role name="B4A.WEB.USRG.INFO">
                <category key="REPORTING"/>
            </role>
            <role name="B4A.WEB.USRG.BM">
                <category key="PROJECT"/>
                <category key="MARKETING"/>
                <category key="BACK_OFFICE"/>
                <category key="SALES"/>
            </role>
            <role name="B4A.WEB.USRG.ADMIN">
                <category key="DEVELOPMENT"/>
                <category key="TESTING"/>
                <category key="DEPLOYMENT"/>
                <category key="REPORTING"/>
                <category key="ADMIN"/>
            </role>
        </roles>
    </web>
</best4Automic>

Mit dem Element role wird eine neue Rollendefinition eingeleitet. Das Attribut name legt die Gruppe fest, die der Rollen zugeordnet wird. In der Rollendefinition können beliebig viele Kategorien referenziert werden, die der Rolle zugeordnet werden. Pro Kategorie wird dafür ein Element category genutzt. Das Attribut key legt dabei den Schlüssel fest über den die Kategorie später identifiziert wird. Der Schlüssel kann eine beliebige eindeutige Zeichenkette sein.

Services

In dem zweiten Eintrag Services in der XML-Variable werden den zuvor definierten Kategorien, die Services zugeordnet. Dafür wird der Kategorie-Schlüssel, der zuvor in der Rollendefinition festgelegt wurde, genutzt.

<best4Automic version="5.0.0">
    <web>
        <categories>
            <category key="DEVELOPMENT">
                <label>Development</label>
                <services>
                    <service object="B4A.PM.JOBP.INIT-PACKAGE">
                        <description>Initializes a new b4A Package by creating the basic folder structure in a selected base folder and a set of mandatory objects</description>
                    </service>
                    <service object="B4A.PM.JOBP.BUILD-PACKAGE">
                        <description>Builds a new major, minor or bugfix release of a selected b4A Package. The service includes a dependency and compliance check. If any fails the build process is cancelled.</description>
                    </service>
                    <service object="B4A.PM.JOBP.CHECK-COMPLIANCE">
                        <description>To ensure that all objects of a selected b4A Package follow a set of compliance rules this services checks the b4A Packages and sends a report to the developer</description>
                    </service>
                </services>
            </category>
            <category key="EXAMPLES">
                <label>Examples</label>
                <services>
                    <service object="B4AE.WEB.JOBP.SMOKE-TEST" taskFilter="none">
                        <description>Check if the configuration is correct and ensure that the communication between Automation Engine, b4A RESTful API and the b4A WebUI works</description>
                    </service>
                    <service object="B4AE.WEB.JOBP.USER-REQUEST-TEST">
                        <description>Starts a service with a request notification object</description>
                    </service>
                    <service object="B4AE.WEB.JOBP.ALL_PARAMS" taskFilter="none">
                        <description>Test Service with all possible parameter types</description>
                    </service>
                    <service object="B4AE.WEB.JOBP.FAILS">
                        <description>Checks if the Service Portal can handling failing services. It should show a notification with activating the service has failed.</description>
                    </service>
                </services>
            </category>
            <category key="ADMIN">
                <label>Administration</label>
                <services>
                    <service object="B4A.WEB.JOBP.SEND-SERVICE-CONFIG-RELOAD">
                        <description>The b4A RESTful API is requested to reload the service and category configuration</description>
                    </service>
                    <service object="B4A.WEB.JOBP.SEND-SERVICE-CACHE-RESET">
                        <description>The b4A RESTful API is requested to reset all object caches</description>
                    </service>
                </services>
            </category>
            <category key="MARKETING">
                <label>Marketing</label>
                <services>
                    <service object="B4A.DEMO.JOBP.SOCIAL-MEDIA-POSTING">
                        <description>Posts a new statement on LinkedIn, Xing and BBC Confluence</description>
                    </service>
                </services>
            </category>
            <category key="SALES">
                <label>Sales</label>
                <services>
                    <service object="B4A.DEMO.JOBP.INVITE-TO-TECHTALK">
                        <description>Sends out invitations to the next TechTalk</description>
                    </service>
                </services>
            </category>
        </categories>
    </web>
</best4Automic>

Jedes Element category muss das Attribut key enthalten was einen Kategorie-Schlüssel enthält, der zuvor bei den Rollendefinitionen genutzt wurde. Für die Anzeige im best4Automic Service Portal wird der Text des Elementes label genutzt. Für jeden Service, der in dieser Kategorie angezeigt werden soll muss ein Element service angelegt werden, das einen Attribut object hat. Der Wert dieses Attributes muss der Objektname des Workflows sein, der sich hinter dem Service verbirgt. Ein zusätzliches optionales Attribut ist taskFilter, der festlegt, welche Ausführungen eines Services im best4Automic Service Portal angezeigt werden. Standardmäßig werden nur diejenigen Ausführungen angezeigt, die keinen Parent haben, also direkt von einem Benutzer gestartet wurden. Dies entspricht dem Wert no_parent, welcher nicht explizit angegeben werden muss. Sollen jedoch auch diejenigen Ausführungen angezeigt werden, die beispielsweise durch einen darüberliegenden Workflow oder Scheduler gestartet wurden, muss dies explizit mit none angegeben werden. Unterhalb dieses Elementes ist ein weiteres Element mit dem Namen description zu definieren, dass eine textuelle Beschreibung der Funktion des Services enthält. Dieser Text soll den potenziellen Nutzern beschreiben welche Funktion dieser Service erfüllt.

b4A Packages

Eine Funktionalität der best4Automic RESTful API ist die Möglichkeit Nachrichten von Sitzungen des best4Automic Service Portal zu senden. Dies kann über einen Endpoint in der best4Automic RESTful API erreicht werden. Um die Nutzung dieser Funktion so einfach wie möglich zu gestalten werden folgende b4A Packages bereitgestellt:

  • BBC.SHARED – Sammlung von Hilfsfunktionen

  • B4A.BASE – Basis Integration der best4Automic Solution auf Basis von Actions

  • B4A.WEB – Actions zur Kommunikation mit der best4Automic RESTful API

Weitere ausführliche Informationen zu den einzelnen Packages sind auf best4Automic Dokumentation zu finden.