@@ -77,29 +77,33 @@ def create_webhook(arr_url: str, arr_api_key: str, webhook_url: str, arr_type: s
7777 name = f"PlexBot { arr_type .capitalize ()} Webhook"
7878
7979 # Determine which events to listen to based on ARR type
80- if arr_type .lower () == 'sonarr' :
81- on_grab = True
82- on_download = True
83- on_upgrade = True
80+ arr_type_lower = arr_type .lower ()
81+
82+ # Common events for all ARR types
83+ on_grab = True
84+ on_download = True
85+ on_upgrade = True
86+ on_health_issue = False
87+
88+ # Type-specific events
89+ on_rename = False
90+ on_series_delete = False
91+ on_episode_file_delete = False
92+ on_movie_delete = False
93+ on_book_delete = False
94+ on_author_delete = False
95+
96+ if arr_type_lower == 'sonarr' :
8497 on_rename = False
8598 on_series_delete = False
8699 on_episode_file_delete = False
87- on_health_issue = False
88- elif arr_type .lower () == 'radarr' :
89- on_grab = True
90- on_download = True
91- on_upgrade = True
100+ elif arr_type_lower == 'radarr' :
92101 on_rename = False
93102 on_movie_delete = False
94- on_health_issue = False
95- elif arr_type .lower () == 'readarr' :
96- on_grab = True
97- on_download = True
98- on_upgrade = True
103+ elif arr_type_lower == 'readarr' :
99104 on_rename = True
100105 on_book_delete = False
101106 on_author_delete = False
102- on_health_issue = False
103107 else :
104108 return {"success" : False , "message" : f"Unknown ARR type: { arr_type } " }
105109
@@ -109,11 +113,6 @@ def create_webhook(arr_url: str, arr_api_key: str, webhook_url: str, arr_type: s
109113 "onDownload" : on_download ,
110114 "onUpgrade" : on_upgrade ,
111115 "onRename" : on_rename ,
112- "onSeriesDelete" : on_series_delete if arr_type .lower () == 'sonarr' else False ,
113- "onEpisodeFileDelete" : on_episode_file_delete if arr_type .lower () == 'sonarr' else False ,
114- "onMovieDelete" : on_movie_delete if arr_type .lower () == 'radarr' else False ,
115- "onBookDelete" : on_book_delete if arr_type .lower () == 'readarr' else False ,
116- "onAuthorDelete" : on_author_delete if arr_type .lower () == 'readarr' else False ,
117116 "onHealthIssue" : on_health_issue ,
118117 "onApplicationUpdate" : False ,
119118 "includeHealthWarnings" : False ,
@@ -141,12 +140,12 @@ def create_webhook(arr_url: str, arr_api_key: str, webhook_url: str, arr_type: s
141140 }
142141
143142 # Add type-specific fields
144- if arr_type . lower () == 'sonarr' :
143+ if arr_type_lower == 'sonarr' :
145144 notification_data ["onSeriesDelete" ] = on_series_delete
146145 notification_data ["onEpisodeFileDelete" ] = on_episode_file_delete
147- elif arr_type . lower () == 'radarr' :
146+ elif arr_type_lower == 'radarr' :
148147 notification_data ["onMovieDelete" ] = on_movie_delete
149- elif arr_type . lower () == 'readarr' :
148+ elif arr_type_lower == 'readarr' :
150149 notification_data ["onBookDelete" ] = on_book_delete
151150 notification_data ["onAuthorDelete" ] = on_author_delete
152151
@@ -159,8 +158,8 @@ def create_webhook(arr_url: str, arr_api_key: str, webhook_url: str, arr_type: s
159158 response = requests .post (api_url , json = notification_data , headers = headers , timeout = 10 )
160159 response .raise_for_status ()
161160
162- logger .info (f "Successfully created webhook for { arr_type } at { arr_url } " )
163- return {"success" : True , "message" : f "Webhook created successfully" }
161+ logger .info ("Successfully created webhook for %s at %s" , arr_type , arr_url )
162+ return {"success" : True , "message" : "Webhook created successfully" }
164163
165164 except requests .exceptions .RequestException as e :
166165 error_msg = f"Failed to create webhook: { str (e )} "
@@ -169,7 +168,7 @@ def create_webhook(arr_url: str, arr_api_key: str, webhook_url: str, arr_type: s
169168 logger .error (error_msg )
170169 return {"success" : False , "message" : error_msg }
171170 except Exception as e :
172- logger .error (f "Error creating webhook for { arr_type } : { e } " , exc_info = True )
171+ logger .error ("Error creating webhook for %s: %s" , arr_type , e , exc_info = True )
173172 return {"success" : False , "message" : f"Error: { str (e )} " }
174173
175174
@@ -195,7 +194,7 @@ def test_arr_connection(arr_url: str, arr_api_key: str, arr_type: str = "sonarr"
195194 data = response .json ()
196195 version = data .get ('version' , 'Unknown' )
197196
198- logger .info (f "Successfully connected to { arr_type } at { arr_url } (version { version } )" )
197+ logger .info ("Successfully connected to %s at %s (version %s)" , arr_type , arr_url , version )
199198 return {
200199 "success" : True ,
201200 "message" : f"Connected successfully (version { version } )" ,
@@ -211,7 +210,7 @@ def test_arr_connection(arr_url: str, arr_api_key: str, arr_type: str = "sonarr"
211210 logger .error (error_msg )
212211 return {"success" : False , "message" : error_msg }
213212 except Exception as e :
214- logger .error (f "Error testing { arr_type } connection: { e } " , exc_info = True )
213+ logger .error ("Error testing %s connection: %s" , arr_type , e , exc_info = True )
215214 return {"success" : False , "message" : f"Error: { str (e )} " }
216215
217216
0 commit comments