Der SIGNL4-Webhook erlaubt nicht nur das Senden von Ereignisdaten z.B. im JSON-Format. Er kann auch Bilder oder Tonanhänge akzeptieren. Diese Mediendaten werden wie E-Mail-Anhänge kodiert und per HTTP POST in einem multipart/forma-data Inhaltstyp übertragen.
Unterstützte Dateiformate
Attachment type | Supported file format(s) |
Image | png, tiff, tif, jpeg, jpg, gif, bmp |
Sound |
mp3, wav, aiff, m4a |
Text | txt |
Document | |
Video | mov, mp4 |
Jeder Anhang darf max. 4MB groß sein.
Wie werden die Parameterwerte übertragen?
Parameterwerte innerhalb einer multipart/formdata-Übertragung werden als Textanhänge kodiert. Der Parametername ist der Name des Anhangs. Der eigentliche Text ist der Wert des Parameters.
Das folgende Beispiel zeigt, wie die Parameterwerte eines Ereignisses im JSON-Format in einer multipart/form-data-Nachricht übertragen werden:
{
"Title": "Critical production failure",
"Message": "Check line machine C immediately",
"Severity": "High",
"Business Details": {
"Impact": "Major",
"Scope": "Unlimited"
}
}
------RandomGeneratedBoundary
Content-Disposition: form-data; name="Title"
Critical production failure
------RandomGeneratedBoundary
Content-Disposition: form-data; name="Message"
Check line machine C immediately
------RandomGeneratedBoundary
Content-Disposition: form-data; name="Severity"
High
------RandomGeneratedBoundary
Content-Disposition: form-data; name="Business Details.Impact"
Major
------RandomGeneratedBoundary
Content-Disposition: form-data; name="Business Details.Scope"
Unlimited
------RandomGeneratedBoundary--
Wie werden Bilder, Töne oder Dokumente übertragen?
Anhänge in den oben genannten Dateiformaten können als base64-kodierte Anhänge eingereicht werden:
------RandomGeneratedBoundary
Content-Disposition: form-data; name="Logo"; filename="S4_Icon_32.png"
Content-Type: image/png
Content-Transfer-Encoding: base64
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsEAAA7BAbiRa+0AAASBSURBVEhL1ZVdaFxFFIDPmXvv7r13b/Yn2d2S
pEna1NY0tBF/qaAggi+l/kGliIKgPigqgqggIigiivTRVlBonxR81AQi9MGiIIgKjeBPbVDapEmz
2W6yu9m/+zeeuXd2s+luMELy4Mche+bOzDlnzpw5gf89SEi1jfATzYQK58Dpb6D/V250wBAUBBVB
Y6AypCFZ9zh3fCDxhC5XbhFkZCOEC9Nk11AhpqGlCkVl4HNoeLDmwJoLNYc3fHD9YH2Xk3dh3QED
iCgQUzEVhayBGQNSUdQVcDmUbMjXeK7Gr9eh7PC6Jz5uESVIg8i2xtBUsc/AIYuNpdhEHwmOp9ge
C9MGeUIO6HBKFFKufE5hiV3/Koo4QaBS+IkIDsTg5iS7I4P3TOw78tzbB594Zf99x/o1W8tdIutV
VwhljHQ90Tvy5GvpR57vOXS3szDrlFdE0jpEUegMAYYCFP5IDx7uZfceHpl4d9I4cESJ96uZvcm7
HkxBuXzx50IDig6vuojxzNDJc/bEA96uUdh7i3X/4/VfvvNWroWm2qHMC+hHVUSKknQIE0ePv6gk
BgE0+iwEI9mHXh5OG2kdLU0ks/fRl2qpoXAvwXUrfuL1roVM4Yv8kAdRnQx0FawIGEPjcr4Ji2WT
2YyhUSZRXMdNt8uJJtrIuDAWJr5N5A2TUMI4R4+jTUWydFnua8Lr5fpKgQqUqpYj1pfm5EQTN3dF
7F+3LIXJ2wDxgqjGSw7k6rA4eRoalWCjZO382av5yqoNtaBG17465ds1OSeeul/68lRQj+vXG4qi
0iUHusLolWFUAap9tZKPX/3JHDzArJRfzpe//mjmsw9nrvuXirBQhSK5KSxXf/tBSe9mEd2Z/7Nw
5i37x2kR8AbjgehRuklBhEGPJp7YHgvGUjiWoAcBcSNi2+5i1Z8t8d9X+GyJHPDVhjiH6E4E5cD3
19tBB6jr0oECInZLAyqVfhP6TUzroltQ3snitZownatR+FSmIktbfMtoGBGpclFFUQamCnEN4hGM
qaAp4lZrrribks2pHdVd0fWE9U2D3gCaLQcBot+RKMITNT46OtmiQ9i+eMCkbD32EIyZUam2QXZ1
w8oefYrtv9NdWVqdPlu58ocoUDkviPYkM8eeZSOHnOX5wtSn9aXLXY/U3YEaNYbfn6r0HwyHzG0U
Tj7dmPkmHBLRRN/AB9PV5O5wyBqV/DvHnb9nwmE7shFtBFJHn2lZJ3w1ap54gxQ5j5B8+IWWdcKP
xszHXhVF2YHsRRtBPnqrVJuoA6OgyHqjTPF9t0m9iTo8Tv/7OpG96AZpLC/I+SZeYYl71EWDBQzr
uXk50cRdnqO6alloSdcUYXX6E79SlFsDypMfN/u6oDp1mtsNORe8OGoerc7fjkIvWeRuo0C1XLtw
HpO7WCzhLP5V/Pw979svxPbmAl7M13/9HvsGmR5z5i6unnnTv3BOmG8zIiURN8MoOvF9n5orcj8M
TX5dh3se9ykNmy4QYHJzB9tCs13vmHQt0+0EU4mYVHeGnU9Rx5dtFYB/AC0uoeMjRAaUAAAAAElF
TkSuQmCC
------RandomGeneratedBoundary--
Beispielereignis mit Parameterwerten, einem Bild sowie Positionsdaten
Das folgende Beispiel überträgt ein Ereignis mit mehreren Parameterwerten, einem Bild und Positionsdaten, die z. B. von einer IP-Kamera an den Webhook gesendet werden könnten:
POST https://connect.signl4.com/webhook/g93sdfm2843 HTTP/1.1
User-Agent: IPCamera
Host: connect.signl4.com
Content-Type: multipart/form-data; boundary=----RandomGeneratedBoundary
Content-Length: 2556
------RandomGeneratedBoundary
Content-Disposition: form-data; name="Title"
Critical production failure
------RandomGeneratedBoundary
Content-Disposition: form-data; name="Message"
Check line machine C immediately
------RandomGeneratedBoundary
Content-Disposition: form-data; name="Severity"
High
------RandomGeneratedBoundary
Content-Disposition: form-data; name="Business Details.Impact"
Major
------RandomGeneratedBoundary
Content-Disposition: form-data; name="Business Details.Scope"
Unlimited
------RandomGeneratedBoundary
Content-Disposition: form-data; name="X-S4-Location"
52.4354955,13.0540154
------RandomGeneratedBoundary
Content-Disposition: form-data; name="Logo"; filename="S4_Icon_32.png"
Content-Type: image/png
Content-Transfer-Encoding: base64
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsEAAA7BAbiRa+0AAASBSURBVEhL1ZVdaFxFFIDPmXvv7r13b/Yn2d2S
pEna1NY0tBF/qaAggi+l/kGliIKgPigqgqggIigiivTRVlBonxR81AQi9MGiIIgKjeBPbVDapEmz
2W6yu9m/+zeeuXd2s+luMELy4Mche+bOzDlnzpw5gf89SEi1jfATzYQK58Dpb6D/V250wBAUBBVB
Y6AypCFZ9zh3fCDxhC5XbhFkZCOEC9Nk11AhpqGlCkVl4HNoeLDmwJoLNYc3fHD9YH2Xk3dh3QED
iCgQUzEVhayBGQNSUdQVcDmUbMjXeK7Gr9eh7PC6Jz5uESVIg8i2xtBUsc/AIYuNpdhEHwmOp9ge
C9MGeUIO6HBKFFKufE5hiV3/Koo4QaBS+IkIDsTg5iS7I4P3TOw78tzbB594Zf99x/o1W8tdIutV
VwhljHQ90Tvy5GvpR57vOXS3szDrlFdE0jpEUegMAYYCFP5IDx7uZfceHpl4d9I4cESJ96uZvcm7
HkxBuXzx50IDig6vuojxzNDJc/bEA96uUdh7i3X/4/VfvvNWroWm2qHMC+hHVUSKknQIE0ePv6gk
BgE0+iwEI9mHXh5OG2kdLU0ks/fRl2qpoXAvwXUrfuL1roVM4Yv8kAdRnQx0FawIGEPjcr4Ji2WT
2YyhUSZRXMdNt8uJJtrIuDAWJr5N5A2TUMI4R4+jTUWydFnua8Lr5fpKgQqUqpYj1pfm5EQTN3dF
7F+3LIXJ2wDxgqjGSw7k6rA4eRoalWCjZO382av5yqoNtaBG17465ds1OSeeul/68lRQj+vXG4qi
0iUHusLolWFUAap9tZKPX/3JHDzArJRfzpe//mjmsw9nrvuXirBQhSK5KSxXf/tBSe9mEd2Z/7Nw
5i37x2kR8AbjgehRuklBhEGPJp7YHgvGUjiWoAcBcSNi2+5i1Z8t8d9X+GyJHPDVhjiH6E4E5cD3
19tBB6jr0oECInZLAyqVfhP6TUzroltQ3snitZownatR+FSmIktbfMtoGBGpclFFUQamCnEN4hGM
qaAp4lZrrribks2pHdVd0fWE9U2D3gCaLQcBot+RKMITNT46OtmiQ9i+eMCkbD32EIyZUam2QXZ1
w8oefYrtv9NdWVqdPlu58ocoUDkviPYkM8eeZSOHnOX5wtSn9aXLXY/U3YEaNYbfn6r0HwyHzG0U
Tj7dmPkmHBLRRN/AB9PV5O5wyBqV/DvHnb9nwmE7shFtBFJHn2lZJ3w1ap54gxQ5j5B8+IWWdcKP
xszHXhVF2YHsRRtBPnqrVJuoA6OgyHqjTPF9t0m9iTo8Tv/7OpG96AZpLC/I+SZeYYl71EWDBQzr
uXk50cRdnqO6alloSdcUYXX6E79SlFsDypMfN/u6oDp1mtsNORe8OGoerc7fjkIvWeRuo0C1XLtw
HpO7WCzhLP5V/Pw979svxPbmAl7M13/9HvsGmR5z5i6unnnTv3BOmG8zIiURN8MoOvF9n5orcj8M
TX5dh3se9ykNmy4QYHJzB9tCs13vmHQt0+0EU4mYVHeGnU9Rx5dtFYB/AC0uoeMjRAaUAAAAAElF
TkSuQmCC
------RandomGeneratedBoundary--
Die resultierenden Signl-Details in der SIGNL4-Webanwendung sehen wie folgt aus:
Kommentare
0 Kommentare
Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.