summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authoreltrac <hi@eltr.ac>2026-04-20 10:09:53 +0800
committereltrac <hi@eltr.ac>2026-04-20 10:09:53 +0800
commit4e4cf91eb48a7ad6a2f7f5324ab5b586bbba23fb (patch)
tree45dc850dbecfbb631b17064e18a7f5a5edc95e79 /src
parentcb1d3034b3ec04561f94497f31743371aab2d7be (diff)
feat: add more webhooks
on-create, on-update and on-delete
Diffstat (limited to 'src')
-rw-r--r--src/weepinbell/processor.clj5
-rw-r--r--src/weepinbell/webhook.clj2
2 files changed, 5 insertions, 2 deletions
diff --git a/src/weepinbell/processor.clj b/src/weepinbell/processor.clj
index 413dd31..d075a06 100644
--- a/src/weepinbell/processor.clj
+++ b/src/weepinbell/processor.clj
@@ -34,7 +34,8 @@
"from " source "\n"
"to " target "\n\n")
(let [data (wrapper/wrap source target)]
- (storage/append-wm data))))
+ (storage/append-wm data)))
+ (webhook/trigger :on-create))
(defn process-existing-webmention
"Update existing Webmention when verified, delete it otherwise."
@@ -44,9 +45,11 @@
(do
(storage/update-wm source target
(wrapper/wrap source target))
+ (webhook/trigger :on-update)
(timbre/info "Webmention updated."))
(do
(storage/delete-wm source target)
+ (webhook/trigger :on-delete)
(timbre/info "Webmention no longer valid, deleted."))))
(defn process-webmention
diff --git a/src/weepinbell/webhook.clj b/src/weepinbell/webhook.clj
index 77345c5..bb114cc 100644
--- a/src/weepinbell/webhook.clj
+++ b/src/weepinbell/webhook.clj
@@ -5,7 +5,7 @@
[weepinbell.utils :refer [valid-http-url?]]))
(defn trigger [keyw]
- ;; keyw = on-receive...
+ ;; keyw = on-receive, on-create, on-update, on-delete
(when-let [hooks (get (get-config :webhook) keyw)]
(->> hooks
(filter string?)