Code Monkey home page Code Monkey logo

nzb-notify's Introduction

Notify Processing Script

Paypal

Send notifications to all of the popular notification services (PushBullet, NotifyMyAndroid, XBMC, Email etc) from NZBGet or SABnzbd. You can chain as many notification services as you want and support most of the advance features each service offers you too. You can even run the tool from the command line for your own custom use.

Built on Apprise

This guts of this script have been recently extracted into it's own project called Apprise which allows others to build Notifications into their applications as well. Apprise was written in such a way that there wouldn't be a lot of effort to add more notification services either. Feel free to contact me if one you would like to use is missing.

Supported Notifications

For a complete list of supported notification services and examples on how to build their URLs click here.

Installation and usage instructions

  1. Ensure you have Python v2.7 or later installed onto your system.
# Pull in dependencies:
pip install -r requirements.txt
  1. Simply place the Notify.py and Notify directory together.
    • NZBGet users: you'll want to place these inside of your nzbget/scripts directory. Please ensure you are running (at least) NZBGet v11.0 or higher. You can acquire the latest version of of it from here.
    • NZBGet users: As one additional note; this script makes use of the RPC feature of NZBGet in order to retrive all of the status information it will notify you with. Its very important that this is configured correctly (in the 'Settings -> Security' area). The out of the box settings should work fine; but worth noting here should experience any issues.
    • SABnzbd users: You'll point your SABnzbd configuration to reference sabnzbd-notify.py via the Script entry and not Notify.py. However, please note that the Notify.py script is still required (as sabnzbd-notify.py is a wrapper to it). You will use the Parameters section to provide the services you wish to notify (see below how they are constructed).

See the Command Line section below for more instructions on how to call the script from the command line.

SABnzbd Users

SABnzbd users can test that their script is working okay manually as well if they're having issues with it through their application. This is also a great way to test out that you've created the correct URL string.

# Send a notification to XBMC (assuming its listening on
# port 8080 at the ip 192.168.0.2 with respect to the example
# below:
python sabnzbd-notify.py complete 'Hello' 'World' xbmc://192.168.0.2

The syntax is very similar except SABnzbd expects 4 distinct arguments.

Arg # Description
1 The type of notification we are sending. This has an impact on the icon (for those that support it) that you will pass along with the message.
2 The title of the notification message. If this is an empty string, then there is enough information based on the notification type you passed in (argument 1) to generate a title.
3 The message body.
4 Comma delimited URL strings just like the ones already discussed above.

SABnzbd Configuration

First, make sure you've placed sabnzb-notify.py, Notify.py, and the Notify directory inside of the /path/to/SABnzbd/scripts/ directory or the instructions below will not work.

Once you know the URL(s) that work for you, you can set SABnzbd to automatically notify setting it up as follows. From within SABnzbd's web interface:

  • Click on Settings
  • Click on Notifications
  • Place a checkbox in the Enable notification script option.
  • Choose sabnzb-notify.py from the Script dropdown menu.
  • Specify the URL such as kodi://192.168.0.2 in the Parameters section. You can specify more then one URL here by simply using a comma (,) as a delimiter.

