-
Notifications
You must be signed in to change notification settings - Fork 4
getmsg
Die Funktion getmsg
sendet eine Benachrichtigung, indem sie diese per
HTTP GET an einen Webserver schickt. Es ist möglich, die URL (nur Pfad +
Query-String, also den Teil hinter dem Host-Namen) mit
printf-Templates]
anzugeben. Im einfachsten Fall bedeutet dies, dass die Stelle in der
URL, an der die Nachricht eingesetzt werden soll, mit %s
markiert
wird. getmsg
sorgt selbst für die richtige Kodierung der Nachrichten
(URL Encoding).
Usage: getmsg [OPTION]... <HOST> <url-template> [<message>]...
getmsg [OPTION]... -t <url-template> <host> [<message>]...
Send a message in a simple HTTP GET request.
-t, --template=FORMAT use this printf-style template to build the URL,
all following messages are URL-encoded and filled
into this template
-d, --default=CODE default for first parameter (eval'ed later)
-p, --port=PORT use a special target port (default 80)
-w, --timeout=SECONDS set connect timeout (default 3)
-v, --virtual=VIRT use a different virtual host (default HOST)
-U, --user=USER user for basic authorization
-P, --password=PASS password for basic authorization
--help show this help
Die
folgenden Funktionen basieren auf
getmsg
und unterstützen daher
dieselben Optionen. Passend für den entsprechenden Empfänger sind
URL-Template (-t
), die Standard-Nachricht (-d
) und der Port (-p
)
schon vorbelegt.
*:* ^ ^ getmsg 192.168.0.111 -p 222 -t "/home/phone?event=%s&id=%s&time=%s&source=%s&source_name=%s&destination=%s&destination_name=%s&extension=%s&duration=%s&provider=%s" "${EVENT}" "${ID}" "${TIMESTAMP}" "${SOURCE}" "${SOURCE_NAME}" "${DEST}" "${DEST_NAME}" "${EXT}" "${DURATION}" "${PROVIDER}"
Das obere Beispiel bewirkt einen GET-Aufruf an http://192.168.0.111:222/home/phone mit allen relevanten Daten im Query-String.