Webhooks http extension » Historie » Revision 2
Revision 1 ([X] Philipp Wolak, 05.12.2023 10:45) → Revision 2/10 ([E] Axel S, 31.07.2024 10:40)
h1. Webhooks
* Ticket: https://redmine.prodat-sql.de/issues/20712
*technische Voraussetzung:*
# Installation PostgreSQL HTTP Client https://github.com/pramsey/pgsql-http
#* Version für Windows x64 und PG13: !pg13http_w64.zip!
#* 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
*Konfiguration*
* Webhooks werden werden über das tabellarische Modul Webhooks konfiguriert
{{collapse(Hauptmenü)
!clipboard-202312051021-nzwgt.png!
}}
* 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/...... | <notextile>'{"Rechnungsnummer": "' || ($1).beld_dokunr || '"}'</notextile> | application/json |
| slack_webhook_bdepab | public | bdepab | AFTER | INSERT | https://hooks.slack.com/triggers/....... | <notextile>'{
"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) || '"
}'</notextile> | application/json |
| teams_webhook_eingrech | public | eingrechdokument | AFTER | INSERT | https://.....webhook.office.com/webhookb2/........ | <notextile>'{
"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 || '"
}
]
}
}
]
}'</notextile> | application/json |