Next Previous Contents

6. Programme

6.1 vboxgetty

vboxgetty ist das eigentliche Herz von vbox. Er ist für das Erkennen, Entgegennehmen und Steuern von Anrufen zuständig. Die genaue Installation von vboxgetty kann im Kapitel Erste Schritte unter vboxgetty nachgelesen werden.

Benutzung:

vboxgetty [OPTION] [OPTION] [...]

Folgende Optionen können angegeben werden:

-f, --file FILE

Konfigurationsdatei die benutzt werden soll. Voreingestellt liest vboxgetty die Einstellungen aus der Datei '@SYSCONFDIR@/vboxgetty.conf'.

-d, --device TTY

Modemdevice das benutzt werden soll. Diese Option muß angegeben werden!

-h, --help

Zeigt den Hilfstext an.

-v, --version

Zeigt die Versionsnummer an.

6.2 vboxd

vboxd ist ein Daemon, der über Netzwerk (TCP/IP oder Sockets) angesprochen werden und die mit vbox aufgezeichneten Nachrichten abrufen oder ändern kann.

Für Programmautoren existieren in der libvbox.a bereits einige Funktionen um mit vboxd zu kommunizieren. Die genaue Installation von vboxd kann im Kapitel Erste Schritte unter vboxd nachgelesen werden.

Benutzung:

vboxd [OPTION] [OPTION] [...]

Folgende Optionen können angegeben werden:

-f, --file FILE

Konfigurationsdatei die benutzt werden soll. Voreingestellt liest vboxd die Einstellungen aus der Datei '@SYSCONFDIR@/vboxd.conf'.

-t, --timeout SECS

Anzahl der Sekunden die vboxd auf ein Kommando vom Client wartet. Wird in diesem Zeitraum kein Kommando empfangen, beendet sich das Programm. Voreinstellung sind 600 Sekunden.

-v, --version

Zeigt die Versionsnummer an.

-h, --help

Zeigt den Hilfstext an.

Nach dem Start steht der Timeout auf 30 Sekunden. Dieser wird erst auf den mit --timeout eingestellten Wert geändert, nachdem das erste Kommando von einem Client empfangen wurde!

Die nachfolgende Beschreibung befaßt sich mit den internen Kommandos des Daemons und ist eigentlich nur für Programmautoren von Interesse, die in ihren eigenen Programmen mit dem vboxd kommunizieren möchten.

Der Daemon kann mit einer Reihe von Kommandos gesteuert werden, die alle mit einem Text der Form

NUMMER BESCHREIBUNG

beantwortet werden. Einige Kommandos liefern mehrere Antworten hintereinander, jede Antwort beginnt in einer neuen Zeile.

Der Client sollte die aktuelle Verbindung schließen (und evtl. neu aufbauen), sobald vom Server der Text "281 ." übermittelt wurde. Dieser gibt an, daß der Server die Verbindung beendet hat!

Die nachfolgend beschriebenen Kommandos können auch andere Kennungen als angegeben zurückliefern. Die Beschreibung zeigt immer nur die Rückgaben des Kommandos selbst, nicht aber die evtl. Rückgaben des Servers an. Andere Rückgabekennungen als beim jeweiligen Kommando angegeben sind als Fehler zu werten!

Mögliche andere Rückgaben wären:

Folgende Kommandos werden vom vboxd unterstützt:

LOGIN <USERNAME> <PASSWORD>

Mit diesem Kommando können sich Clients als reguläre Benutzer beim Daemon anmelden. Einige Kommandos sind nur nach einem erfolgreichen Login möglich! Beim Login wird dem Benutzer ein Spool- und ein Incoming-Verzeichnis zugewiesen, auf die sich alle Kommandos beziehen.

USERNAME

Name des Benutzers der angemeldet werden soll.

PASSWORD

Passwort des Benutzers.

Bei erfolgreicher Anmeldung enthält die Anwort des Daemons den Rückgabewert 283, gefolgt von einem kurzen Willkommenstext.

LIST

Zeigt eine Liste aller Nachrichten an, die sich im Incoming-Verzeichnis des Benutzers befinden. Dieses Kommando ist nur nach einem erfolgreichen Login möglich. Es wird Lesezugriff benötigt.

Die Antwort des Daemons ist wie folgt aufgebaut:

