Commit Graph

426 Commits (34a26da4f4664069b87f4899813d676a5cef8517)

Author SHA1 Message Date
Andreas Motl f1836cff84
Improve testing of `NotifyDBus`, `NotifyGnome`, and `NotifyMacOSX` (#689) 2022-10-16 13:43:15 -04:00
Andreas Motl c81d2465e4
Tests: Use global `no_throttling_everywhere` fixture (#701)
Instead of needing to individually disable throttling on a per-plugin
basis, this fixture takes care of all notifiers in `NOTIFY_MODULE_MAP`
automatically. With `autouse=True`, there is no need to activate it
manually.
2022-10-16 10:48:44 -04:00
Andreas Motl c9f0751b61 Resolve ambiguity with `apprise.plugins` module namespace
While the namespace is physically made of modules, it has been amended
to be the namespace home for the corresponding notifier classes as well.

This turned out to confuse both humans and machines on various ends.

While it has apparently worked for a while, it croaks on Python 3.11
now, and is not considered to have been a good idea in general.
2022-10-14 14:51:44 +02:00
Andreas Motl c797d1e2eb Tests: Use `no_throttling` fixture everywhere 2022-10-14 14:51:44 +02:00
Andreas Motl 85daf12fbd Chore: Remove Python 2 compatibility 2022-10-14 14:51:44 +02:00
Chris Caron b989427215
Allow extended characters in ID of email address (#693) 2022-10-13 19:53:32 -04:00
Chris Caron cb7f51d82a negative/minus (-) parameter sets GET Parms on xml, json, and form URLs 2022-10-11 20:25:13 -04:00
Andreas Motl 41b4ddb942
Use `super()` instead of `super(__class__, self)` (#686)
Removes some further Python 2 intricicanties.

It is `ruff` rule SPR001, taken from `flake8-super`.
- https://github.com/charliermarsh/ruff#rules
- https://pypi.org/project/flake8-super/

Implemented with:

  ruff --select SPR001 apprise test --fix
2022-10-09 10:00:24 -04:00
Chris Caron 67070e5932
Added BulkSMS Support (#683) 2022-10-07 23:32:34 -04:00
Andreas Motl 00afe4e5b6
Added support for recent CPython and PyPy versions; Droped Python v2.7 Support (#680) 2022-10-07 20:28:36 -04:00
Chris Caron f7244cce3d
Bugfix: Decorator handles multiple URLs correctly now (#678) 2022-10-05 23:04:00 -04:00
Chris Caron 3efb2c6f3e
Reply-To not put in header if not specified (#664) 2022-09-16 12:14:38 -04:00
Chris Caron d1c653fc04
Added SMSEagle Support (#661) 2022-09-06 09:05:03 -04:00
Dokime 6fbb2ba4b9
Email deliverability improvement (#660) 2022-09-05 18:59:43 -04:00
Chris Caron 2d5ab59252
RHEL9 Support - Test cases to leverage unittest.mock when possible (#658) 2022-08-31 20:05:40 -04:00
Chris Caron 450fc54dbb
Add global support for port= directive in URL parsing (#639) 2022-08-06 13:09:35 -04:00
Chris Caron 7f7f6863c9
Improved Hotmail/Outlook email support (#638) 2022-08-06 12:56:19 -04:00
Chris Caron 75ad104e99
Apprise @notify decorator/plugin support (#625) 2022-07-15 11:27:36 -04:00
Chris Caron 088aba1622
Discord Apprise URL supports thread= directive (#630) 2022-07-13 19:26:21 -04:00
Ryan Young b34051ccaf
Fix notify() failing when being called from an existing asynchronous event loop (#624) 2022-07-13 18:46:47 -04:00
Chris Caron 113fa365f2
mailto:// templates allow for port and ssl-mode over-ride (#621)
Also added some more in depth unit tests
2022-07-06 08:01:35 -04:00
Chris Caron fcedb47049
Removal of XMPP support due to instability (#619) 2022-07-03 12:09:37 -04:00
Chris Caron 49407619c5
Test coverage for Pushover Markdown support added (#618) 2022-07-01 10:43:04 -04:00
Chris Caron e95484349e
Escape new lines for TEXT->HTML conversions (#617) 2022-07-01 09:31:06 -04:00
Chris Caron 1519e98cda
Verify that <br/> is properly escapped in telegram calls (#608)
There is no code changes here; but an extra set of unit tests can't hurt.
2022-06-30 17:47:06 -04:00
Chris Caron 4c57d76ee7
Nexmo is now Vonage (#609) 2022-06-18 22:18:42 -04:00
Chris Caron 9a21de2e56
Refactored token parsing for YAML config (#599) 2022-06-09 17:54:57 -04:00
Chris Caron fb32f1feea
Line Support Added (#594) 2022-06-02 20:01:31 -04:00
Chris Caron 61e9d7ce71
Added PagerDuty Support (via event triggers) (#587) 2022-06-02 19:40:31 -04:00
Chris Caron 463eb54897
Pushover to support numerical priority values (#597) 2022-06-02 19:31:38 -04:00
Chris Caron 8ed4b7b72a
Decreased phone-no min_len requirements (#591) 2022-05-30 05:36:52 -04:00
Chris Caron 9ef8e72952
Deprication Cleanup and Code Tidy (#593) 2022-05-29 22:19:29 -04:00
Chris Caron 6ac9c1d89a
Signal supports a HTTP 201 Response (#592) 2022-05-29 15:08:53 -04:00
Chris Caron 9c145a842e
Signal API Attachment and Group Support Added (#580) 2022-05-11 11:11:51 -04:00
Chris Caron ca0c8460f1
Bark Notification Support Added (#582) 2022-05-11 11:09:50 -04:00
Clemens Wolff af2919fbb5
Fix Zulip 401 when botname contains a dash (#581) 2022-05-02 12:30:12 -04:00
Chris Caron fd0cb3ffcc
Re-worked Telegram HTML/Markdown -> HTML Conversion (#579) 2022-05-01 14:43:55 -04:00
Milo Mirate 3c07d80975
Add support for guilded.gg (#578) 2022-04-28 19:25:03 -04:00
Chris Caron 4a87d45879
Apprise HTML/MARKDOWN/TEXT Translation Handling Refactoring (#575) 2022-04-28 19:14:49 -04:00
Chris Caron 8a3acc815d
Telegram and HTML title conversion updates (#574) 2022-04-23 08:30:45 -04:00
Chris Caron 1908b26668 bumped version to v0.9.8.1 2022-04-20 16:47:29 -04:00
Chris Caron 65d447ec4c
Ntfy attachment support added (#571) 2022-04-18 17:07:47 -04:00
Chris Caron 41fe862241
Signal API Support Added (#568) 2022-04-16 15:34:30 -04:00
Chris Caron a05b042c6d
Improved Apprise encoding and text format support (#566) 2022-04-16 15:33:49 -04:00
Chris Caron 5d14259227
Added `always` special tag (will always notify) (#561) 2022-04-10 12:22:37 -04:00
Joey Espinosa b28cd4cdff
Added ntfy support (#524) 2022-04-03 22:00:44 -04:00
Chris Caron 4b4ec6bf30
Custom over-rides added to JSON and XML queries (#547) 2022-03-28 19:57:46 -04:00
Chris Caron 259462efcc
improved URL parsing (#544) 2022-03-14 08:28:25 -04:00
Chris Caron 908f2c1e27
Twitter (Tweets) Log Posting Details (#539) 2022-03-10 20:59:40 -05:00
Chris Caron 2a81899e6e
Twitter Image Attachment Support Added (#536) 2022-03-07 17:52:22 -05:00
Chris Caron 405e26e22d
HTML to TEXT/MARKDOWN cleanup and refactoring (#530) 2022-02-01 22:23:42 -05:00
Chris Caron 8fa146685f
Fullpath bulletproofing on XML, JSON, and FORM plugins (#519) 2022-01-29 14:23:44 -05:00
Chris Caron a00ce74566
Reddit Secret and App ID Validation Fixed (#528) 2022-01-28 16:04:32 -05:00
Ryan Young 6a2b6130db
Add notification body conversion for HTML to plain text (#527) 2022-01-27 19:33:34 -05:00
Chris Caron 5e2a293195
FCM Plugin Supports more Payload Options (#489) 2022-01-25 18:19:24 -05:00
Joerg Schultze-Lutter 6fbe23832b
Bugfix: Avoid duplicate target Dapnet call signs (#521) 2022-01-25 15:38:40 -05:00
Stephane Desneux aa3d30f7b7
Telegram: enhanced bot owner detection to avoid exception (#517) 2022-01-15 15:31:28 -05:00
KevinLauer e077344b1d
Nextcloud Talk support (#515) 2022-01-11 22:13:32 -05:00
Chris Caron ca7465299d
Custom form:// application/x-www-form-urlencoded Support (#512) 2022-01-04 11:30:16 -05:00
Chris Caron 12326c755b
/opt/homebrew/bin/terminal-notify path added to MacOSX (#509) 2021-12-28 13:21:39 -05:00
Joerg Schultze-Lutter 9242445126
Added DAPNET/Hampager Support (#506) 2021-12-28 12:35:03 -05:00
xuzheliang135 5bf89aeefc
Add ServerChan suppport (#494)
Co-authored-by: xuzheliang135 <xuzheliang135@qq.com>
2021-12-13 22:41:53 -05:00
Chris Caron 51794e6e91
Amazon SES Support (#491) 2021-12-06 17:03:30 -05:00
Chris Caron 54cd566ab8 code coverage updates 2021-11-26 11:24:43 -05:00
Chris Caron fe83c62669
Refactored Unit Testing and Dependencies (#483) 2021-11-25 15:20:22 -05:00
linkmauve 1dfde961e8
Fixed XMPP Support & SleekXMPP dropped (#485) 2021-11-23 19:15:12 -05:00
Chris Caron 76700bfa1d
Refactored Slack plugin to allow users to switch between payload types (#482) 2021-11-13 08:33:38 -05:00
Chris Caron d248012d8b
Single alpha characters for subdomains still identify as a valid hostname (#475) 2021-11-04 19:42:45 -04:00
Chris Caron 9b5815ef6e
CLI --interpret-escapes works without --title specified (#471) 2021-10-30 17:00:05 -04:00
Chris Caron 245e57cca9
Apprise API Integration (#459) 2021-10-30 16:59:20 -04:00
Chris Caron 08b0577ed8
Added support for matrix notices (#460) 2021-10-25 13:57:35 -04:00
Chris Caron ac7eb86185
Telegram Silent Notification and Web Page Preview Controls Added (#466) 2021-10-24 22:20:30 -04:00
Spencer Phillip Young e8add7b95a
Add supplementary url support for pushover (#468) 2021-10-24 22:20:05 -04:00
Chris Caron e2ebdbdcf8
Security CWE-312 and CWE-20 Handling (#453) 2021-10-06 17:31:34 -04:00
t-900-a 5badfadf7f
Add support for streamlabs (#427) 2021-09-18 14:49:05 -04:00
Chris Caron 0c7e32390e
Added support for remote syslog servers (#442) 2021-09-18 14:45:17 -04:00
Chris Caron 109841d72e
MQTT Support Added (#443) 2021-09-16 22:46:33 -04:00
Marc Khouri 3c552a686f
Add Twilio API key support (#440) 2021-09-14 23:03:37 -04:00
Chris Caron 1916a9105d
Added HTML support for Pushover plugin (#437) 2021-09-06 13:55:40 -04:00
Chris Caron 81d1ea72bc
Nextcloud versioning support added (#432) 2021-08-29 12:02:56 -04:00
Chris Caron a888b85f8e
Matrix HTML and Markdown Support (#431) 2021-08-29 11:29:30 -04:00
Chris Caron bb7c77105e
Attachment Support for JSON & XML Notifications (#426) 2021-08-15 19:47:24 -04:00
Chris Caron 06b6ed4d2c
Added DingTalk Support (#200) 2021-08-11 07:37:58 -04:00
Chris Caron bca44c02a5
ModuleNotFoundError exception on sys.exit() bugfix (#417) 2021-08-08 12:09:59 -04:00
Chris Caron 0b26d1c884
Rocket.Chat basic message structure fix (#419)
You only can send alias and avatar properties if your user has the bot role. We implement this rule to avoid users to impersonate other users. - quoted from Rocket.Chat website

This update accounts for this restriction
2021-08-08 11:44:12 -04:00
Chris Caron ab6b6b51c7
Fixed argument parsing within YAML files (#404) 2021-07-28 13:17:16 -04:00
Chris Caron 8a455695ba
Refactored the way phone numbers are managed (#408) 2021-07-28 10:32:10 -04:00
Ryan Young 3cfbdea101
Implemented a new async_notify() method (#397) 2021-07-01 14:09:20 -04:00
Chris Caron 51f91972c2
Added SMTP2Go (with Attachment) Support (#389) 2021-05-15 20:29:37 -04:00
Chris Caron 59aa5f5d10
Telegram escaping completely refactored (#386) 2021-05-15 16:08:53 -04:00
Chris Caron 975b1721af
Fixed MSTeams webhook handling for new format (#380) 2021-05-02 10:11:51 -04:00
Chris Caron e0c0b66ff0
Revert "Conducto CI Integration (Replacing Travis CI) (#367)" (#372)
This reverts commit 8bc47dc118.
Due to unforeseen circumstances, Conducto no longer exists; reverting changes.
2021-03-26 16:52:00 -04:00
Chris Caron 8bc47dc118
Conducto CI Integration (Replacing Travis CI) (#367)
See https://conducto.com for details on this great service 👍
2021-03-10 10:38:32 -05:00
Chris Caron 9cf8188961
fixes path issue with home assistant notifications (#370) 2021-03-09 11:32:43 -05:00
Chris Caron 10939d333d general code enhancements/nomenclature 2021-03-05 13:22:03 -05:00
Chris Caron 9af0050ca1
Reddit Notification Support (#366) 2021-03-04 10:02:26 -05:00
Chris Caron 64a103f14a
slixmpp library support added to XMPP plugin (#240) 2021-02-22 16:59:45 -05:00
Chris Caron 9e9b140642
Microsoft Teams Webhook to include team name in URL (#361) 2021-02-22 14:35:28 -05:00
Chris Caron 221e304a73
Better asyncio handling in Python <3.7 using threading (#364) 2021-02-22 14:16:35 -05:00
Chris Caron 0649754096 better escape interpretation for Python 2.7.5 (EL7) users 2021-02-22 11:36:19 -05:00
Chris Caron 62dd5bab5c test coverage added 2021-02-17 17:44:10 -05:00
Chris Caron 4a2f60e338
Improved FCM Support Supporting both Legacy and OAuth2 Methods (#353) 2021-02-14 14:03:12 -05:00
Chris Caron ca22b931ca
Home Assistant Integration (#354) 2021-02-14 14:01:30 -05:00
Chris Caron 073dad68d0 escape handling tests in Python v2.x fixed 2021-02-07 11:32:57 -05:00
Chris Caron 5f945ceef7
Cleaned up Mattermost Integration (#355) 2021-02-06 14:55:49 -05:00
Chris Caron fec6de1403
Added support for interpretable escapes via CLI (#349) 2021-01-31 17:15:18 -05:00
Chris Caron c7f015bf7c improved test coverage 2021-01-23 17:35:04 -05:00
Chris Caron b69ed1dfa9 Added Google Chat Support (#346) 2021-01-11 14:56:59 -05:00
Chris Caron 23957a3337
Added support for Slack email address targets (#345) 2021-01-10 15:55:59 -05:00
Chris Caron 5e002044a4 fixed failing unit test 2020-12-31 10:16:03 -05:00
Chris Caron 4037d8726e OneSignal code cleanup 2020-12-30 16:29:23 -05:00
Chris Caron e997c11382
Added Opsgenie Support (#337) 2020-12-30 15:55:16 -05:00
Chris Caron a023361db4
Added OneSignal Support (#335) 2020-12-29 10:49:33 -05:00
Chris Caron c7d6aefebb
APPRISE_URLS & APPRISE_CONFIG env variable support added (#334) 2020-12-26 17:36:33 -05:00
Chris Caron 83e3fdc048
Added Google Firebase Cloud Messaging (FCM) Support (#329) 2020-12-23 14:56:28 -05:00
Chris Caron f68c414801
Zulip to reference the word 'stream' and not 'channel' (#330) 2020-12-14 18:45:54 -05:00
Sebastian Thomschke fa05cfa81e
Allow hostnames with underscores when parsing URLs (#324) 2020-11-23 19:36:08 -05:00
Chris Caron 2c2722f61f
Use unicode responses recieved from Amazon (#320) 2020-11-14 13:52:00 -05:00
Chris Caron 54c3f6d9df
Added Parse Platform Support (#212) 2020-10-19 20:01:06 -04:00
Chris Caron 52a8317356
LogCapture() class for those wishing to capture notification output (#311) 2020-10-13 14:27:42 -04:00
Chris Caron 53a8d046ce
Header/Meta support added to email plugin (#310) 2020-10-06 16:32:00 -04:00
Chris Caron 3091669b85 SparkPost cc and bcc improvements + test cases (#309) 2020-10-06 14:02:00 -04:00
Chris Caron 89eaffa286
Mailgun cc, bcc, batch processing, and attachment support (#308) 2020-10-06 10:43:46 -04:00
Chris Caron a2525f671e
SparkPost Notification Support (#307) 2020-10-04 11:14:09 -04:00
Chris Caron 8ca8e51833
MSTeams/Apprise custom template support (#299) 2020-10-02 20:50:27 -04:00
Chris Caron c732b16d43
Added support for Yandex Email (#303) 2020-09-29 15:16:02 -04:00
Chris Caron b83bc37522
Copywrite update & support boolean based asset values in YAML config (#301) 2020-09-26 20:26:45 -04:00
Chris Caron a853546f0f
Strict enforcing of +, -, and : prefixed kwargs in URLs (#302) 2020-09-26 20:14:55 -04:00
Chris Caron fcd81160be
Added additional security for attachment handling (#300) 2020-09-21 11:26:02 -04:00
Chris Caron 7187af5991
Unit test to prove async_mode flag is behaving as expected (#297) 2020-09-17 19:33:34 -04:00
Chris Caron 784e073eea
Discord markdown enhancements (#295) 2020-09-13 23:06:41 -04:00
Chris Caron 49faa9a201
Lametric Time cloud mode support fixed (#293) 2020-09-13 22:13:27 -04:00
Chris Caron b1373bf428
Improved YAML configuration parsing (#288) 2020-09-03 13:25:01 -04:00
Chris Caron 8cf638ca9b bumped version to v0.8.8 2020-09-02 07:54:40 -04:00
Chris Caron 397ad4de0f
LaMetric Time supports icon= for custom defined ones (#287) 2020-09-01 21:46:21 -04:00
Chris Caron cba8599764
YAML extended configuration support for 'include' keyword (#284) 2020-08-28 18:09:32 -04:00
Chris Caron 66d285a57e
Honor deprecation notices by removing them and accompanied code (#283) 2020-08-28 16:49:09 -04:00
Chris Caron 6dfd429b25
Added bulletproofing to configuation parsing (#282) 2020-08-27 17:45:25 -04:00
Chris Caron 25514643f6
Apprise configuration support for 'include' keyword (#278) 2020-08-25 17:54:31 -04:00
Chris Caron 6e1b8a0bd6
Advanced email parsing added; eg: Full Name email@domain.com (#276) 2020-08-18 14:05:29 -04:00
Chris Caron ca695ed398
Telegram bot owner detection moved from init() to send() (#274) 2020-08-16 22:42:35 -04:00
Chris Caron aa039e74b2
Python asyncio Integration - Notifications sent Asynchronously (#273) 2020-08-15 20:28:15 -04:00
Chris Caron 4f4b15d47e
Asset passed into AppriseConfig() is now recognized (#272) 2020-08-14 21:40:19 -04:00
Chris Caron 0ef4e45fab
Better Email Internationalization Support (#270) 2020-08-08 21:05:30 -04:00
Chris Caron ad6316bda0
Improved URL parsing; introducing IPV6 support (#269) 2020-08-08 09:08:49 -04:00
Chris Caron bc44bdca84
Lametric Time/Clock support added (#267) 2020-08-07 15:27:58 -04:00
Chris Caron 479218da6a
Growl notification library rewrite; gntp now external dependency (#252) 2020-08-04 12:04:23 -04:00
Chris Caron ffcde046b0
Python 3.9 Beta CI added & Fedora 33 Rawhide support (#265) 2020-08-01 11:58:21 -04:00
Chris Caron 3b8b790871
Added Spontit support (#253) 2020-08-01 09:36:34 -04:00
Chris Caron a91064af8f
Refactored templating; introduced rto= and cto= URL parameters (#264) 2020-07-31 21:49:38 -04:00