Aktionen
Webhooks http extension » Historie » Revision 5
« Zurück |
Revision 5/10
(diff)
| Weiter »
[E] Axel S, 14.08.2024 11:02
Webhooks¶
Technische Voraussetzung¶
- Installation PostgreSQL HTTP Client https://github.com/pramsey/pgsql-http
- Version für Windows x64 und PG13:
- Weitere Versionen: http://www.postgresonline.com/journal/archives/371-http-extension.html
- Datenbank-Update ausführen
- liegen auf prodat-demo-20.11 zu Projekt 20417: https://ci.prodat-sql.de/sources/dbupdates/edit/?server=demo2011&q=20417
Verwendung:¶
- unsere eigenen Wrapperfunktionen verwenden:
TSystem.http_get_request(uri varchar, data json)
, ... TODO: bei Bedarf weitere erstellen- kümmern sich um den Pfad der vertauenswürdigen Root-CAs (Parameter
CURLOPT_CAINFO
) - versuchen den HTTP-Request im Fehlerfall erneut
- kümmern sich um den Pfad der vertauenswürdigen Root-CAs (Parameter
Konfiguration¶
- Webhooks werden werden über das tabellarische Modul Webhooks konfiguriert Hauptmenü
- Jeder Eintrag führt zur Anlage eines Datenbank-Triggers der bei Ausführung einen HTTP-Request an die konfigurierte URL schickt.
- Beispielkonfigurationen:
wh_name wh_schema wh_table wh_timing wh_event wh_url wh_data wh_data_type slack_webhook_eingrech public eingrechdokument AFTER INSERT https://hooks.slack.com/triggers/...... '{"Rechnungsnummer": "' || ($1).beld_dokunr || '"}' application/json slack_webhook_bdepab public bdepab AFTER INSERT https://hooks.slack.com/triggers/....... '{ "mitarbeiter": "' || (SELECT nameAufloesen(ll_db_usename) FROM llv WHERE ($1).bdab_minr = ll_minr) || '", "bdab_id"": "' || ($1).bdab_id || '", "bdab_anf"": "' || ($1).bdab_anf || '", "bdab_end"": "' || ($1).bdab_end || '", "abw_grund"": "' || (SELECT ab_txt FROM bdeabgruende WHERE ($1).bdab_aus_id = ab_id) || '" }' application/json teams_webhook_eingrech public eingrechdokument AFTER INSERT https://.....webhook.office.com/webhookb2/........ '{ "type"":"message", "attachments":[ { "contentType":"application/vnd.microsoft.card.adaptive", "contentUrl":null, "content":{ "$schema":"http://adaptivecards.io/schemas/adaptive-card.json", "type"":"AdaptiveCard", "version":"1.2", "body":[ { "type": "TextBlock", "text": "neue Eingangsrechnung: ' || ($1).beld_dokunr || '" } ] } } ] }' application/json
Von [E] Axel S vor 3 Monaten aktualisiert · 5 Revisionen