# Modules ## Groups / Clients BAS Groups and Clients Listed in the home view of the "Groups / Clients" module, accessible by the home icon in the top left 1, are all groups and clients that have no parent group. The data can be refreshed without reloading the page by clicking on the refresh button in the top right corner 2. Enabling the "All" switch 3 shows all groups and clients instead of top-level groups and clients only. This switch also works in a group to show all subgroups and clients within this group instead of direct children only. ::: tip By clicking on the collapse button 5 the view can be switched from column to tabbed. ::: To navigate to a group or client click on the arrow on the right 4 or double click the row. ### Subgroup / Client BAS Groups and Clients After navigating to a group or client general information about this group/client is displayed at the top. The information can be edited by clicking on edit button 1. In edit mode this button is replaced with a save button to confirm the changes. The group or client can be deleted by pressing the delete button 2. ### Tables with Groups and Clients In the home view and in a group the groups and clients are displayed in two tables. By clicking the checkbox on the left (or anywhere on the row) a group/client can be selected. Below these tables are buttons for additional actions. Home view: * CREATE GROUP - Create a new group * CREATE CLIENT - Create a new client * DELETE X GROUPS - Permanently delete the selected groups * DELETE X CLIENTS - Permanently delete the selected clients Group view: * ADD SUBGROUPS - Add already existing groups to this group * ADD CLIENTS - Add already existing clients to this group * REMOVE X SUBGROUPS - Remove the selected groups from this group (does not permanently delete the groups) * REMOVE X CLIENTS - Remove the selected clients from this group (does not permanently delete the clients) Both: * WAKE X CLIENTS UP - Start the selected clients via Wake On Lan (experimental feature: Does not work on all clients) ## IP Ranges ## iPXE Configurator ## Event Manager This module provides an overview table of all existing events. BAS Event Manager An event can be created 1 or edited 3, which opens a dialog with all configurable options. Selected events can be deleted by using the ```DELETE``` button 2. To create an event general options must be set (Step 1), groups and/or clients must be assigned (Step 2) and optionally a blacklist of subgroups and/or clients can be created (Step 3). ::: warning The event can be created right away without assigning any group, but then has to be edited later on. ::: ### General Options BAS Event Manager Dialog > 1 - Choose one of the existing configurations which will be booted while the event is live. \ > 2 - Enable this option, if the event has priority over other ongoing events. \ > 3 - Enable this option, if Wake-On-Lan shall be triggered for all assigned groups and clients at the start of the event. \ > 4 - Set start and end of the event. \ > 5 - Enable to create a recurrent event. ::: warning Multiple ```important``` events on the same layer trigger dynamic menu building (see [Configloader](/api/collections.md#configloader)). ::: #### Recurrent Events BAS Event Manager Dialog > 1 - Select on which days the event is happening. Default: all selected. \ > 2 - Select in which months the event is happening. Default: all selected. \ > 3 - Set the interval. \ > 4 - Select the type of the interval. Options are ```days```, ```weeks``` and ```months```. ::: warning Activating the recurrent switch changes from an one-time event to a recurrent event, therefore changing the meaning of start date/time and end date/time. The dates are now referring to the first and the last date of the event, with the event ongoing from start to end time at every day determined by the interval. ::: ::: tip Intervaltype 4 ```week``` means the event is ongoing for the whole week, while ```month``` is only the start date in the month. E.g. choosing the 13th of january as the start date and ```1, month``` as interval will set up the event on the 13th of every month between start and end date with exception of the non-selected months in 2. While for ```2, week``` as interval the event is ongoing every 2nd week with the start date being in the first ongoing week. ::: ### Groups and Clients BAS Event Manager Dialog Groups 1 and/or clients 2, which are affected by the event, have to be selected. Selecting a group will activate the ```CONTINUE``` button. The blacklist only shows subgroups and clients of the previously selected groups. The list is used for selecting groups and clients which shall be excluded from the event. ::: warning If a previously selected group is inside of a blacklisted group, the previously selected group is not excluded from the event. ::: ## Client Registration ## External Backends This module connects external backends with the ```BAS``` to import or sync data from external sources like ```iDoIT``` or ```infoblox```. External Backends A connection to the backend can be created 1 or removed 2. When adding a new backend connection a dialog window will open where the connection can be established. See [Add External Backend](/webapp/modules.html#add-edit-external-backend) for more information on the setup process. To verify wheather the connection of a single backend is successfull established 4 can be pressed. To verfiy multiple backends at once, they can be selected and verified with 3. If the connection is successfull established, the icon will change it's color to green. If the connection check fails the icon color will be red. 5 opens the [sync-settings](/webapp/modules.html#sync-settings) and 6 opens up the [edit-window](/webapp/modules.html#add-external-backend). ### Add/Edit External Backend When adding a new external backend, the first step is the selection of the backend type. External Backends Add Step 1 In the second step all the credentials the backend requires can be filled in. ::: danger The credentials of the backend will be saved as plaintext in the database, because some backends need the password as plaintext to authenticate. So be careful, what you insert here. Everyone with access to the database can read the credentials. ::: External Backends Add Step 2 Because every backend has different requirements, this windows can look different. The example in the picture above is for an ```iDoIT```-Backend. ### Sync Settings In the sync settings objecttypes from the external backend can be specified to be either a ```group``` or a ```client```. A ```group``` is like a location, it can have other groups as subgroups and clients as children. For example a building can have multiple rooms and a room can have clients inside. A ```client``` on the other side doesn't have any children at all. A client is for example a pc or a server. See [Groups / Clients](/webapp/modules.html#groups-clients) for more information. ::: warning Sync types are currently not implemented. ::: External Backends Sync ## iPXE Builder This module is all about the ```iPXE``` which gets delivered to the clients when booting over the network. IPXE Builder Parameters The URL to the iPXE repository has to be defined 1. ::: tip The default iPXE repository URL is http://git.ipxe.org/ipxe.git ::: Instead of using the master branch, a branchname can be defined with 2. Build targets can be selected 3. Either the build targets in the predefined list can be selected or custom build targets can be added if the administrator enabled custom build targets in the ```ipxe.config``` while setting the value to ```true```. Custom build targets are added to the predefined list but can be removed using the delete button. IPXE Builder Console The console shows the output of the building process. 1 cleans the repository, i.e. deletes the log and cloned git files but not the scripts or configs.\ 2 currently not working (should cancel the started building process).\ 3 starts the building process. IPXE Builder Editor There are multiple scripts/configs which can be edited. The scripts can be selected within the tabbar 1.\ The embedded script will be included in the built iPXE using the ```EMBED=``` parameter.\ The embedded certificate gets included using the ```TRUST=``` parameter.\ The ```general.h``` and the ```console.h``` are iPXE configurations. They will replace the files in the cloned repository. ## User Management This module provides an overview table of all the existing users. User Management A user can be created 1 or edited 3, which opens a dialog with all editable information. Selected users can be deleted by pressing the delete button 2. User Edit Permissions: * View - The permission to see the overview of the existing users. * Edit - The permission to edit users. * Delete - The permission to delete users. ## Permission Manager