184 +
184 F 00000858611291-00022795
184 T 858611305
184 M 858611305
184 C 6
184 S 84752
184 N Michael Herold
184 I 9317850413
184 P *** Unknown ***
184 L *** Unknown ***
184 .

184 +

Leitet den Beginn einer neuen Nachricht ein. Eine Liste kann mehrere Nachrichten enthalten - zu Beginn einer jeden Nachricht wird diese Zeile gesendet.

184 F

gefolgt vom Namen der Datei innerhalb des Incoming-Verzeichnisses.

184 T

gefolgt vom Erzeugungsdatum der Datei. Das Datum wird als Anzahl der Sekunden seit dem 1.1.1970 angegeben.

184 M

gefolgt vom Datum der letzten Änderung. Das Datum wird als Anzahl der Sekunden seit dem 1.1.1970 angegeben. Ist dieses 0, wurde die Datei als gelesen markiert.

184 C

gefolgt von der Kompression. Die Kompression wird als Wert zwischen 2 und 6 angegeben.

184 S

gefolgt von der größe der Datei in Bytes.

184 N

gefolgt vom Namen der Person, welche die Nachricht aufgesprochen hat. Konnte diese nicht ermittelt werden, wird "*** Unknown ***" angegeben.

184 I

gefolgt von der CALLERID der Person, welche die Nachricht aufgesprochen hat. Konnte diese nicht ermittelt werden, wird 0 angegeben.

184 P

gefolgt von der Telefonnummer der Person, welche die Nachricht aufgesprochen hat. Konnte diese nicht ermittelt werden, wird "*** Unknown ***" angegeben.

184 F

gefolgt vom Wohnort der Person, welche die Nachricht aufgesprochen hat. Konnte diese nicht ermittelt werden, wird "*** Unknown ***" angegeben.

184 .

Dieser Text wird am Ende aller Nachrichten gesendet. Er gibt an, daß die komplette Liste übermittelt wurde und kein weiterer Eintrag mehr folgt.

MESSAGE <MESSAGENAME>

überträgt eine Nachricht. Dieses Kommando ist nur nach einem erfolgreichen Login möglich. Es wird Lesezugriff benötigt.

MESSAGENAME

Name der Datei die übermittelt werden soll. Pfadangaben werden abgeschnitten - die Datei muß sich im Incoming-Verzeichnis des eingeloggten Benutzers befinden.

Die Antwort des Daemons schaut in etwa wie folgt aus:

182 34654
[...MESSAGE...]
182 .

Die erste Zeile enthält die Kennung "182" gefolgt von der Anzahl der Zeichen die zu lesen sind. Nach dieser Kennung werden die Daten übermittelt - gefolgt von der Kennung "182 ." die das Ende der Übermittlung kennzeichnet.

HEADER <MESSAGENAME>

Übermittelt einen Nachrichtheader. Dieses Kommando ist nur nach einem erfolgreichen Login möglich. Es wird Lesezugriff benötigt.

MESSAGENAME

Name der Datei deren Header übermittelt werden soll. Pfadangaben werden abgeschnitten - die Datei muß sich im Incoming-Verzeichnis des eingeloggten Benutzers befinden.

Die Antwort des Daemons schaut in etwa wie folgt aus:

183 34654
[...HEADER...]
183 .

Die erste Zeile enthält die Kennung "183" gefolgt von der Anzahl der Zeichen die zu lesen sind. Nach dieser Kennung werden die Daten übermittelt - gefolgt von der Kennung "183 ." die das Ende der Übermittlung kennzeichnet.

COUNT

Dieses Kommando gibt aus, wieviele neue Dateien sich im Incoming-Verzeichnis des eingeloggten Benutzers befinden. Dieses Kommando ist nur nach einem erfolgreichen Login möglich. Es wird Lesezugriff benötigt.

Die Ausgabe des Daemons ist in etwa wie folgt:

181 100 859281096

Nach der Nummer "181" wird die Anzahl der neuen Nachrichten gefolgt vom Datum der neusten Nachricht ausgegeben. Das Datum wird in Anzahl der Sekunden seit dem 1.1.1970 dargestellt.

TOGGLE <MESSAGENAME>

Wechselt den Status einer Nachricht von gelesen nach ungelesen oder von ungelesen nach gelesen. Dieses Kommando ist nur nach einem erfolgreichen Login möglich. Es wird Schreibzugriff benötigt.

MESSAGENAME

