Philipp Heckel
|
bddde5c637
|
Bump Go version, Generics whoooo
|
2022-10-01 15:50:48 -04:00 |
|
Philipp Heckel
|
419bfecd6f
|
Reformatting, make update
|
2022-09-27 12:37:02 -04:00 |
|
Hunter Kehoe
|
3c5a10de17
|
combine attachment and icon url regex
|
2022-07-17 15:47:21 -06:00 |
|
Hunter Kehoe
|
99886d7f66
|
change icon from object to string
|
2022-07-17 15:40:24 -06:00 |
|
Hunter Kehoe
|
d519fd999b
|
notification icons
|
2022-07-16 14:13:46 -06:00 |
|
Philipp Heckel
|
10a9aca2a1
|
Delete expired attachments based on mod time instead of DB entry to avoid races
|
2022-07-08 10:00:04 -04:00 |
|
Philipp Heckel
|
bf8077626e
|
Permissions of unix socket
|
2022-07-03 19:33:01 -04:00 |
|
Koro
|
ed1673beed
|
Set socket mode after creation.
|
2022-07-03 17:39:08 -04:00 |
|
Philipp Heckel
|
113900d3eb
|
Cache startup queries
|
2022-06-23 11:02:45 -04:00 |
|
Philipp Heckel
|
3334d84861
|
Fix another race, add test
|
2022-06-22 15:11:50 -04:00 |
|
Philipp Heckel
|
ed9d99fd57
|
"Fix" data race
|
2022-06-22 13:47:54 -04:00 |
|
Philipp Heckel
|
edfc1b78a1
|
Delayed message lock shorter
|
2022-06-21 20:07:08 -04:00 |
|
Philipp Heckel
|
c1f7bed8d1
|
Fix tests, lock topic as short as possible
|
2022-06-21 19:45:23 -04:00 |
|
Philipp Heckel
|
85f2252a77
|
WIP: Shorter lock, for #338
|
2022-06-21 19:07:27 -04:00 |
|
Philipp Heckel
|
d05211648d
|
Fix since=<id> implementation for multiple topics, closes #336
|
2022-06-20 12:11:52 -04:00 |
|
Philipp Heckel
|
25a4b29ffc
|
Return HTTP 500 on Matrix discovery GET if base-url not configured; log entire HTTP request when TRACE enabled
|
2022-06-19 21:25:35 -04:00 |
|
Philipp Heckel
|
9918f4965d
|
Only use last X-Forwarded-For address as visitor address, closes #328
|
2022-06-16 15:31:09 -04:00 |
|
Philipp Heckel
|
18bd3c0e55
|
Docs and Matrix tests
|
2022-06-16 11:40:56 -04:00 |
|
Philipp Heckel
|
ebbc2838ba
|
Move error handling to main error handling; move matrix logic to its own file
|
2022-06-15 20:36:49 -04:00 |
|
Philipp Heckel
|
91375b2e8e
|
Minor refactor, added GET
|
2022-06-15 16:03:12 -04:00 |
|
Philipp Heckel
|
27910772f0
|
Derpyderp
|
2022-06-14 20:43:17 -04:00 |
|
Philipp Heckel
|
e9f3edb76b
|
WIP: Matrix
|
2022-06-13 22:07:30 -04:00 |
|
Philipp Heckel
|
cf0f002bfa
|
Add version number to ntfy serve output
|
2022-06-12 11:54:58 -04:00 |
|
Philipp Heckel
|
2b42cea1a3
|
Allow HEAD requests for file attachments
|
2022-06-10 21:33:39 -04:00 |
|
Philipp Heckel
|
0521f19ea4
|
Fix docs header color; tiny other fixes with logging
|
2022-06-02 20:59:07 -04:00 |
|
Philipp Heckel
|
e12995e218
|
Logging in subscribe and publish command
|
2022-06-02 11:59:22 -04:00 |
|
Philipp Heckel
|
5cc0b194d3
|
Add --trace and --no-log-dates; add docs
|
2022-06-02 10:50:05 -04:00 |
|
Philipp Heckel
|
7845eb0124
|
So much logging
|
2022-06-01 23:24:44 -04:00 |
|
Philipp Heckel
|
ab955d4d1c
|
Logging
|
2022-06-01 16:57:35 -04:00 |
|
Philipp Heckel
|
a04cf5fcb6
|
Merge branch 'main' into logging
|
2022-05-31 23:39:11 -04:00 |
|
Philipp Heckel
|
c80e4e1aa9
|
Make Firebase logic testable, test it
|
2022-05-31 23:16:44 -04:00 |
|
Philipp Heckel
|
f9284a098a
|
Store Sender IP in DB for delayed messages
|
2022-05-31 21:39:19 -04:00 |
|
Philipp Heckel
|
8283b6be97
|
Firebase quota limit
|
2022-05-31 20:38:56 -04:00 |
|
Philipp Heckel
|
dc0e699fb5
|
WIP: Logging
|
2022-05-29 22:14:14 -04:00 |
|
Philipp Heckel
|
b2c2bd1e4b
|
Remove "poll" alias for X-Poll-ID
|
2022-05-28 22:06:46 -04:00 |
|
Philipp Heckel
|
96bb357435
|
Polish the poll_request stuff
|
2022-05-27 20:30:20 -04:00 |
|
Philipp Heckel
|
6a43c1a126
|
WIP: iOS poll_request forwarder
|
2022-05-27 07:55:57 -04:00 |
|
Philipp Heckel
|
af76a2606d
|
Support for Firebase ~poll keepalive topic that wakes up iOS devices every 20 minutes
|
2022-05-25 21:39:46 -04:00 |
|
Philipp Heckel
|
c684a39191
|
Fine tuning
|
2022-05-13 14:42:25 -04:00 |
|
Curid
|
9684629549
|
Add disable option to web-root
Closes #238
|
2022-05-13 17:08:07 +00:00 |
|
Philipp Heckel
|
edfed24c27
|
Make Upgrade header check for websockets case insensitive, closes #228
|
2022-04-29 13:23:04 -04:00 |
|
Philipp Heckel
|
1f6118f068
|
Finish up better parsing
|
2022-04-27 09:51:23 -04:00 |
|
Philipp Heckel
|
b805d49cfd
|
Disallow HEAD/GET requests with body
|
2022-04-23 13:40:26 -04:00 |
|
Philipp Heckel
|
712c292183
|
More docs
|
2022-04-20 16:31:25 -04:00 |
|
Philipp Heckel
|
8900df27c9
|
Docs, still WIP
|
2022-04-19 23:26:46 -04:00 |
|
Philipp Heckel
|
5a9b2122c2
|
Make simple actions parsing work
|
2022-04-19 09:14:32 -04:00 |
|
Philipp Heckel
|
55869f551e
|
Add ID
|
2022-04-17 14:29:43 -04:00 |
|
Philipp Heckel
|
26efd481e3
|
WIP Actions
|
2022-04-16 16:17:58 -04:00 |
|
Philipp Heckel
|
aba7e86cbc
|
Attachment behavior fix for Firefox
|
2022-04-03 12:39:52 -04:00 |
|
Philipp Heckel
|
f98743dd9b
|
Continued work on send dialog and drag and drop
|
2022-04-02 17:06:26 -04:00 |
|
Philipp Heckel
|
b67d9fc85d
|
Added missing 'delay' and 'email' params to publish as json
|
2022-03-29 15:40:26 -04:00 |
|
Philipp Heckel
|
03ad5dcff6
|
Add Allow-Origin: *, because YOLO
|
2022-03-25 17:17:24 -04:00 |
|
Philipp Heckel
|
b409c89d3b
|
Do not allow comma in topic name in publish via GET endpoint (no ticket)
|
2022-03-23 14:29:55 -04:00 |
|
Philipp Heckel
|
8fcc40942f
|
Publish as JSON
|
2022-03-16 14:16:54 -04:00 |
|
Philipp Heckel
|
37d4d5d647
|
PUT/POST as JSON, relates to #133
|
2022-03-15 16:00:59 -04:00 |
|
Philipp Heckel
|
750be7f07e
|
Fix content type for config.js
|
2022-03-11 15:56:54 -05:00 |
|
Philipp Heckel
|
3f978bc45f
|
Better test messages
|
2022-03-10 22:58:24 -05:00 |
|
Philipp Heckel
|
488aeb119b
|
Gzip static responses
|
2022-03-10 21:55:56 -05:00 |
|
Philipp Heckel
|
160c72997f
|
Fix auth base64, fix iPhone things
|
2022-03-10 18:11:12 -05:00 |
|
Philipp Heckel
|
840cb5b182
|
Add server-generated /config.js; add error boundary
|
2022-03-09 23:28:55 -05:00 |
|
Philipp Heckel
|
acde2e5b6e
|
Remove indexPage
|
2022-03-05 22:18:03 -05:00 |
|
Philipp Heckel
|
c5ce51f242
|
Add --web-root switch
|
2022-03-05 21:28:25 -05:00 |
|
Philipp Heckel
|
e27d5719f0
|
Embed new web UI into server
|
2022-03-05 20:24:10 -05:00 |
|
Philipp Heckel
|
cda9dfa9d0
|
Merge branch 'main' into ui
|
2022-02-27 16:10:21 -05:00 |
|
Philipp Heckel
|
4cd30c35ce
|
Rename cache to messageCache
|
2022-02-27 14:47:28 -05:00 |
|
Philipp Heckel
|
c21737d546
|
Combine tests and all that
|
2022-02-27 14:21:34 -05:00 |
|
Philipp Heckel
|
7d93b0596b
|
Almost there; Replace memCache with :memory: SQLite cache
|
2022-02-27 09:38:46 -05:00 |
|
Philipp Heckel
|
18b91cf250
|
Merge branch 'since-id' into ui
|
2022-02-26 16:01:31 -05:00 |
|
Philipp Heckel
|
4af9c07577
|
WIP: Since ID, works
|
2022-02-26 15:57:10 -05:00 |
|
Philipp Heckel
|
530f55c234
|
Fully support auth in Web UI; persist users in localStorage (for now); add ugly ?auth=... param
|
2022-02-25 23:25:04 -05:00 |
|
Philipp Heckel
|
6d343c0f1a
|
Login page of "subscribe dialog", still WIP, but looking nice
|
2022-02-25 16:07:25 -05:00 |
|
Philipp Heckel
|
2ad0802b65
|
Rate limit exemption; relates to #144
|
2022-02-14 16:09:59 -05:00 |
|
Philipp Heckel
|
0df8aa9a5d
|
Replace \\n with \n in X-Message header
|
2022-02-13 09:23:55 -05:00 |
|
Philipp Heckel
|
b1bbbf0103
|
Simplify again
|
2022-01-31 20:12:47 -05:00 |
|
Philipp Heckel
|
c2f31b9c9f
|
Move firebase to seperate file
|
2022-01-31 20:06:48 -05:00 |
|
Philipp Heckel
|
198e2cfd90
|
Do not forward messages to Firebase if topic is not world-readable
|
2022-01-31 19:33:22 -05:00 |
|
Philipp Heckel
|
c56814e7da
|
Add wildcard access control
|
2022-01-31 11:44:58 -05:00 |
|
Philipp Heckel
|
631ade5430
|
Support multiple topics in auth
|
2022-01-27 12:49:05 -05:00 |
|
Philipp Heckel
|
e61a0c2f78
|
Add /auth endpoint and tests
|
2022-01-25 23:04:09 -05:00 |
|
Philipp Heckel
|
460162737a
|
More auth
|
2022-01-24 00:54:28 -05:00 |
|
Philipp Heckel
|
393f95aeac
|
Auth CLI, continued
|
2022-01-23 23:02:39 -05:00 |
|
Philipp Heckel
|
e309775ac1
|
More auth CLi
|
2022-01-23 00:54:18 -05:00 |
|
Philipp Heckel
|
f388fd9c90
|
Move to package
|
2022-01-23 00:02:16 -05:00 |
|
Philipp Heckel
|
1287594505
|
Simplify tables
|
2022-01-22 23:01:20 -05:00 |
|
Philipp Heckel
|
86b20e8ccd
|
All the auth things are working now
|
2022-01-22 14:47:27 -05:00 |
|
Philipp Heckel
|
2181227a6e
|
WIP: Auth in 80 lines of code :-)
|
2022-01-21 22:22:27 -05:00 |
|
Philipp Heckel
|
aab705f4a4
|
Fix baseURL check
|
2022-01-21 14:17:59 -05:00 |
|
Philipp Heckel
|
7e817f408c
|
Send encoding in Firebase (even though that doesn't make a ton of sense right now)
|
2022-01-17 13:49:02 -05:00 |
|
Philipp Heckel
|
4ceb058a40
|
Handle binary messages for UnifiedPush
|
2022-01-17 13:28:07 -05:00 |
|
Philipp Heckel
|
75f8607d75
|
Bail out early if HTTP is spoken to /ws endpoint
|
2022-01-16 17:54:15 -05:00 |
|
Philipp Heckel
|
9b0e7eedb2
|
Fix data race
|
2022-01-16 00:07:32 -05:00 |
|
Philipp Heckel
|
2b6363474e
|
Combine things, move stuff
|
2022-01-15 23:17:46 -05:00 |
|
Philipp Heckel
|
707c58a120
|
Do not print ugly WS error; tests
|
2022-01-15 22:33:35 -05:00 |
|
Philipp Heckel
|
846ee0fb2d
|
Websockets; working
|
2022-01-15 13:23:35 -05:00 |
|
Philipp Heckel
|
b079cb99a4
|
Merge branch 'main' into unix-socket
|
2022-01-14 20:16:12 -05:00 |
|
Philipp Heckel
|
a75f74b471
|
Bump version; update docs
|
2022-01-14 12:23:58 -05:00 |
|
Philipp Heckel
|
e50779664d
|
Remove peaking, addresses #93
|
2022-01-14 12:13:14 -05:00 |
|
Philipp Heckel
|
38b28f9bf4
|
CLI; docs docs docs
|
2022-01-12 21:24:48 -05:00 |
|
Philipp Heckel
|
aa94410308
|
Daily traffic limit
|
2022-01-12 18:52:07 -05:00 |
|
Philipp Heckel
|
c76e55a1c8
|
Making RateLimiter and FixedLimiter, so they can both work with LimitWriter
|
2022-01-12 17:03:28 -05:00 |
|
Philipp Heckel
|
f6b9ebb693
|
Lots of tests
|
2022-01-12 11:05:04 -05:00 |
|
Philipp Heckel
|
68a324c206
|
Fail early for too-large attachments
|
2022-01-11 12:58:11 -05:00 |
|
Philipp Heckel
|
0b0595384e
|
Listen on Unix socket
|
2022-01-10 16:28:13 -05:00 |
|
Philipp Heckel
|
289a6fdd0f
|
Add attachment expiry option
|
2022-01-10 15:36:12 -05:00 |
|
Philipp Heckel
|
e8cb9e7fde
|
Better mime type probing
|
2022-01-10 13:38:51 -05:00 |
|
Philipp Heckel
|
44a9509cd6
|
Properly handle different attachment use cases
|
2022-01-08 15:47:08 -05:00 |
|
Philipp Heckel
|
cefe276ce5
|
Tests for fileCache
|
2022-01-08 12:14:43 -05:00 |
|
Philipp Heckel
|
e7c19a2bad
|
Expire attachments properly
|
2022-01-07 15:15:33 +01:00 |
|
Philipp Heckel
|
c45a28e6af
|
Attachments limits; working visitor limit
|
2022-01-07 14:49:28 +01:00 |
|
Philipp Heckel
|
9171e94e5a
|
Fix file extension detection; fix HTTPS port
|
2022-01-06 14:45:23 +01:00 |
|
Philipp Heckel
|
24eb27d41c
|
Merge branch 'main' into attachments
|
2022-01-05 00:25:49 +01:00 |
|
Philipp Heckel
|
41c1189fee
|
Persist "click"
|
2022-01-04 23:40:41 +01:00 |
|
Philipp Heckel
|
2e40b895a7
|
Fix message truncation, relates to #84
|
2022-01-04 21:09:47 +01:00 |
|
Philipp Heckel
|
76d102f964
|
Add "truncated" flag to let Android app know
|
2022-01-04 20:53:32 +01:00 |
|
Philipp Heckel
|
807d2b0d9d
|
Truncate FCM messages if they are too long; This was trickier than expected; relates to #84
|
2022-01-04 20:43:37 +01:00 |
|
Philipp Heckel
|
722c579db0
|
Increase FCM priority for ntfy priority high and max, closes #70
|
2022-01-04 19:59:54 +01:00 |
|
Philipp Heckel
|
2930c4ff62
|
Preview URL
|
2022-01-04 19:45:29 +01:00 |
|
Philipp Heckel
|
38788bb2e9
|
WIP: attachments
|
2022-01-04 00:55:08 +01:00 |
|
Philipp Heckel
|
eb5b86ffe2
|
WIP: Attachments
|
2022-01-02 23:56:12 +01:00 |
|
Philipp Heckel
|
113053a9e3
|
Fix encoding issues
|
2021-12-28 01:26:20 +01:00 |
|
Philipp Heckel
|
01a1d981cf
|
fix nil pointer
|
2021-12-27 22:18:15 +01:00 |
|
Philipp Heckel
|
e7f8fc93e4
|
Working prefix
|
2021-12-27 22:06:40 +01:00 |
|
Philipp Heckel
|
7eaa92cb20
|
WIP
|
2021-12-27 16:39:28 +01:00 |
|
Philipp Heckel
|
3001e57bcc
|
WIP: mail publish
|
2021-12-27 15:48:09 +01:00 |
|
Philipp Heckel
|
d6762276f5
|
Test
|
2021-12-25 22:07:55 +01:00 |
|
Philipp Heckel
|
41514cd557
|
Merge branch 'main' into up
|
2021-12-25 21:49:47 +01:00 |
|
Karmanyaah Malhotra
|
63a29380a9
|
up testing
|
2021-12-25 10:26:18 -06:00 |
|
Philipp Heckel
|
eeb378cfdc
|
Change error JSON
|
2021-12-25 15:21:41 +01:00 |
|
Philipp Heckel
|
7a23779d07
|
JSON API errors
|
2021-12-25 15:15:05 +01:00 |
|
Philipp Heckel
|
29628a66a6
|
Initial
|
2021-12-25 11:56:02 +01:00 |
|
Philipp Heckel
|
f553cdb282
|
Continued e-mail support
|
2021-12-24 15:01:29 +01:00 |
|
Philipp Heckel
|
7280ae1ebc
|
Email rate limiting + tests
|
2021-12-24 00:03:04 +01:00 |
|
Philipp Heckel
|
873c57b3d8
|
Send emails
|
2021-12-23 21:04:17 +01:00 |
|
Philipp Heckel
|
85939618c8
|
Fix Poll(); yeyy tests
|
2021-12-22 23:45:19 +01:00 |
|
Philipp Heckel
|
fe5734d9f0
|
Tests for cliet package
|
2021-12-22 23:20:43 +01:00 |
|
Philipp Heckel
|
6a7e9071b6
|
Tests, client tests WIP
|
2021-12-22 14:17:50 +01:00 |
|
Philipp Heckel
|
68d881291c
|
Docs, LoadConfig, config test
|
2021-12-22 13:46:17 +01:00 |
|
Philipp Heckel
|
534fca0d3b
|
Fix data race
|
2021-12-22 10:04:59 +01:00 |
|
Philipp Heckel
|
b6120cf6d7
|
Message filtering tests
|
2021-12-22 09:44:16 +01:00 |
|
Philipp Heckel
|
09bf13bd70
|
Query filters only apply to message events
|
2021-12-21 21:29:37 +01:00 |
|
Philipp Heckel
|
9315829bc4
|
Query filters
|
2021-12-21 21:22:27 +01:00 |
|
Philipp Heckel
|
fa9d6444f5
|
Move config files and folders
|
2021-12-18 22:02:36 -05:00 |
|
Philipp Heckel
|
1e8421e8ce
|
WIP: CLI, relates to #46
|
2021-12-16 20:33:01 -05:00 |
|
Philipp Heckel
|
534b93e142
|
Webhooks (#55), more tests (#35) and python examples (#50)
|
2021-12-15 16:12:40 -05:00 |
|
Philipp Heckel
|
02f8a32b46
|
GET-based send/trigger, relates to #55
|
2021-12-15 09:41:55 -05:00 |
|
Philipp Heckel
|
9cb48dbb60
|
Move background tasks to functions
|
2021-12-15 09:13:16 -05:00 |
|
Philipp Heckel
|
63206f8581
|
Firebase keepalive, supports #56
|
2021-12-13 22:30:28 -05:00 |
|
Philipp Heckel
|
01d21165e9
|
Docs docs docs
|
2021-12-11 00:06:25 -05:00 |
|
Philipp Heckel
|
e8688fed4b
|
Lots more tests
|
2021-12-10 22:57:01 -05:00 |
|
Philipp Heckel
|
06b4d9c83b
|
Natural language
|
2021-12-10 19:59:51 -05:00 |
|