Commit Graph

336 Commits (8ff168283ce5dd3e32893ebd561f4283cf9dfdd0)

Author SHA1 Message Date
Philipp Heckel 3902599c52 More tests; enough! 2022-02-03 22:26:22 -05:00
Philipp Heckel 5cf92c55c6 Docs and minor improvements to "ntfy access" 2022-02-01 16:40:33 -05:00
Philipp Heckel e56eb0c178 Allow 'ntfy access --reset' 2022-02-01 12:23:11 -05:00
Philipp Heckel a77f89d302 Test Firebase stuff 2022-02-01 08:47:01 -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 b908f07355 . 2022-01-22 23:07:55 -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 8af9a97518 Update server.yml docs 2022-01-20 20:40:12 -05:00
Philipp Heckel df6611e8de Store encoding in cache database 2022-01-17 19:14:51 -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 034c81288c Docs docs docs 2022-01-13 15:17:30 -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 b5183612be Fix attachment pruning logging; .mp4 extension issue 2022-01-09 22:06:31 -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 5eca20469f Attachment size limit 2022-01-06 01:04:56 +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 47b491b6e2 55s keepalive, 65s did not work; unsure why 2022-01-01 22:48:17 +01:00
Philipp Heckel 91ad69dd00 Bump keepalive interval to 65s after testing 2022-01-01 22:21:47 +01:00
Philipp Heckel 521aad7db5 Increase keepalive duration to 55s 2022-01-01 22:11:09 +01:00
Philipp Heckel fe2988bb38 Reduce Firebase control channel keepalive message 2022-01-01 22:08:55 +01:00
Philipp Heckel 595ea87465 Switch VARCHAR(N) to TEXT, as they are equivalent in SQLite 2021-12-31 16:19:41 +01:00
Philipp Heckel 7b37141e07 Increase message size limit to 4096 2021-12-31 16:12:53 +01:00
Philipp Heckel dac88391c1 Docs docs docs 2021-12-28 17:36:12 +01:00
Philipp Heckel a46a520bca Fix tests 2021-12-28 01:48:58 +01:00
Philipp Heckel 04719f8dee Flip title and message if message is empty 2021-12-28 01:41:00 +01:00
Philipp Heckel 113053a9e3 Fix encoding issues 2021-12-28 01:26:20 +01:00
Philipp Heckel 7cfe909644 CLI arguments 2021-12-27 22:27:01 +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 43a2acb756 Typo 2021-12-27 00:37:18 +01:00
Philipp Heckel bcc424f2aa Oops 2021-12-26 14:36:38 +01:00
Philipp Heckel ec7e58a6a2 Fix santa bug, email subject encoding, closes #65 2021-12-26 14:34:25 +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 8a625ef786 Docs, and fixing tests 2021-12-25 10:35:08 +01:00
Philipp Heckel 3bc8ff0104 Docs 2021-12-25 00:57:02 +01:00
Philipp Heckel 11b5ac49c0 Fully working email feature 2021-12-25 00:13:09 +01:00
Philipp Heckel f553cdb282 Continued e-mail support 2021-12-24 15:01:29 +01:00
Philipp Heckel 6b46eb46e2 A mutex in a test struct ... 2021-12-24 00:10:22 +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 e3dfea1991 Docblocks, a handful of tests, but not enough 2021-12-19 14:27:26 -05: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 5ef83a7ba0 Test DB migration 2021-12-10 20:28:56 -05:00
Philipp Heckel 06b4d9c83b Natural language 2021-12-10 19:59:51 -05:00
Philipp Heckel 196c86d12b WIP_ Add 'At:'/'Delay:' headers to support scheduled messages 2021-12-10 11:31:42 -05:00
Philipp Heckel f966b2f9d7 Add 'Firebase: no' header, closes #42 2021-12-09 12:15:17 -05:00
Philipp Heckel d6fbccab55 Add 'Cache: no' header, closes #41 2021-12-09 10:23:17 -05:00
Philipp Heckel d5be5d3e8c Test schema migration 2021-12-08 23:24:09 -05:00
Philipp Heckel 98c1ab9e86 Finish cache tests 2021-12-08 22:57:31 -05:00
Philipp Heckel b437a87266 Disallow subscribing to /docs 2021-12-08 22:13:59 -05:00
Philipp Heckel 3a009eac9d More unit tests 2021-12-08 16:08:50 -05:00
Philipp Heckel 802ef17cb4 Fix data races 2021-12-07 16:03:01 -05:00
Philipp Heckel c9f1b02251 Unnecessary check around range 2021-12-07 15:43:51 -05:00
Philipp Heckel 40fbce07db Test for simple pub sub 2021-12-07 15:39:42 -05:00
Philipp Heckel fc16b0531a Open and keepalive tests 2021-12-07 14:46:10 -05:00
Philipp Heckel 94b70fbcb9 First server tests 2021-12-07 14:06:33 -05:00
Philipp Heckel fd71589f60 More test; begin test infra stuff 2021-12-07 12:23:42 -05:00
Philipp Heckel be50af0a7a Begin unit tests, relates to #35 2021-12-07 11:45:15 -05:00
Philipp Heckel da8f90d388 gofmt 2021-12-07 10:38:58 -05:00
Philipp Heckel 0f495b881a Almost read to publish 2021-12-05 15:57:37 -05:00
Philipp Heckel 4fcb3891a2 More docs; omg why is this taking so long 2021-12-05 07:31:05 -05:00
Philipp Heckel 0f57bd147c Docs docs docs 2021-12-04 23:37:50 -05:00
Philipp Heckel cd80c7ebd8 Strip down main page more 2021-12-04 20:23:29 -05:00
Philipp Heckel 90ba341323 Remove print 2021-12-04 14:33:55 -05:00
Philipp Heckel 7ba268887b Continuation of the docs 2021-12-02 17:27:31 -05:00
Philipp Heckel 07a1fe3acb Add TLS/HTTPS 2021-12-02 08:52:48 -05:00
Philipp Heckel 1e7ae885b4 Update examples 2021-11-29 15:34:29 -05:00
Philipp Heckel e3debf4315 Count capitalization 2021-11-29 11:48:34 -05:00
Philipp Heckel 28f4e1e55e Reduce emoji.js size 2021-11-29 10:57:18 -05:00
Philipp Heckel 8616be12a2 Emojis in notifications; server caching 2021-11-29 09:34:43 -05:00
Philipp Heckel 052ab7d411 Emoji support in Web UI 2021-11-28 19:58:49 -05:00
Philipp Heckel 6ca63cc0e9 Merge branch 'main' of github.com:binwiederhier/ntfy into main 2021-11-28 19:03:53 -05:00
Philipp Heckel f0edf0610e Add priorities and tags to web UI 2021-11-28 19:03:15 -05:00
Copephobia 4663c3b724
Fix topic div being hidden on iOS devices 2021-11-28 15:44:25 -05:00
Philipp Heckel d4330e86ac Add title, priority, tags to cache; add schema migration 2021-11-28 14:07:29 -05:00
Philipp Heckel 1b8ebab5f3 Priorities, titles, tags 2021-11-27 16:12:08 -05:00
Philipp Heckel 71af1af001 New logo and header 2021-11-23 20:22:09 -05:00
Philipp Heckel 9af64bf3dd Favicon 2021-11-23 12:02:16 -05:00
Philipp Heckel c247984ca9 Merge branch 'main' of github.com:binwiederhier/ntfy into main 2021-11-22 10:53:03 -05:00
Philipp Heckel 2a05715107 Multi-platform Docker images 2021-11-22 10:46:19 -05:00
Nathanaël Houn fde5fda635
Use custom url in case of self-hosted 2021-11-22 14:30:09 +01:00
Philipp Heckel 0d7039d034 Readme 2021-11-18 14:45:37 -05:00
Philipp Heckel 8280e5b0ad Do not allow empty messages 2021-11-18 14:21:00 -05:00
Philipp Heckel ae97fbe025 Fix typo 2021-11-18 13:14:55 -05:00
Philipp Heckel 6d7fec5337 Examples and anchors on website 2021-11-18 09:22:33 -05:00
Philipp Heckel ba2f6e08cd Anchors in web UI 2021-11-17 20:50:47 -05:00
Philipp Heckel 52136030be Subscribe to more than one topic 2021-11-15 07:56:58 -05:00
Philipp Heckel a481f4c448 Theme color in Chrome Android 2021-11-12 14:43:32 -05:00
Philipp Heckel c0ee174b13 Make publishing asynchronous 2021-11-09 14:48:25 -05:00
Philipp Heckel cc752cf797 Screenshots 2021-11-09 10:46:47 -05:00
Philipp Heckel b9b53bcdf0 Fix Chrome/Firefox inconsistencies with sorting 2021-11-08 10:35:46 -05:00
Philipp Heckel d453db89a7 Add since=all; make poll=1 default to since=all 2021-11-08 09:46:31 -05:00
Philipp Heckel 43c9a92748 Detail page in web UI 2021-11-08 09:24:34 -05:00
Philipp Heckel c01c94c64c Fix content type to add charset 2021-11-07 13:08:03 -05:00
Philipp Heckel 0170f673bd Fix rate limiting behind proxy, make configurable 2021-11-05 13:46:27 -04:00
Philipp Heckel 86a16e3944 More tweaking 2021-11-04 22:47:29 -04:00
Philipp Heckel c9124cb5eb Make web ui prettier 2021-11-04 22:32:17 -04:00
Philipp Heckel 644ffa1420 WIP: Web UI improvements 2021-11-04 10:55:34 -04:00
Philipp Heckel 5948f39a53 Add firebase subscriber to topics from cache upon initialization; stricter rate limits 2021-11-03 21:16:07 -04:00
Philipp Heckel 30a1ffa7cf Clean up readme 2021-11-03 11:33:34 -04:00
Philipp Heckel 7b810acfb5 SQLite cache 2021-11-02 21:09:49 -04:00
Philipp Heckel 1c7695c1f3 Merge branch 'main' into cache 2021-11-02 14:24:49 -04:00
Philipp Heckel 0e9fa1c4dc Fix raw endpoint 2021-11-02 14:10:56 -04:00
Philipp Heckel 67922b0ae5 Cache 2021-11-02 14:08:21 -04:00
Philipp Heckel b775e6dfce Limits 2021-11-01 16:39:40 -04:00
Philipp Heckel fa7a45902f Subscription limit 2021-11-01 15:21:38 -04:00
Philipp Heckel 91541f9c69 Add logo and color 2021-10-30 23:46:08 -04:00
Philipp Heckel 9a91312392 Only send Firebase data messages 2021-10-29 15:47:46 -04:00
Philipp Heckel b145e693a5 Add firebase support 2021-10-29 13:58:14 -04:00
Philipp Heckel 4677e724ee Re-add "message" as event type 2021-10-29 08:29:27 -04:00
Philipp Heckel ad17be1683 WIP: Firebase support 2021-10-28 23:50:38 -04:00
Philipp Heckel a38aca47bd Subscribe endpoint consolidation; same behavior for all endpoints; keepalive 2021-10-27 14:56:17 -04:00
Philipp Heckel b72afb1695 Todo, readme 2021-10-25 08:54:46 -04:00
Philipp Heckel 1321bf19dc Make things prettier, better sound, FAQ, icon in desktop notification 2021-10-24 22:08:06 -04:00
Philipp Heckel 6f9fba99e6 Notification sound 2021-10-24 14:51:49 -04:00
Philipp Heckel 317621c696 Styling 2021-10-24 14:22:53 -04:00
Philipp Heckel 39574c954b Examples, CORS 2021-10-24 13:34:15 -04:00
Philipp Heckel 1ab0282101 Test button 2021-10-24 09:12:29 -04:00
Philipp Heckel c3b97365ce Text field for mobile 2021-10-23 23:30:10 -04:00
Philipp Heckel 23cf77e0b7 Rate limiting, docs 2021-10-23 22:49:50 -04:00
Philipp Heckel e1c9fef6dc Makefile, Dockerfile, GoReleaser, config.yml, systemd service 2021-10-23 21:29:45 -04:00
Philipp Heckel a66bd6dad7 Remove websockets, readme, better UI 2021-10-23 15:22:17 -04:00
Philipp Heckel 630ecd351f SSE 2021-10-23 13:21:33 -04:00
Philipp Heckel 5c2b6d18ec Works mostly 2021-10-22 21:26:01 -04:00