Name der Nachricht deren Status gewechselt werden soll. Pfadangaben werden abgeschnitten - die Datei muß sich im Incoming-Verzeichnis des eingeloggten Benutzers befinden.

Die Antwort des Daemons schaut in etwa so aus:

188 859281096 

Nach der Nummer "188" wird das "modification date" in der Form Sekunden seit 1.1.1970 ausgegeben. Der Wert 0 heißt das die Nachricht als gelesen markiert wurde.

DELETE <MESSAGENAME>

Löscht eine Nachricht. Dieses Kommando ist nur nach einem erfolgreichen Login möglich. Es wird Schreibzugriff benötigt.

MESSAGENAME

Name der Nachricht die gelöscht werden soll. Pfadangaben werden abgeschnitten - die Datei muß sich im Incoming-Verzeichnis des eingeloggten Benutzers befinden.

Wenn die Datei gelöscht werden konnte, antwortet der Daemon mit der Kennung "287 .".

STATUSCTRL <CONTROLNAME>

Stellt fest, ob sich die angegebene Kontrolldatei im Spoolverzeichnis des Benutzers befindet. Dieses Kommando ist nur nach einem erfolgreichen Login möglich. Es wird Lesezugriff benötigt.

CONTROLNAME

Name der Kontrolldatei die überprüft werden soll. Pfadangaben werden abgeschnitten - die Datei muß sich im Spoolverzeichnis des eingeloggten Benutzers befinden.

Der Daemon antwortet mit der Kennung "284 1" wenn die Datei existiert, oder mit "284 0" wenn nicht.

CREATECTRL <CONTROLNAME>

Erzeugt die angegebene Kontrolldatei im Spoolverzeichnis des Benutzers. Dieses Kommando ist nur nach einem erfolgreichen Login möglich. Es wird Schreibzugriff benötigt.

CONTROLNAME

Name der Kontrolldatei die erzeugt werden soll. Pfadangaben werden abgeschnitten - die Datei muß sich im Spoolverzeichnis des eingeloggten Benutzers befinden.

Der Daemon antwortet mit der Kennung "285 1" wenn die Datei angelegt werden konnte, oder mit "285 0" wenn nicht.

REMOVECTRL <CONTROLNAME>

Entfernt die angegebene Kontrolldatei im Spoolverzeichnis des Benutzers. Dieses Kommando ist nur nach einem erfolgreichen Login möglich. Es wird Schreibzugriff benötigt.

CONTROLNAME

Name der Kontrolldatei die entfernt werden soll. Pfadangaben werden abgeschnitten - die Datei muß sich im Spoolverzeichnis des eingeloggten Benutzers befinden.

Der Daemon antwortet mit der Kennung "286 1" wenn die Datei entfernt werden konnte, oder mit "286 0" wenn nicht.

6.3 vbox

Das Programm vbox dient als Frontend zum Nachrichten lesen, löschen oder ändern. Zudem können die Kontrolldateien erzeugt oder gelöscht werden. Es wird vboxd benötigt.

Benutzung:

vbox [OPTION] [OPTION] [...]

Folgende Optionen können angegeben werden:

-m, --hostname NAME

Gibt an auf welchem Host mit dem vboxd verbunden werden soll. Voreinstellung ist localhost.

-p, --port PORT

Gibt an welcher Port benutzt werden soll. Voreinstellung ist der Eintrag vboxd/tcp aus '/etc/services'.

-c, --playcmd PROG

Legt fest mit welchem Programm die Nachrichten gespielt werden sollen. Voreinstellung ist '/usr/local/vbox/bin/vboxplay'.

-r, --reload SECS

Gibt an nach wievielen Sekunden die Nachrichtenliste neu eingelesen werden soll (neue Darstellung erfolgt nur bei neuen Nachrichten). Die Voreinstellung ist 60 Sekunden.

-o, --mono

Erzwingt Schwarz/Weiß Anzeige.

-f, --force

Wenn diese Option angegeben ist, wird immer der Loginprompt angezeigt, auch dann wenn das Passwort und der Benutzername in '~/.vboxrc' enthalten ist.

-s, --noledstatus

Normalerweise holt sich vbox alle 30 Sekunden den Status der Kontrolldateien vom Server, um die LED's neu anzuzeigen. Ist diese Option angegeben, werden die Kontrolldateien nicht abgefragt.

-v, --version

Zeigt die Programmversion an.

-h, --help

Zeigt den Hilfstext an.

