O interfejsach użytkownika, zostało już dużo powiedziane w rozdziale poświęconemu możliwościom AddUser-NG. Teraz, skoro wiesz już nieco więcej o konfiguracji, należałoby uściślić wszystkie pojęcia.
Interfejs użytkownika w AddUser-NG, służy do komunikowania się z użytkownikiem. Jest on wywoływany w momencie, jeżeli, opcja jakiegoś z pluginów wymaga konfiguracji, czyli, albo jej wartość nie jest określona w pliku grupy, bądź też jest po prostu zakomentowana. W takim wypadku, użytkownik zostanie poinformowany: jaka to opcja, do jakiego pluginu należy, zostanie wyświetlona pomoc dotycząca tej opcji oraz jej domyślna wartość (jeżeli takową dana opcja posiada). Następnie użytkownik zostanie poproszony o wpisanie wartości dla tej opcji. Jeżeli w tym momencie użytkownik przerwie wywołanie programu, AddUser-NG, po prostu zakończy działanie, nie dokonując żadnych zmian w systemie.
Ponad to, interfejs użytkownika, zostaje wywołany przez program w momencie pojawienia się błędów, czyli w celach informacyjnych, a przy podaniu opcji -V | --verbose , wyświetlane są komunikaty na temat przebiegu działania.
W zależności od interfejsu, zachowanie dotyczące pobierania, wyświetlania danych, jest różne, dlatego warto je teraz omówić.
UI: readline
W przypadku interfejsu readline (domyślnego) pobieranie danych działa podobnie jak w przypadku powłoki systemowej. Wyświetlana jest pomoc dotycząca danej opcji, oraz prompt (czyli „znak zachęty”), który jest nazwą danej opcji. Dodatkowo, jeżeli opcja posiada domyślną wartość, zostanie ona automatycznie umieszczona jako wartość odpowiedzi, tak aby użytkownik zatwierdził ją wciskając „ENTER”.
Interfejs tan posiada historię wprowadzonych wartości, wystarczy, iż użytkownik naciśnie „strzałkę w górę” a kolejno pojawiać się będą poprzednio wpisane wartości.
UI: cdk
To UI, wyglądem przypomina program dialog i podobnie także się zachowuje. Podczas korzystania z tego UI wyświetlane są okna dialogowe, które posiadają: tytuł będący nazwą pluginy / nazwa opcji, oraz pomoc dotyczącą danej opcji. Poza tym, jeżeli opcja posiada domyślą wartość, zostanie ona wyświetlona. Przy odpowiedzi, która posiada domyślną wartość wystarczy wcisnąć „ENTER” (nic nie wpisując jako odpowiedź), a jako odpowiedź zostanie wykorzystana automatycznie wartość domyślna.
UI: batch
Jest specjalne UI, które nie posiada ani wyglądu, nic nie wyświetla, ani nie pobiera bezpośrednio od użytkownika żadnych danych. Zostało ono pomyślane jako pomoc przy pisaniu skryptów z wykorzystaniem programu AddUser-NG. Przy użyciu tego UI, należy korzystać z następującej składni:
bash# adduser-ng Nazwa_pluginu.Opcja=wartość Nazwa_innego_pluginu.Opcja_tego_pluginu=inna_wartość grupa nazwa_użytkownika
Chyba składnia jest jasna, mimo wszystko, zilustruję to jeszcze na przykładzie:
Przykład 4.2. Przykład wykorzystania UI batch
bash# adduser-ng UserAdd.comment="Dodany przez UI batch" PasswdUser.passwd=qwerty123456 klienci ala
W przypadku tego UI, jeżeli dla danej opcji nie zostanie podana wartość, a posiada ona wartość domyślą, zostanie ona automatycznie wykorzystana.