CentOS/RedHat users can also refer to a blog entry I prepared for this which includes RPM packaging for both SABnzbd and NZB-Notify. These can be easily installed (with all required dependencies by just getting yourself set up with my repository here.

Command Line

Notify.py has a built in command line interface that can be easily tied to a cron entry or can be easily called from the command line to automate the fetching of subtitles.

Here are the switches available to you:

Usage: Notify.py [options]

Options:
  -h, --help            show this help message and exit
  -s URL(s), --servers=URL(s)
                        Specify 1 or more servers in their URL format ie:
                        growl://mypass@localhost
  -t TITLE, --title=TITLE
                        Specify the title of the notification message.
  -b BODY, --body=BODY  Specify the body of the notification message.
  -i, --include_image   Include image in message if the protocol supports it.
  -u IMAGE_URL, --image_url=IMAGE_URL
                        Provide url to image; should be either http://,
                        https://, or file://. This option implies that
                        --include_image (-i) is set automatically
  -L FILE, --logfile=FILE
                        Send output to the specified logfile instead of
                        stdout.
  -D, --debug           Debug Mode

Here is simple example:

# Send a notification to XBMC (assuming its listening on
# port 8080 at the ip 192.168.0.2 with respect to the example
# below:
python Notify.py -s xbmc://192.168.0.2 -t "Hello" -b "World!"

# you can also use it's new name (kodi) to achive the same
# results:
python Notify.py -s kodi://192.168.0.2 -t "Hello" -b "World!"

You can also mix and match as many servers as you want by separating your urls with a comma and/or space.

# Send a notification to XBMC and a Growl Server
python Notify.py \
    -s growl://192.168.0.10,xbmc://user:[email protected] \
    -t "Hello" -b "World!"

Donations

If you like this script and feel like donating, you can do so through either PayPal or sponsor me! Thank you so much to everyone who has donated in the past!

nzb-notify's People

Contributors

0xflotus avatar caronc avatar p00chie avatar paradix avatar safihre avatar wegotourselvesareader avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nzb-notify's Issues

Synology + Sabnzbd not working

I have been trying to make this script work on my Synology NAS with Sabnzbd but it keeps failing.
I copied the folders Notify and patches and the files Notify.py and sabnzbd-notify.py to the scripts folder of sabnzbd with 777 permissions (just to be sure).

What I've tried:

  • Check Enable notification script in sabnzbd, select sabnzbd-notify.py and fill in all kinds of combinations as parameters; fails with Notification script returned exit code -1 and output "Cannot run script /usr/local/sabnzbd-testing/var/scripts/sabnzbd-notify.py" if i click on test notification

  • Call the sabnzbd-notify.py script myself: python sabnzbd-notify.py complete 'Hello' 'World' tgram://botid/chatid; fails with

2017-01-12 21:17:47,326 - sabnzbd-notify - 14456 - ERROR - The engine /volume1/@appstore/sabnzbd-testing/var/scripts/Notify.py was not found!
  • Finally I tried to run the Notify.py script itself: python Notify.py -s tgram://botid/chatid-t "hello" -b "world", after a few seconds it fails with the following message:
Traceback (most recent call last):
  File "Notify.py", line 290, in <module>
    from pnotify import *
  File "/volume1/@appstore/sabnzbd-testing/var/scripts/Notify/pnotify/__init__.py", line 26, in <module>
    from NotifyBoxcar import NotifyBoxcar
  File "/volume1/@appstore/sabnzbd-testing/var/scripts/Notify/pnotify/NotifyBoxcar.py", line 23, in <module>
    import requests
  File "/volume1/@appstore/sabnzbd-testing/var/scripts/Notify/requests/__init__.py", line 53, in <module>
    from urllib3.contrib import pyopenssl
  File "/volume1/@appstore/sabnzbd-testing/var/scripts/Notify/urllib3/contrib/pyopenssl.py", line 53, in <module>
    import OpenSSL.SSL
  File "/volume1/@appstore/sabnzbd-testing/var/scripts/Notify/OpenSSL/__init__.py", line 8, in <module>
    from OpenSSL import rand, crypto, SSL
  File "/volume1/@appstore/sabnzbd-testing/var/scripts/Notify/OpenSSL/SSL.py", line 112, in <module>
    if _lib.Cryptography_HAS_SSL_ST:
AttributeError: 'FFILibrary' object has no attribute 'Cryptography_HAS_SSL_ST'

The NAS is a DS415+ with DSM version DSM 6.0.2-8451 Update 7.
Running python -V gives Python 2.7.12

Error with sabnzbd + docker

I recently installed the docker container for linuxserver/sabnzbd in a Mac OS host and I haven't been able to make the script work.

I'm trying to use ifttt but I think the error is independent of that. I think it may be related to missing dependencies but it was my understanding that all the necessary components were in the Notify folder.

My scripts folder contains sabnzbd-notify.py, Notify.py and Notify folder.

In sabnzbd I select sabnzbd-notify.py under Script and ifttt://xxxxxxxxxxx/sabnzbd/ in parameters (with the actual key) and this is the error generated when I hit Test Notification

Notification script returned exit code 1 and output "Traceback (most recent call last): File "/config/scripts/Notify.py", line 416, in from apprise import Apprise File "/config/scripts/Notify/apprise/init.py", line 31, in from .plugins.NotifyBase import NotifyBase File "/config/scripts/Notify/apprise/plugins/init.py", line 23, in from .NotifyBoxcar import NotifyBoxcar File "/config/scripts/Notify/apprise/plugins/NotifyBoxcar.py", line 20, in import requests File "/config/scripts/Notify/requests/init.py", line 53, in from urllib3.contrib import pyopenssl File "/config/scripts/Notify/urllib3/contrib/pyopenssl.py", line 53, in import OpenSSL.SSL File "/config/scripts/Notify/OpenSSL/init.py", line 8, in from OpenSSL import crypto, SSL File "/config/scripts/Notify/OpenSSL/SSL.py", line 115, in if _lib.Cryptography_HAS_SSL_ST: AttributeError: 'module' object has no attribute 'Cryptography_HAS_SSL_ST' "

Thanks in advance!

Sabnzbd / Mattermost error: "module named ssl_match_hostname"

OS: Windows 10E x64
Sabnzbd: 2.1.0 [443efb5]

Not sure what changed, but the notifications just stopped working with MassterMost.

SABnzbd Notification settings:

mmosts://[email protected]/ifeaht4hpt89mrijxdpwxxxxxx?verify=False


ERROR a few seconds ago Notification script returned exit code 1 and output "Traceback (most recent call last):   File "C:\Program Files\SABnzbd\scripts\Notify.py", line 315, in      from pnotify import *   File "C:\Program Files\SABnzbd\scripts\Notify\pnotify\__init__.py", line 26, in      from NotifyBoxcar import NotifyBoxcar   File "C:\Program Files\SABnzbd\scripts\Notify\pnotify\NotifyBoxcar.py", line 23, in      import requests   File "C:\Program Files\SABnzbd\scripts\Notify\requests\__init__.py", line 58, in      from . import utils   File "C:\Program Files\SABnzbd\scripts\Notify\requests\utils.py", line 30, in      from .exceptions import InvalidURL   File "C:\Program Files\SABnzbd\scripts\Notify\requests\exceptions.py", line 10, in      from urllib3.exceptions import HTTPError as BaseHTTPError   File "C:\Program Files\SABnzbd\scripts\Notify\urllib3\__init__.py", line 10, in      from .connectionpool import (   File "C:\Program Files\SABnzbd\scripts\Notify\urllib3\connectionpool.py", line 35, in      from backports.ssl_match_hostname import CertificateError ImportError: No module named ssl_match_hostname "

Screenshot:

image

sabnzbd notification to telegram gives an error

I setup a bot for notification. I have put the scripts in the correct folder. also the folder copied t .sabnzbd/scripts

In sabnzbd chose sabnzbd-notify in parameters tgram:///

When i try test-notification an error occures

Notification script returned exit code 1 and output "Traceback (most recent call last): File "/home/patrick/.sabnzbd/scripts/Notify.py", line 355, in from pnotify import * File "/home/patrick/.sabnzbd/scripts/Notify/pnotify/init.py", line 26, in from .NotifyBoxcar import NotifyBoxcar File "/home/patrick/.sabnzbd/scripts/Notify/pnotify/NotifyBoxcar.py", line 23, in import requests File "/home/patrick/.sabnzbd/scripts/Notify/requests/init.py", line 53, in from urllib3.contrib import pyopenssl File "/home/patrick/.sabnzbd/scripts/Notify/urllib3/contrib/pyopenssl.py", line 53, in import OpenSSL.SSL File "/home/patrick/.sabnzbd/scripts/Notify/OpenSSL/init.py", line 8, in from OpenSSL import crypto, SSL File "/home/patrick/.sabnzbd/scripts/Notify/OpenSSL/SSL.py", line 115, in if _lib.Cryptography_HAS_SSL_ST: AttributeError: 'module' object has no attribute 'Cryptography_HAS_SSL_ST' "

Replace core engine with apprise

I wrote all of the notifications into their own library (that even supports Python 3). It was entirely based on this nzb-notify tool.

But now the next best thing would be to eliminate the entire notification core from this script and use the Apprise library instead.

Add Image Support to Telegram Notification

Ticket #36 is getting a bit long and within it was a request to allow for Image support in Telegram.
To break this out and make it easier to track, this is just a new ticket to represent the request.

NZBGet Telegram not sending notifications

When I send a message to my Telegram bot via the curl command everything works fine. The bot sends the message in the chat.

Also, within NZBGet when running the Notify 'Test Server Configuration' I get a message in the Telegram group chat saying the following:

NZBGet-Notify Configuration Test
## NZBGet-Notify Configuration Test ##
- **OnFailure**: Yes
- **OnSuccess**: Yes
- **Include Statistics**: Yes
- **Include File Listings**: Yes
- **Include Log Details**: Yes

Whenever a download occurs and completes I get no notification. Nothing is showing up in the NZBGet logs either.
All permissions in the script folder are setup correctly. 775 for every file/folder and assigned to the same groups/users as NZBGet is.

I am currently running Centos 7 with Python 2.7.5.
Any pointers on where I am making some amateur mistake?

SABnzbd + freenas not working

Hello,

i got some Problem with you Script, so when i test the notification script then it works correctly.
But when SABnzbd finished a download then i will get this error:

"2016-11-04 18:11:16,666 - 6931 - ERROR - Fatal Exception: Traceback (most recent call last): File "/media/scripts/nzbToMedia/Notify/nzbget/ScriptBase.py", line 2418, in run exit_code = main_function(*args, **kwargs) File "/media/scripts/nzbToMedia/Notify.py", line 1102, in main notify_type=notify_type, File "/media/scripts/nzbToMedia/Notify.py", line 894, in notify nobj.notify(body=body, title=title, notify_type=notify_type) File "/media/scripts/nzbToMedia/Notify/pnotify/NotifyBase.py", line 380, in notify **kwargs): File "/media/scripts/nzbToMedia/Notify/pnotify/NotifyTelegram.py", line 263, in _notify self.escape_html(title), File "/media/scripts/nzbToMedia/Notify/pnotify/NotifyBase.py", line 318, in escape_html replace(u'\t', u' ').\ UnicodeDecodeError: 'ascii' codec can't decode byte 0xfc in position 23: ordinal not in range(128)

What i am doing wrong?
I use your script with freenas:

root@sabnzbd_1:/media/scripts/nzbToMedia # uname -a FreeBSD sabnzbd_1 10.3-STABLE FreeBSD 10.3-STABLE #0 r295946+0ea9076(9.10-STABLE): Mon Oct 3 06:51:23 UTC 2016 root@gauntlet:/freenas-9.10-releng/_BE/objs/freenas-9.10-releng/_BE/os/sys/FreeNAS.amd64 amd64

and the Files have 755 rights.

root@sabnzbd_1:/media/scripts/nzbnotify/nzb-notify-master # ll total 109 -rw-r--r-- 1 root media 675 Oct 29 05:34 .gitignore -rwxr-xr-x 1 media media 35121 Oct 29 05:34 LICENSE* drwxr-xr-x 14 media media 17 Nov 4 18:00 Notify/ -rwxr-xr-x 1 media media 45668 Oct 29 05:34 Notify.py* drwxr-xr-x 15 media media 15 Oct 25 09:59 Notify_Licensing/ -rwxr-xr-x 1 media media 14402 Oct 29 05:34 README.md* drwxr-xr-x 2 media media 6 Nov 4 18:00 patches/ -rwxr-xr-x 1 media media 7744 Oct 29 05:34 sabnzbd-notify.py*

nzb-notify problem with nzbget module

My setup doesn't work anymore. I use the actual nzb-notify (master branch) and nzbget as a docker conatiner (linuxserver/nzbget).

In nzbget I get an PP-Failure:

Mon Mar 18 2019 22:54:15 INFO Executing post-process-script nzb-notify/Notify.py for movie-file
Mon Mar 18 2019 22:54:15 INFO Notify: Traceback (most recent call last):
Mon Mar 18 2019 22:54:15 INFO Notify: File "/downloads/scripts/nzb-notify/Notify.py", line 159, in
Mon Mar 18 2019 22:54:15 INFO Notify: from nzbget import SCRIPT_MODE
Mon Mar 18 2019 22:54:15 INFO Notify: ImportError: No module named nzbget
Mon Mar 18 2019 22:54:15 ERROR Post-process-script nzb-notify/Notify.py for movie-file failed (terminated with unknown status)

Until last week, everything worked fine. In another community I received the hint to install the two missing modules (inside the docker container):
pip install nzbget
pip install apprise

Is this the solution? Why is this necessary now?

UnboundLocalError: local variable 'context' referenced before assignment

Hi, when postprocessing a download notify is triggered to notify me when a download is finished, though it fails (see logging). The script is working fine on notifying me onQueue event. so dont know what's happening. Maybe you can have a look?

Post-process-script nzbToMedia/Notify.py for Greys.Anatomy.S14E09.720p.HDTV.x264-AVS failed
Notify: [DEBUG] Exiting with return code: 94
Notify: UnboundLocalError: local variable 'context' referenced before assignment
Notify: context=context,
Notify: File "/share/MD0_DATA/.qpkg/NZBGet/nzbget/scripts/nzbToMedia/Notify/nzbget/ScriptBase.py", line 2487, in api_connect
Notify: if not self.api_connect():
Notify: File "/share/MD0_DATA/.qpkg/NZBGet/nzbget/scripts/nzbToMedia/Notify/nzbget/PostProcessScript.py", line 595, in get_statistics
Notify: stats = self.get_statistics()
Notify: File "/share/MD0_DATA/.qpkg/NZBGet/nzbget/scripts/nzbToMedia/Notify.py", line 1162, in postprocess_main
Notify: exit_code = main_function(*args, **kwargs)
Notify: File "/share/MD0_DATA/.qpkg/NZBGet/nzbget/scripts/nzbToMedia/Notify/nzbget/ScriptBase.py", line 3035, in run
Notify: Traceback (most recent call last):
Notify: [DEBUG] get(system) CONTROLPASSWORD="tegbzn6789"
Notify: [DEBUG] get(system) CONTROLUSERNAME="nzbget"
Notify: [DEBUG] get(system) CONTROLPORT="6789"
Notify: [DEBUG] get(system) SECUREKEY=""
Notify: [DEBUG] get(system) SECURECERT=""
Notify: [DEBUG] get(system) SECURECONTROL="no"
Notify: [DEBUG] get(config) INCLUDELOGS="OnFailure"
Notify: [DEBUG] get(config) INCLUDEFILES="yes"
Notify: [DEBUG] get(config) INCLUDESTATS="yes"
Notify: [DEBUG] get(config) ONSUCCESS="yes"
Notify: [DEBUG] get(config) ONFAILURE="yes"
Notify: [DEBUG] get(config) SERVERS="tgram://"
Notify: [DEBUG] get(config) INCLUDEIMAGE="yes"
Notify: [DEBUG] get(default) BODY=None
Notify: [DEBUG] get(default) TITLE=None
Notify: [DEBUG] Opened connection to SQLite Database: /share/Download/nzbget/tmp/nzbget/nzbget.db
Notify: [DEBUG] get(config) SERVERS="tgram://"
Notify: [DEBUG] get(system) NZBID="1398"
Notify: NZBParse - NZB-File parsed 2 meta entries
Notify: NZB-File detected: Greys.Anatomy.S14E09.720p.HDTV.x264-AVS.nzb.queued
Notify: [DEBUG] NZB-Files located: Greys.Anatomy.S14E09.720p.HDTV.x264-AVS.nzb.queued (2018-01-19 05:41:50)
Notify: [DEBUG] Allowed Greys.Anatomy.S14E09.720p.HDTV.x264-AVS.nzb.queued (regex)
Notify: [DEBUG] get_files('/share/Download/nzbget/nzb') with 1 filter(s)
Notify: [DEBUG] get(system) NZBDIR="/share/Download/nzbget/nzb"
Notify: [DEBUG] get_files('/share/MD0_DATA/Download/nzbget/tmp') with 1 filter(s)
Notify: [DEBUG] Script Mode: postprocess
Executing post-process-script nzbToMedia/Notify.py for Greys.Anatomy.S14E09.720p.HDTV.x264-AVS

Discord notification only sending via test?

I'm hoping that i'm missing something here.

I'm running NZBGet in a docker container and ran into a few issues getting setup (#57)

However, I can successfully click Test Server Configuration in NZBGET and I get a test message in Discord.

NZBGETBOTToday at 1:22 AM
NZBGet-Notify Configuration Test
## NZBGet-Notify Configuration Test ##
- OnFailure: Yes
- OnSuccess: Yes
- Include Statistics: Yes
- Include File Listings: Yes
- Include Log Details: Yes

However, that's all I get.

I have it set for OnQueue, OnFailure and OnSuccess, but no matter what goes into NZBGET, I never get a notification in discord.

Any ideas what I'm missing here?

Also, Script Version: 0.9.3.

Import error in Python 2.7 and 3.6

Hello!

When trying to run
python sabnzbd-notify.py complete 'Hello' 'World' tgram://$TOKEN/$CHAT_ID
i get:

Traceback (most recent call last):
File "/home/sabnzbd/nzb-notify/Notify.py", line 305, in
from urllib import unquote
ImportError: cannot import name 'unquote'

Upon fixing the import error by changing it to urllib.parse iget:

Traceback (most recent call last):
File "/home/sabnzbd/nzb-notify/Notify.py", line 309, in
from nzbget import SCRIPT_MODE
File "/home/sabnzbd/nzb-notify/Notify/nzbget/init.py", line 23, in
from ScriptBase import *
ModuleNotFoundError: No module named 'ScriptBase'

I find this really strange since ScriptBase are clearely available.
I have tried running it with both Python 2.7 and 3.6.

Not saving config

Hi - just discovered this, great tool- thank you for writing it!

Small issue with nzbget - everything works, except my config doesn’t save. After reload the options switch back. I can’t figure out where the config file is that the settings are being read from so I can check permissions?

Improve Unicode Support

Here is the original traceback source before it was tidied up below:

Traceback (most recent call last):
...
File "apprise\Apprise.py", line 248, in notify
File "path\to\markdown\__init__.py", line 470, in markdown
File "path\to\markdown\__init__.py", line 338, in convert
UnicodeDecodeError: 'ascii' codec can't decode byte 0x92 in position 3078: ordinal not in range(128). -- Note: Markdown only accepts unicode input!

nzb-notify should force the conversion of all strings to unicode and not rely on apprise to do this. Will close apprise/20 and move the issue to here instead.

SABnzbd support

Hi, I'm from the SABnzbd team and I was wondering if you were interested in making a version of your (very extensive!) plugin for SABnzbd?
Our soon to be released version 1.1.0 will add support for Notification-scripts, besides the usual post-processing scripts. I can tell you more about it, if you're interested.
I am currently also updating our Wiki and going to add a section on 3rd-party scripts and programs, and would of course list your script!

Although NZBGet is technically superior, SABnzbd's user base is much larger, averaging 2100 installer downloads a day vs. 380 a day for NZBGet (stats from GitHub downloads-API for both).
As an extra bit of convincing 😇

Python Error with NZBGet 16.0-testing-r1353 (No Notifications).

Hi Chris, this is the first attempt at trying this script since the issues with growl last week.

Still not getting any notifications passed from NZBGet. Bear in mind this is being run on my Asustor AS5104T NAS, and is a custom Linux distribution by ASUS. All other built-in NZBGet python scripts are running as expected.

The following was found in the NZBGet logs:

process-script Notify.py for {Title Name Here}
Wed Aug 5 23:40:46 2015 1438814446 INFO Notify: env: can't execute 'python ': No such file or directory
Wed Aug 5 23:40:46 2015 1438814446 ERROR Post-process-script Notify.py for {Title Name Here} (terminated with unknown status)

(The NZB Title has been removed/replaced).

This was a category-based script call, i.e: Notify.py specified in the "Movies" category. However, not getting any notifications when items get added to the queue or any other activities either. CLI still working when sent manually as we tested it last week. It has been added to the relevant sections in the "Extension Scripts" section of NZBGet (PostScript and QueueScript).

Dan/Gib.

Notify on bad download

I use NZBGet and the nzbToMedia Scripts. With this my failed download handling works, but when a download failed, then the status is not failed, rather bad. It's possible to send a notification on bad status?

Request: Twitter notifications

I used to use a twitter notification setup from this url https://forums.sabnzbd.org/viewtopic.php?f=9&t=17999&p=98578&hilit=twitter#p98578
but this past week it has stopped working with error:
Notification script returned exit code 255 and output " C:\Program Files\SABnzbd>CLS C:\Program Files\SABnzbd>SET status= C:\Program Files\SABnzbd>SET zero=0 C:\Program Files\SABnzbd>SET filename="Test Notification" 0 was unexpected at this time. C:\Program Files\SABnzbd>IF EQU 0 (GOTO :SUCCESS) ELSE (GOTO :FAIL) "
Would be excellent if your awesome notify service could include twitter

Notify.py trunctates Telegram ChatID

Hi. I'm using Telegram and my ChatID is 14 characters long (including the starting minus sign). I tested my bot APIkey and this 14 character ChatID with curl it works fine. But when I run Notify.py either from nzbget or the command line using:

python ./Notify.py -s tgram://XXXX:XXXX/-1234567890123 -t "Testing" -b "Hello World"

I get:

Failed to send Telegram:-1234567890 notification: (400) Bad Request: chat not found.

In the error message you can see the ChatID is only the first 11 characters of what I wrote in the command line (obviously I'm using a fake ChatID in these examples but I think you get the gist). I get the same error message in nzbget.

Thanks for taking the time!

Add Inline Configuration Testing (from NZBGet)

Somewhere in the past recent releases of NZBGet, the ability to do inline configuration testing was added.

Basically allowing users to test their script configuration without having to use the CLI or fetch something from Usenet first (causing the script to execute).

This enhancement is to allow the ability to perform inline testing with this script to greatly simplify life for NZBGet users.

Latest push broke MM support with Sabnzbd: "No module named decorator "

Hey brother,

Looks like the latest update broke something with MatterMost integration.

Here's the error in SABnzbd UI, the same when run from CLI DEBUG.


Notification script returned exit code 1 and output "Traceback (most recent call last):   File "C:\Program Files\SABnzbd\scripts\Notify.py", line 315, in      from pnotify import *   File "C:\Program Files\SABnzbd\scripts\Notify\pnotify\__init__.py", line 43, in      from NotifyPushjet import NotifyPushjet   File "C:\Program Files\SABnzbd\scripts\Notify\pnotify\NotifyPushjet.py", line 22, in      import pushjet   File "C:\Program Files\SABnzbd\scripts\Notify\pushjet\__init__.py", line 5, in      from .pushjet import Service, Device, Subscription, Message, Api   File "C:\Program Files\SABnzbd\scripts\Notify\pushjet\pushjet.py", line 8, in      from .utilities import (   File "C:\Program Files\SABnzbd\scripts\Notify\pushjet\utilities.py", line 7, in      from decorator import decorator ImportError: No module named decorator "


ScreenShot:

image

ImportError: No module named nzbget

Recently my Notify.py script within NZBGET stopped working with the following error;

Notify: Traceback (most recent call last):
Notify: File "C:\Program Files (x86)\NZBGet\scripts\Notify.py", line 410, in <module>
Notify: from nzbget import SCRIPT_MODE
Notify: ImportError: No module named nzbget

I'm using the latest version of Notify.py and am on the Stable 20.0 version of NZBGET.

Any idea's on how to fix this?

Telegram error

I'm getting the following error when trying to test my notifications through Sabnzbd for Telegram

Notification script returned exit code 1 and output "'"python"' is not recognized as an internal or external command,
operable program or batch file."

If I try to run the script directly through command prompt, I get the following error:

C:\WINDOWS\system32>python C:\Tools\nzb-notify\sabnzbd-notify.py complete 'Hello' 'World' tgram://610278560:AAFFeg-b4GBjUaMyCAyl2XlOKclskODkCdc/90842913
Traceback (most recent call last):
File "C:\Tools\nzb-notify\Notify.py", line 159, in
from nzbget import SCRIPT_MODE
ImportError: No module named nzbget

Not sure where I'm going wrong here. Python is installed and I added it to my PATH environment variable. If I open up command prompt and simply type "python" it shows 2.7.16 is installed

Telegram not working

I am trying to setup the Telegram notifications in SABnzbd. However, whenever I try to test the notification, I get the following error:

Notification script returned exit code 1 and output "'"python"' is not recognized as an internal or external command, operable program or batch file."

I've added python to the path in windows, I am able to access it through the command line, but every time I try to test it through SAB, it fails. Any ideas?

Add MatterMost Support

I'm wondering if this works with MatterMost?

Looking over the Notify.py file, The Webhook that is generated from a self-hosted MatterMost installation doesn't look like the example in the notify.py file:

# You need to focus on the 3 Tokens at the end of the URL
#  * https://hooks.slack.com/services/TokenA/TokenB/TokenC

When I generate a webhook with MM, it looks like this:

URL: https://hooks.domain.com:8065/hooks/wireaom5w7gfmek1jkr6znqfww

Any Ideas?

Thanks for this! SLICK!

Not working with Growl for Windows

Already have Growl set up in Headphones, CouchPotato and Sonarr (NzbDrone) and all 3 work with Growl for Windows without issue.

However this script does not work. Tried doing a CLI test using the syntax:

python Notify.py -s growl://password@PC-IP-Address:23053 -t "Hello" -b "World"

A success message is generated, but no notification arrives at the opposite end. As I say, the other 3 apps with built-in support all work fine.

Also did the same CLI test but with the parameters adjusted for KODI. This works fine too. So eitther i'm specifying the command incorrectly, or there's a bug in the Growl portion of this code. Or it just isn't compatible with Growl for Windows.

Notify: NZBParse - NZB-File is missing

I recently did a clean setup of Notify.py. Since i'm getting the following Warning Message in NZBGET "Notify: NZBParse - NZB-File is missing"

Before i never saw this message. Does someone have an idea how to get rid of this warning message?

Some history;
I'm using NZBTOMEDIA and Notify in combination with NZBGET. Lately NZBTOMEDIA added a cleanup script within there process which also deleted the Notify folders/files. Therefore i created subfolders within the scripts folder of NZBGET and so split both scripts. Since i'm having the above issue (more a warning messange ;-))

ImportError: No module named pkg_resources

I'm trying to get nzb-notify up and running on my NZBGET.

I'm running NZBGet in the Linuxserver docker container and I see that recently they added pip modules into NZBGET, as indicated here - linuxserver/docker-nzbget#69

However, when I'm running a test on nzb-notify, I get the following message:

Executing script Notify.py with command TestServers
Notify: Traceback (most recent call last):
Notify: File "/downloads/usenet/nzbgetroot/scripts/Notify.py", line 181, in
Notify: from apprise import Apprise
Notify: File "/usr/lib/python2.7/site-packages/apprise/init.py", line 49, in
Notify: from .Apprise import Apprise
Notify: File "/usr/lib/python2.7/site-packages/apprise/Apprise.py", line 29, in
Notify: from markdown import markdown
Notify: File "/usr/lib/python2.7/site-packages/markdown/init.py", line 25, in
Notify: from .core import Markdown, markdown, markdownFromFile
Notify: File "/usr/lib/python2.7/site-packages/markdown/core.py", line 29, in
Notify: import pkg_resources
Notify: ImportError: No module named pkg_resources
Script Notify.py with command TestServers failed (terminated with unknown status)

I'm not certain if the pkg_resources is from nzb-notify or from the pip modules that are included in NZBGET now. There's some additional info here as well - https://stackoverflow.com/questions/7446187/no-module-named-pkg-resources

Thanks

Notification mapping not working with Sabnzbd and MatterMost?

OS: Windows10E 1703 X64
Sabnzbd: 2.1.0
MatterMost Server: 3.10.0
Notify Script ver: Latest

So I'm getting notifications whenever SAB pauses, shuts down, or other application specific notifications, but when a release is added or finished all that is included in the MatterMost channel is simply the name of the release, no "added", or "finished".

SABNzbd Params: "mmosts://[email protected]/ifeaht4hpt89mrijxdpwxxxxx?verify=False"

See the screenshot below:

sabnzbdscript

SabNzbd-Notify.py:

#!/usr/bin/env python
# -*- encoding: utf-8 -*-
#
# Notifification wrapper for SABnzbd
#
# Copyright (C) 2014-2016 Chris Caron <[email protected]>
#
# This file adds support for SABnzbd v1.1.0 or higher
#
# NZB-Notify is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
# NZB-Notify is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with NZB-Notify. If not, see <http://www.gnu.org/licenses/>.
import subprocess
import sys
import os

try:
    from signal import SIGKILL

except ImportError:
    # Windows 10 with 2.7.10 gave this error to a user for some reason
    # hopefully this will handle this situation
    SIGKILL = 9

from os import getpid
from os import kill
from os.path import abspath
from os.path import dirname
from os.path import join

from time import sleep
from datetime import datetime
from datetime import timedelta

import logging
import logging.handlers

# Logging Support
logger = logging.getLogger("sabnzbd-notify - %s" % getpid())
logging.raiseExceptions = 0
logger.setLevel(logging.INFO)
h1 = logging.StreamHandler(sys.stdout)
h1.setFormatter(logging. \
    Formatter("%(asctime)s - %(name)s - %(levelname)s - %(message)s"))
logger.addHandler(h1)

# Path to notify script
NOTIFY_SCRIPT = join(abspath(dirname(__file__)), 'Notify.py')

# Just some timeout value
NOTIFY_MAX_WAIT_TIME_SEC = 300

# This will be what I'll need you users to toggle if you thing you've
# found a bug you need me to solve.  Send your logs to [email protected]
# or i'll really have no idea what's going on.
DEBUG_MODE = False

# A mapping of possible notifications to their respected image.  This
# is only referenced by notifications that support this feature.
SABNZBD_NOTIFICATION_MAP = {
    # Startup/Shutdown
    'startup': (
        'Startup/Shutdown',
        'https://sabnzbd.org/images/icons/apple-touch-icon-76x76-precomposed.png',
    ),
    # Added NZB
    'download': (
        'Added NZB',
        'https://sabnzbd.org/images/icons/apple-touch-icon-76x76-precomposed.png',
    ),
    # Post-processing started
    'pp': (
        'Post-Processing Started',
        'https://sabnzbd.org/images/icons/apple-touch-icon-76x76-precomposed.png',
    ),
    # Job finished
    'complete': (
        'Job Finished',
        'https://sabnzbd.org/images/icons/apple-touch-icon-76x76-precomposed.png',
    ),
    # Job failed
    'failed': (
        'Job Failed',
        'https://sabnzbd.org/images/icons/apple-touch-icon-76x76-precomposed.png',
    ),
    # Warning
    'warning': (
        'Warning',
        'https://sabnzbd.org/images/icons/apple-touch-icon-76x76-precomposed.png',
    ),
    # Error
    'error': (
        'Error',
        'https://sabnzbd.org/images/icons/apple-touch-icon-76x76-precomposed.png',
    ),
    # Disk full
    'disk_full': (
        'Disk Full',
        'https://sabnzbd.org/images/icons/apple-touch-icon-76x76-precomposed.png',
    ),
    # Queue finished
    'queue_done': (
        'Queue Finished',
        'https://sabnzbd.org/images/icons/apple-touch-icon-76x76-precomposed.png',
    ),
    # User logged in
    'new_login': (
        'User Logged In',
        'https://sabnzbd.org/images/icons/apple-touch-icon-76x76-precomposed.png',
    ),
    # Other Messages
    'other': (
        'Other Messages',
        'https://sabnzbd.org/images/icons/apple-touch-icon-76x76-precomposed.png',
    ),
}

def syntax():
    """
    A simple script to print the syntax to the end user
    """
    return 'Syntax: sabnzbd-notify.py <Type> <Title> <Message> '+\
        'url1[,url2[,urlN]]' +\
        os.linesep + '* The <Type> can be one of the following:' +\
        os.linesep + os.linesep.join(['\t%s: %s' % (k, v[0]) \
                        for (k,v) in SABNZBD_NOTIFICATION_MAP.items()]) +\
        os.linesep + "* The <Title> and <Message> are self explanitory. "+\
        "If the <Title> is however left" + os.linesep +"\tblank, then the "+\
        "description of the <Type> is used instead." + os.linesep +\
        "* All remaining arguments are treated as URLs. You can also " +\
        "delimit multiple" + os.linesep + "\tURLs in a single " +\
        "string/argument with the use of a comma (,)."


def notify(ntype, title, body, urls, debug=None):
    """
    A callable function so SABnzbd can import this file and just
    call the notifications through here if they wish.
    """
    if debug is None:
        debug = DEBUG_MODE

    if sys.platform[0:3] == 'win':
        # Windows systems require the executable 'python'
        # up front
        cmd = [
            'python',
            NOTIFY_SCRIPT,
            '-t', title,
            '-b', body,
            '-u', SABNZBD_NOTIFICATION_MAP[ntype][1],
            '-s', urls,
        ]
    else:
        # Other systems determine the environment from
        # the executable's first line #!
        cmd = [
            NOTIFY_SCRIPT,
            '-t', title,
            '-b', body,
            '-u', SABNZBD_NOTIFICATION_MAP[ntype][1],
            '-s', urls,
        ]

    if debug:
        # Debug Mode Enabled
        cmd.append('-D')

    # Execute our Process
    p1 = subprocess.Popen(cmd)

    ## Calculate Wait Time
    max_wait_time = datetime.utcnow() + \
                    timedelta(seconds=NOTIFY_MAX_WAIT_TIME_SEC)

    while p1.poll() == None:
        if datetime.utcnow() >= max_wait_time:
            logger.error("Process aborted (took too long)")
            try:
                kill(p1.pid, SIGKILL)
            except:
                pass
        ## CPU Throttle
        sleep(0.8)

    if p1.poll() == None:
        ## Safety
        try:
            kill(p1.pid, SIGKILL)
        except:
            pass

    ## Ensure execution leaves memory
    p1.wait()

    if p1.returncode not in (0, 93):
        # 93 is a return value recognized by NZBGet as 'good'
        # all systems okay; we want to translate this back to
        # standard shell scripting responses if we get anything
        # outside of what is identified above
        return False
    return True

if __name__ == "__main__":
    # Simple parsing of the command line
    if len(sys.argv) <= 4:
        logger.error('Not enough arguments specified.')
        print(syntax())
        exit(1)

    # Make sure our Notify.py script is available to us
    if not (os.path.isfile(NOTIFY_SCRIPT) and \
            os.access(NOTIFY_SCRIPT, os.X_OK)):
        logger.error('The engine %s was not found!' % NOTIFY_SCRIPT)
        exit(1)

    # Parse our arguments to make sure they're valid
    notify_type = sys.argv[1].strip().lower()
    if notify_type not in SABNZBD_NOTIFICATION_MAP.keys():
        logger.error('Invalid <Type> specified (argument 1)')
        print(syntax())
        exit(1)

    # Take on specified title
    notify_title = sys.argv[2].strip()
    if not notify_title:
        notify_title = SABNZBD_NOTIFICATION_MAP[notify_type][0]

    # Store body (empty or not)
    notify_body = sys.argv[3].strip()

    # The URLs are complex and very depending on what we're notifying
    # so we'll let Notify.py take care of them at this point.
    notify_urls =  ','.join([ v.strip() for v in sys.argv[4:]])

    # Perform Notification
    exit(int(not notify(
        ntype=notify_type,
        title=notify_title,
        body=notify_body,
        urls=notify_urls,
    )))

Sending alerts to private DM in Slack

is there a way to send the notification to a DM in Slack instead of a public channel? or even a private channel? I don't want everyone to see my Plex Notifications.

Won't work for me on SabNZB

Hello,

i have a problem with your notify script. I set it up like your post here. And when i test it in sabnzb he says all is fine. But when some action is on sab there are no messages but many issues. Here are some of it...

2017-05-07 21:02:24,609 FEHLER: Skript gab Fehlercode 1 und Ausgabe "2017-05-07 21:02:24,434 - 6244 - FEHLER: - Fatal Exception: Traceback (most recent call last): File "C:\Program Files\SABnzbd\scripts\nzbToMedia\Notify\nzbget\ScriptBase.py", line 2873, in run exit_code = main_function(*args, **kwargs) File "C:\Program Files\SABnzbd\scripts\nzbToMedia\Notify.py", line 1106, in main notify_type=notify_type, File "C:\Program Files\SABnzbd\scripts\nzbToMedia\Notify.py", line 898, in notify nobj.notify(body=body, title=title, notify_type=notify_type) File "C:\Program Files\SABnzbd\scripts\nzbToMedia\Notify\pnotify\NotifyBase.py", line 380, in notify **kwargs): File "C:\Program Files\SABnzbd\scripts\nzbToMedia\Notify\pnotify\NotifyXBMC.py", line 157, in _notify title, body, notify_type, **kwargs) File "C:\Program Files\SABnzbd\scripts\nzbToMedia\Notify\pnotify\NotifyXBMC.py", line 146, in _payload_20 return (headers, dumps(payload)) File "C:\Python27\lib\json\__init__.py", line 244, in dumps return _default_encoder.encode(obj) File "C:\Python27\lib\json\encoder.py", line 207, in encode chunks = self.iterencode(o, _one_shot=True) File "C:\Python27\lib\json\encoder.py", line 270, in iterencode return _iterencode(o, 0) UnicodeDecodeError: 'utf8' codec can't decode byte 0xfc in position 17: invalid start byte " zurück

Maybe you can help me...

Greet's

Add Telegram Notification support (https://telegram.org)

Hi, would it be possible to support Telegram notifications?

For implementation reference, PlexPy supports sending Telegram notifications for Plex events. Would be great to have notifications for nzb events too. Ideally, both PlexPy and nzb-notify would be able to play along and relay notifications into Telegram through the same bot username. PlexPy prefaces every message with "PlexPy" so perhaps nzb-notify would have a similar prefacing system.

Notify on Dupe

Notify is working on Success and Failure i would like to see the option to notify on duplicate. I am using Telegram notifications.

No notifications [Pushover]

I'm running nzbget 17.0-testing-r1726 on CentOS 6.8 and installed nzbget-notify and nzbget appears to not be sending notifications at all.

I have debugging enabled, but do not see anything related in the main nzbget.log file.

I have tested the Notify.py with the pover:// string to confirm it is correct and working and my test notification was sent and received, so I am kind of at a loss. Any ideas?

Support for Signal

I'm using an Telegram Bot at the moment for notification do you have any plans to give support for signal in nzb-notify?

Documentation should include usage

Hello, as a newbie, I do not understand how to actually use the script. I've read the Readme file over and over again, but at no point can I find how to actually enable services. For example, I'm trying to enable a Slack notification for my SABnzbd install. Here's what I did:

  1. Installed the script (Notify.py, sabnzbd-notify.py, Notify) in SABnzbd/scripts
  2. Tried this in the command line: python sabnzbd-notify.py complete 'Hello' 'World' slack://TokenA/TokenB/TokenC/#Channel and it worked.
  3. Edited Notify.py to include my Slack webhook tokens: slack://TokenA/TokenB/TokenC/#Channel without the # at the beginning of the line
  4. Added sabnzbd-notify.py as a post-processing script

Received this error:
2017-05-03 00:08:19,812 - sabnzbd-notify - 9063 - ERROR - Invalid <Type> specified (argument 1) Syntax: sabnzbd-notify.py <Type> <Title> <Message> url1[,url2[,urlN]]

I'm not entirely confident that I added that Slack URL correctly. It's right below the Slack section in the Notify.py file, without the # .

Thank you very much!

New Sabnzbd alert icon?

OS: Windows 10
Sabnzbd
Agent: Mattermost

Sab Notification script:
mmosts://[email protected]/ifeaht4hpxxxxxxxijxdpwfia8ih?verify=False

Issue:

Out of no where the icon that started to display for Sabnzbd is different. And it's being loaded from an insecure source See screenshot below:

image

image

SABnzbd error.

I'm getting an error when trying to run sabnxbd-notify.py, either using SAB itself or attempting to test using CLI. The error is actually in Notify.py, on line 1055. "except TypeError, e:" at the comma apparently. It is showing an invalid syntax. I'll attach a screenshot as well.

NMA Message not working

I had to change the notify my android url:
NMA_URL = 'https://www.notifymyandroid.com/publicapi/notify/publicapi/notify'
to
NMA_URL = 'https://www.notifymyandroid.com/publicapi/notify'

In the logs i get

on Jun 15 18:06:42 2015 INFO Notify: [DEBUG] get(config) ONQUEUE="yes"
Mon Jun 15 18:06:42 2015 INFO Notify: [DEBUG] get(config) SERVERS="nma://apikey"
Mon Jun 15 18:06:42 2015 INFO Notify: [DEBUG] get(config) INCLUDEIMAGE="yes"
Mon Jun 15 18:06:42 2015 INFO Notify: [DEBUG] Server parsed to: {'host': 'apikey', 'user': None, 'query': None, 'url': 'nma://apikey', 'path': None, 'fullpath': None, 'password': None, 'port': None, 'schema': 'nma'}
Mon Jun 15 18:06:42 2015 INFO Notify: [DEBUG] NMA POST URL: https://www.notifymyandroid.com/publicapi/notify
Mon Jun 15 18:06:42 2015 INFO Notify: [DEBUG] NMA Payload: {'priority': 0, 'application': 'NZBGet-Notify', 'apikey': 'apikey', 'event': 'New File Queued for Download', 'description': 'Message'}

But i do not receive any message on notify my android :(

Slack Notification doesn't support empty channel list with specified webhook

I recently installed the docker container for linuxserver/sabnzbd in a Debian host and I haven't been able to make the script work.

I'm trying to use slack but I think the error is independent of that. I think it may be related to missing dependencies but it was my understanding that all the necessary components were in the Notify folder.

My scripts folder contains sabnzbd-notify.py, Notify.py and Notify folder.

In sabnzbd i run (with the actual key)
==> python sabnzbd-notify.py complete -D -t 'Hello' 'World' https://hooks.slack.com/services/xxxxx/xxxx/xxxx
I get the following error:
Traceback (most recent call last): File "/config/nzb-notify/Notify.py", line 159, in <module> from nzbget import SCRIPT_MODE ImportError: **No module named nzbget**

I also get the same error in sabnzbd when I select sabnzbd-notify.py under Script and when I hit Test Notification.....
I get same error in the sabnzbd.log file

Any help will be appreciated

AttributeError: 'module' object has no attribute 'SSL_ST_INIT'

Hi there,

first, thank you for the notify script. Works like a charm, at least for me since yesterday ;)
I'm on Debian Testing and I updated my system yesterday (installed all outstanding upgradable packages to their newest version). There were some updates reagarding SSL and/or python. Since then, I get the following error, if I use Notify.py resp. sabnzbd-notify.py (with arguments):

Traceback (most recent call last):
  File "nzb-notify/Notify.py", line 290, in <module>
    from pnotify import *
  File "nzb-notify/Notify/pnotify/__init__.py", line 26, in <module>
    from NotifyBoxcar import NotifyBoxcar
  File "nzb-notify/Notify/pnotify/NotifyBoxcar.py", line 23, in <module>
    import requests
  File "nzb-notify/Notify/requests/__init__.py", line 53, in <module>
    from urllib3.contrib import pyopenssl
  File "nzb-notify/Notify/urllib3/contrib/pyopenssl.py", line 53, in <module>
    import OpenSSL.SSL
  File "nzb-notify/Notify/OpenSSL/__init__.py", line 8, in <module>
    from OpenSSL import rand, crypto, SSL
  File "nzb-notify/Notify/OpenSSL/SSL.py", line 105, in <module>
    SSL_ST_INIT = _lib.SSL_ST_INIT
AttributeError: 'module' object has no attribute 'SSL_ST_INIT'

Can you please help? I'm not familiar with python and I assume you need more informations or tests. Please let me know what do you need in order to get to the bottom of the problem.

Thx in advance!

SSL Verification Option for Certificate Checking

Issue #19 pointed out that SSL Certificate Verification is enforced by default which is ideal in preventing Man-In-The-Middle attacks. But some smaller setups (and home projects) just get the certificates and don't want to pay the $200 USD to get their certificates signed.

Add ?verify=False as an optional parameter one can specify when using the secure (https) web posting method to deactivate SSL Certificate verification.

NZBGet Post Processing produces a KeyError: 'DownloadedSizeMB'

The original source of this bug was on forum.nzbget.net here.

The was reported during the Post Processing phase and the example given was:

Sun Oct 16 15:35:59 2016        ERROR   Notify:   File "/data/nzbget/scripts/nzb-notify-0.5.5/Notify/nzbget/ScriptBase.py", line 2418, in run
Sun Oct 16 15:35:59 2016        INFO    Notify:     exit_code = main_function(*args, **kwargs)
Sun Oct 16 15:35:59 2016        ERROR   Notify:   File "/data/nzbget//scripts/nzb-notify-0.5.5/Notify.py", line 993, in postprocess_main
Sun Oct 16 15:35:59 2016        INFO    Notify:     stats = self.get_statistics()
Sun Oct 16 15:35:59 2016        ERROR   Notify:   File "/data/nzbget/scripts/nzb-notify-0.5.5/Notify/nzbget/PostProcessScript.py", line 660, in get_statistics
Sun Oct 16 15:35:59 2016        INFO    Notify:     dl_size = float(group['DownloadedSizeMB'])
Sun Oct 16 15:35:59 2016        ERROR   Notify: KeyError: 'DownloadedSizeMB'
Sun Oct 16 15:35:59 2016        ERROR   Post-process-script nzb-notify-0.5.5/Notify.py for title_of_nzb_file failed

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.