6.4 vboxbeep

Mit vboxbeep können mehrere Nachrichten-Verzeichnisse überwacht werden. Wenn sich in einem der Verzeichnisse eine neue Nachricht befindet, macht sich vboxbeep mit einem Signalton bemerkbar. vboxbeep benutzt keinen vboxd, es können nur lokale Verzeichnisse überwacht werden.

Benutzung:

vboxbeep [OPTION] [OPTION] [...]

Folgende Optionen können angegeben werden:

-s, --sound HOURS

Stunden an denen der Signalton gespielt werden soll. Die Angaben müssen im 24-Stunden-Format - also von 0 - 23 Uhr - gemacht werden. Mehrere Stunden können durch Kommata getrennt angegeben werden. Ein '*' als einzige Angabe steht für immer, ein '-' für nie.

-m, --messagebox DIR

Verzeichnis mit Nachrichten das überwacht werden soll. Diese Option kann mehrmals angegeben werden, sodaß mehrere Verzeichnisse überwacht werden können.

-p, --pause SECS

Pause in Sekunden die zwischen den einzelnen Überprüfungen gemacht werden soll. Voreinstellung ist 5 Sekunden.

-k, --kill

Beendet einen bereits laufenden vboxbeep. Die Option kann nur vom Benutzer root angegeben werden.

-v, --version

Zeigt die Programmversion an.

-h, --help

Zeigt den Hilfstext an.

Wird vboxbeep ohne Argumente aufgerufen, so wird versucht einem bereits laufenden vboxbeep mitzuteilen, daß der Signalton beendet werden soll.

6.5 vboxtoau

Mit vboxtoau können vbox Dateien (vbox audio header) in .au Dateien (sun audio format) gewandelt werden. vboxtoau ist ein Link auf vboxcnvt.

Benutzung:

vboxtoau [OPTION] [OPTION] [...] <INFILE >OUTFILE

Folgende Optionen können angegeben werden:

-r, --samplerate RATE

Samplerate die in den Header der Datei geschrieben werden soll. Es wird keine Konvertierung vorgenommen! Voreinstellung ist 8000.

-u, --ulaw

Datei zu 8-bit ulaw konvertieren.

-1, --linear8

Datei zu 8-bit linear konvertieren.

-2, --linear16

Datei zu 16-bit linear konvertieren (Voreinstellung).

-v, --version

Zeigt die Programmversion an.

-h, --help

Zeigt den Hilfstext an.

Die Datei zum konvertieren wird von Standard Eingabe (stdin) gelesen und nach Standard Ausgabe (stdout) geschrieben.

6.6 autovbox

Mit autovbox können .au Dateien (sun audio format) in vbox Dateien (vbox audio header) gewandelt werden. autovbox ist ein Link auf vboxcnvt.

Benutzung:

autovbox [OPTION] [OPTION] [...] <INFILE >OUTFILE

Folgende Optionen können angegeben werden:

-2, --adpcm-2

Datei zu ADPCM 2 konvertieren.

-3, --adpcm-3

Datei zu ADPCM 3 konvertieren.

-4, --adpcm-4

Datei zu ADPCM 4 konvertieren (Voreinstellung).

-u, --ulaw

Datei zu ULAW konvertieren.

-n, --name NAME

Name der in den Header geschrieben werden soll.

-p, --phone PHONE

Telefonnummer die in den Header geschrieben werden soll.

-l, --location LOCATION

Wohnort der in den Header geschrieben werden soll.

-v, --version

Zeigt die Programmversion an.

-h, --help

Zeigt den Hilfstext an.

Die Datei zum konvertieren wird von Standard Eingabe (stdin) gelesen und nach Standard Ausgabe (stdout) geschrieben.

6.7 vboxmode

Das Programm vboxmode dient zum ermitteln des Formats einer Audio-Datei. Es werden Dateien von vbox (vbox audio header) und .au Dateien (sun audio format) erkannt.

Benutzung:

vboxmode [OPTION] [OPTION] [...] FILENAME

Folgende Optionen können angegeben werden:

-q, --quiet

Normalerweise werden noch Informationen über die Datei ausgegeben. Bei Angabe dieser Option werden diese unterdrückt.

-v, --version

Zeigt die Versionsnummer an.

-h, --help

Zeigt den Hilfstext an.

Das Format der Datei wird immer als Fehlernummer zurückgegeben:


Next Previous Contents