Additional Fields in Webhooks

This commit is contained in:
Qstick 2022-11-23 18:42:04 -06:00
parent 4f5ad899bb
commit bae374c0c8
4 changed files with 17 additions and 4 deletions

View File

@ -1,9 +1,11 @@
using System.Collections.Generic;
using NzbDrone.Core.Movies;
namespace NzbDrone.Core.Notifications.Webhook
{
public class WebhookAddedPayload : WebhookPayload
{
public WebhookMovie Movie { get; set; }
public AddMovieMethod AddMethod { get; set; }
}
}

View File

@ -66,13 +66,14 @@ namespace NzbDrone.Core.Notifications.Webhook
return payload;
}
protected WebhookRenamePayload BuildOnMovieAdded(Movie movie)
protected WebhookAddedPayload BuildOnMovieAdded(Movie movie)
{
return new WebhookRenamePayload
return new WebhookAddedPayload
{
EventType = WebhookEventType.MovieAdded,
InstanceName = _configFileProvider.InstanceName,
Movie = new WebhookMovie(movie)
Movie = new WebhookMovie(movie),
AddMethod = movie.AddOptions.AddMethod
};
}
@ -90,13 +91,20 @@ namespace NzbDrone.Core.Notifications.Webhook
protected WebhookMovieDeletePayload BuildOnMovieDelete(MovieDeleteMessage deleteMessage)
{
return new WebhookMovieDeletePayload
var payload = new WebhookMovieDeletePayload
{
EventType = WebhookEventType.MovieDelete,
InstanceName = _configFileProvider.InstanceName,
Movie = new WebhookMovie(deleteMessage.Movie),
DeletedFiles = deleteMessage.DeletedFiles
};
if (deleteMessage.DeletedFiles && deleteMessage.Movie.MovieFile != null)
{
payload.MovieFolderSize = deleteMessage.Movie.MovieFile.Size;
}
return payload;
}
protected WebhookRenamePayload BuildOnRenamePayload(Movie movie, List<RenamedMovieFile> renamedFiles)

View File

@ -4,5 +4,6 @@ namespace NzbDrone.Core.Notifications.Webhook
{
public WebhookMovie Movie { get; set; }
public bool DeletedFiles { get; set; }
public long MovieFolderSize { get; set; }
}
}

View File

@ -21,6 +21,7 @@ namespace NzbDrone.Core.Notifications.Webhook
Size = remoteMovie.Release.Size;
CustomFormats = remoteMovie.CustomFormats?.Select(x => x.Name).ToList();
CustomFormatScore = remoteMovie.CustomFormatScore;
IndexerFlags = remoteMovie.Release.IndexerFlags;
}
public string Quality { get; set; }
@ -31,5 +32,6 @@ namespace NzbDrone.Core.Notifications.Webhook
public long Size { get; set; }
public int CustomFormatScore { get; set; }
public List<string> CustomFormats { get; set; }
public IndexerFlags IndexerFlags { get; set; }
}
}