summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKit La Touche <kit@transneptune.net>2025-08-03 21:23:46 -0400
committerKit La Touche <kit@transneptune.net>2025-08-03 21:23:46 -0400
commit12f8614f6b085050b4a3d7f7bda6aba532f862f0 (patch)
treeb3b1c1638cc3888a9cbfc71d0606ca5fe0f02f56
parented5e175a806f45469a6e5504ba0d3f5246997fad (diff)
Add preliminary documentation on web push events
-rw-r--r--docs/developer/book.toml2
-rw-r--r--docs/developer/server/push-notifications.md24
2 files changed, 25 insertions, 1 deletions
diff --git a/docs/developer/book.toml b/docs/developer/book.toml
index ef1296c..d8e8b1d 100644
--- a/docs/developer/book.toml
+++ b/docs/developer/book.toml
@@ -1,6 +1,6 @@
[book]
title = "Pilcrow for Developers"
-authors = ["Owen Jacobson"]
+authors = ["Owen Jacobson", "Kit La Touche"]
language = "en"
multilingual = false
diff --git a/docs/developer/server/push-notifications.md b/docs/developer/server/push-notifications.md
new file mode 100644
index 0000000..2207fb9
--- /dev/null
+++ b/docs/developer/server/push-notifications.md
@@ -0,0 +1,24 @@
+# Push Notifications
+
+Endpoints for web-push are kept in the table `subscription`, along with keys
+necessary for signing messages sent to those endpoints.
+
+The server is responsible for processing events and determining, on a
+user-by-user basis, whether they warrant triggering a web-push event.
+
+As the logic around what _can_ trigger a push evolves, we will keep this
+documentation up to date.
+
+## Events that can trigger push
+
+- A new channel is created
+- A new message arrives in a channel
+- A new message containing your username arrives in a channel
+- A new message containing a keyword you have configured arrives in a channel
+- A message you wrote is stitched
+- A message you have flagged is stitched
+
+## Current Configuration options
+
+The web client currently supports setting all of these options, but the server
+does not store or honour these settings.