New: Channel setting for Slack notifications to override default channel

pull/145/head
Qstick 7 years ago
parent 27d65937c0
commit 7be4a376ef

@ -15,6 +15,8 @@ namespace NzbDrone.Core.Notifications.Slack.Payloads
[JsonProperty("icon_url")] [JsonProperty("icon_url")]
public string IconUrl { get; set; } public string IconUrl { get; set; }
public string Channel { get; set; }
public List<Attachment> Attachments { get; set; } public List<Attachment> Attachments { get; set; }
} }
} }

@ -107,6 +107,7 @@ namespace NzbDrone.Core.Notifications.Slack
private SlackPayload CreatePayload(string message, List<Attachment> attachments = null) private SlackPayload CreatePayload(string message, List<Attachment> attachments = null)
{ {
var icon = Settings.Icon; var icon = Settings.Icon;
var channel = Settings.Channel;
var payload = new SlackPayload var payload = new SlackPayload
{ {
@ -128,6 +129,11 @@ namespace NzbDrone.Core.Notifications.Slack
} }
} }
if (channel.IsNotNullOrWhiteSpace())
{
payload.Channel = channel;
}
return payload; return payload;
} }
} }

@ -27,6 +27,9 @@ namespace NzbDrone.Core.Notifications.Slack
[FieldDefinition(2, Label = "Icon", HelpText = "Change the icon that is used for messages from this integration (Emoji or URL)", Type = FieldType.Textbox, HelpLink = "http://www.emoji-cheat-sheet.com/")] [FieldDefinition(2, Label = "Icon", HelpText = "Change the icon that is used for messages from this integration (Emoji or URL)", Type = FieldType.Textbox, HelpLink = "http://www.emoji-cheat-sheet.com/")]
public string Icon { get; set; } public string Icon { get; set; }
[FieldDefinition(3, Label = "Channel", HelpText = "Overrides the default channel for the incoming webhook (#other-channel)", Type = FieldType.Textbox)]
public string Channel { get; set; }
public NzbDroneValidationResult Validate() public NzbDroneValidationResult Validate()
{ {
return new NzbDroneValidationResult(Validator.Validate(this)); return new NzbDroneValidationResult(Validator.Validate(this));

Loading…
Cancel
Save