forked from NussNougate/arr-mastodon
45 lines
1.3 KiB
Python
Executable File
45 lines
1.3 KiB
Python
Executable File
#!/usr/bin/python3
|
|
|
|
# https://wiki.servarr.com/en/sonarr/custom-scripts
|
|
|
|
import os
|
|
import configparser
|
|
import requests
|
|
|
|
config = configparser.ConfigParser()
|
|
config.read(os.path.dirname(__file__) + '/config.ini')
|
|
|
|
server_token = config['server']['token']
|
|
server_url = config['server']['url']
|
|
|
|
def toot(mastodon_url: str, body: str, mastodon_token: str):
|
|
headers = {}
|
|
headers["Authorization"] = f"Bearer {mastodon_token}"
|
|
|
|
data = {}
|
|
data["status"] = body
|
|
|
|
response = requests.post(
|
|
url=f"{mastodon_url}/api/v1/statuses", data=data, headers=headers
|
|
)
|
|
|
|
if os.getenv('radarr_eventtype'):
|
|
if os.getenv('radarr_eventtype') == 'Download':
|
|
body = "New content added to Jellyfin: \n"
|
|
body += "Movie: " + os.getenv('radarr_movie_title') + '\n'
|
|
toot(server_url, body, server_token)
|
|
|
|
|
|
if os.getenv('sonarr_eventtype'):
|
|
if os.getenv('sonarr_eventtype') == 'Download':
|
|
body = "New content added to Jellyfin: \n"
|
|
body += 'Series: ' + os.getenv('sonarr_series_title') + '\n'
|
|
body += 'Season: ' + os.getenv('sonarr_episodefile_seasonnumber') + '\n'
|
|
body += 'Episode: ' + os.getenv('sonarr_episodefile_episodecount') + '\n'
|
|
toot(server_url, body, server_token)
|
|
|
|
|
|
if os.getenv('sonarr_eventtype') == 'Test':
|
|
toot(server_url, "Test message", server_token)
|
|
|