1
0
Fork 0
mirror of https://github.com/miniflux/v2.git synced 2025-06-27 16:36:00 +00:00

feat(integrations/ntfy): make ntfy topics configurable per feed, with default one as fallback

This commit is contained in:
Uziskull 2025-02-24 01:41:51 +00:00 committed by Frédéric Guillot
parent 996f6f68d2
commit 55a3f9fcc9
27 changed files with 69 additions and 23 deletions

View file

@ -1008,4 +1008,11 @@ var migrations = []func(tx *sql.Tx, driver string) error{
_, err = tx.Exec(sql) _, err = tx.Exec(sql)
return err return err
}, },
func(tx *sql.Tx, _ string) (err error) {
sql := `
ALTER TABLE feeds ADD COLUMN ntfy_topic text default '';
`
_, err = tx.Exec(sql)
return err
},
} }

View file

@ -502,15 +502,20 @@ func PushEntries(feed *model.Feed, entries model.Entries, userIntegrations *mode
} }
if userIntegrations.NtfyEnabled && feed.NtfyEnabled { if userIntegrations.NtfyEnabled && feed.NtfyEnabled {
ntfyTopic := feed.NtfyTopic
if ntfyTopic == "" {
ntfyTopic = userIntegrations.NtfyTopic
}
slog.Debug("Sending new entries to Ntfy", slog.Debug("Sending new entries to Ntfy",
slog.Int64("user_id", userIntegrations.UserID), slog.Int64("user_id", userIntegrations.UserID),
slog.Int("nb_entries", len(entries)), slog.Int("nb_entries", len(entries)),
slog.Int64("feed_id", feed.ID), slog.Int64("feed_id", feed.ID),
slog.String("topic", ntfyTopic),
) )
client := ntfy.NewClient( client := ntfy.NewClient(
userIntegrations.NtfyURL, userIntegrations.NtfyURL,
userIntegrations.NtfyTopic, ntfyTopic,
userIntegrations.NtfyAPIToken, userIntegrations.NtfyAPIToken,
userIntegrations.NtfyUsername, userIntegrations.NtfyUsername,
userIntegrations.NtfyPassword, userIntegrations.NtfyPassword,

View file

@ -186,6 +186,7 @@
"form.feed.label.ntfy_max_priority": "Höchste Ntfy-Priorität", "form.feed.label.ntfy_max_priority": "Höchste Ntfy-Priorität",
"form.feed.label.ntfy_min_priority": "Niedrigste Ntfy-Priorität", "form.feed.label.ntfy_min_priority": "Niedrigste Ntfy-Priorität",
"form.feed.label.ntfy_priority": "Ntfy-Priorität", "form.feed.label.ntfy_priority": "Ntfy-Priorität",
"form.feed.label.ntfy_topic": "Ntfy-Thema (optional)",
"form.feed.label.pushover_activate": "Push entries to pushover.net", "form.feed.label.pushover_activate": "Push entries to pushover.net",
"form.feed.label.pushover_default_priority": "Pushover default priority", "form.feed.label.pushover_default_priority": "Pushover default priority",
"form.feed.label.pushover_high_priority": "Pushover high priority", "form.feed.label.pushover_high_priority": "Pushover high priority",
@ -254,7 +255,7 @@
"form.integration.ntfy_icon_url": "Ntfy-Symbol-URL (optional)", "form.integration.ntfy_icon_url": "Ntfy-Symbol-URL (optional)",
"form.integration.ntfy_internal_links": "Interne Links beim Klicken verwenden (optional)", "form.integration.ntfy_internal_links": "Interne Links beim Klicken verwenden (optional)",
"form.integration.ntfy_password": "Ntfy-Passwort (optional)", "form.integration.ntfy_password": "Ntfy-Passwort (optional)",
"form.integration.ntfy_topic": "Ntfy-Thema", "form.integration.ntfy_topic": "Ntfy-Thema (Standard, wenn nicht im Feed eingestellt)",
"form.integration.ntfy_url": "Ntfy-URL (optional, Standard ist ntfy.sh)", "form.integration.ntfy_url": "Ntfy-URL (optional, Standard ist ntfy.sh)",
"form.integration.ntfy_username": "Ntfy-Benutzername (optional)", "form.integration.ntfy_username": "Ntfy-Benutzername (optional)",
"form.integration.nunux_keeper_activate": "Artikel in Nunux Keeper speichern", "form.integration.nunux_keeper_activate": "Artikel in Nunux Keeper speichern",

View file

@ -186,6 +186,7 @@
"form.feed.label.ntfy_max_priority": "Ntfy max priority", "form.feed.label.ntfy_max_priority": "Ntfy max priority",
"form.feed.label.ntfy_min_priority": "Ntfy min priority", "form.feed.label.ntfy_min_priority": "Ntfy min priority",
"form.feed.label.ntfy_priority": "Ntfy priority", "form.feed.label.ntfy_priority": "Ntfy priority",
"form.feed.label.ntfy_topic": "Ntfy topic (optional)",
"form.feed.label.pushover_activate": "Push entries to pushover.net", "form.feed.label.pushover_activate": "Push entries to pushover.net",
"form.feed.label.pushover_default_priority": "Pushover default priority", "form.feed.label.pushover_default_priority": "Pushover default priority",
"form.feed.label.pushover_high_priority": "Pushover high priority", "form.feed.label.pushover_high_priority": "Pushover high priority",
@ -254,7 +255,7 @@
"form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)", "form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)",
"form.integration.ntfy_internal_links": "Use internal links on click (optional)", "form.integration.ntfy_internal_links": "Use internal links on click (optional)",
"form.integration.ntfy_password": "Ntfy Password (optional)", "form.integration.ntfy_password": "Ntfy Password (optional)",
"form.integration.ntfy_topic": "Ntfy topic", "form.integration.ntfy_topic": "Ntfy topic (default used if not set in feed)",
"form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)", "form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)",
"form.integration.ntfy_username": "Ntfy Username (optional)", "form.integration.ntfy_username": "Ntfy Username (optional)",
"form.integration.nunux_keeper_activate": "Αποθήκευση άρθρων στο Nunux Keeper", "form.integration.nunux_keeper_activate": "Αποθήκευση άρθρων στο Nunux Keeper",

View file

@ -186,6 +186,7 @@
"form.feed.label.ntfy_max_priority": "Ntfy max priority", "form.feed.label.ntfy_max_priority": "Ntfy max priority",
"form.feed.label.ntfy_min_priority": "Ntfy min priority", "form.feed.label.ntfy_min_priority": "Ntfy min priority",
"form.feed.label.ntfy_priority": "Ntfy priority", "form.feed.label.ntfy_priority": "Ntfy priority",
"form.feed.label.ntfy_topic": "Ntfy topic (optional)",
"form.feed.label.pushover_activate": "Push entries to Pushover", "form.feed.label.pushover_activate": "Push entries to Pushover",
"form.feed.label.pushover_default_priority": "Default priority", "form.feed.label.pushover_default_priority": "Default priority",
"form.feed.label.pushover_high_priority": "High priority", "form.feed.label.pushover_high_priority": "High priority",
@ -254,7 +255,7 @@
"form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)", "form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)",
"form.integration.ntfy_internal_links": "Use internal links on click (optional)", "form.integration.ntfy_internal_links": "Use internal links on click (optional)",
"form.integration.ntfy_password": "Ntfy Password (optional)", "form.integration.ntfy_password": "Ntfy Password (optional)",
"form.integration.ntfy_topic": "Ntfy topic", "form.integration.ntfy_topic": "Ntfy topic (default used if not set in feed)",
"form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)", "form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)",
"form.integration.ntfy_username": "Ntfy Username (optional)", "form.integration.ntfy_username": "Ntfy Username (optional)",
"form.integration.nunux_keeper_activate": "Save entries to Nunux Keeper", "form.integration.nunux_keeper_activate": "Save entries to Nunux Keeper",

View file

@ -186,6 +186,7 @@
"form.feed.label.ntfy_max_priority": "Prioridad máxima a Ntfy", "form.feed.label.ntfy_max_priority": "Prioridad máxima a Ntfy",
"form.feed.label.ntfy_min_priority": "Prioridad mínima a Ntfy", "form.feed.label.ntfy_min_priority": "Prioridad mínima a Ntfy",
"form.feed.label.ntfy_priority": "Prioridad Ntfy", "form.feed.label.ntfy_priority": "Prioridad Ntfy",
"form.feed.label.ntfy_topic": "Tema Ntfy (opcional)",
"form.feed.label.pushover_activate": "Push entries to pushover.net", "form.feed.label.pushover_activate": "Push entries to pushover.net",
"form.feed.label.pushover_default_priority": "Pushover default priority", "form.feed.label.pushover_default_priority": "Pushover default priority",
"form.feed.label.pushover_high_priority": "Pushover high priority", "form.feed.label.pushover_high_priority": "Pushover high priority",
@ -254,7 +255,7 @@
"form.integration.ntfy_icon_url": "URL del icono de Ntfy (opcional)", "form.integration.ntfy_icon_url": "URL del icono de Ntfy (opcional)",
"form.integration.ntfy_internal_links": "Use internal links on click (optional)", "form.integration.ntfy_internal_links": "Use internal links on click (optional)",
"form.integration.ntfy_password": "Contraseña de Ntfy (opcional)", "form.integration.ntfy_password": "Contraseña de Ntfy (opcional)",
"form.integration.ntfy_topic": "Tema Ntfy", "form.integration.ntfy_topic": "Tema Ntfy (por defecto, si no se establece en el feed)",
"form.integration.ntfy_url": "URL de Ntfy (opcional, la predeterminada es ntfy.sh)", "form.integration.ntfy_url": "URL de Ntfy (opcional, la predeterminada es ntfy.sh)",
"form.integration.ntfy_username": "Nombre de usuario de Ntfy (opcional)", "form.integration.ntfy_username": "Nombre de usuario de Ntfy (opcional)",
"form.integration.nunux_keeper_activate": "Enviar artículos a Nunux Keeper", "form.integration.nunux_keeper_activate": "Enviar artículos a Nunux Keeper",

View file

@ -186,6 +186,7 @@
"form.feed.label.ntfy_max_priority": "Ntfy max priority", "form.feed.label.ntfy_max_priority": "Ntfy max priority",
"form.feed.label.ntfy_min_priority": "Ntfy min priority", "form.feed.label.ntfy_min_priority": "Ntfy min priority",
"form.feed.label.ntfy_priority": "Ntfy priority", "form.feed.label.ntfy_priority": "Ntfy priority",
"form.feed.label.ntfy_topic": "Ntfy topic (optional)",
"form.feed.label.pushover_activate": "Push entries to pushover.net", "form.feed.label.pushover_activate": "Push entries to pushover.net",
"form.feed.label.pushover_default_priority": "Pushover default priority", "form.feed.label.pushover_default_priority": "Pushover default priority",
"form.feed.label.pushover_high_priority": "Pushover high priority", "form.feed.label.pushover_high_priority": "Pushover high priority",
@ -254,7 +255,7 @@
"form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)", "form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)",
"form.integration.ntfy_internal_links": "Use internal links on click (optional)", "form.integration.ntfy_internal_links": "Use internal links on click (optional)",
"form.integration.ntfy_password": "Ntfy Password (optional)", "form.integration.ntfy_password": "Ntfy Password (optional)",
"form.integration.ntfy_topic": "Ntfy topic", "form.integration.ntfy_topic": "Ntfy topic (default used if not set in feed)",
"form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)", "form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)",
"form.integration.ntfy_username": "Ntfy Username (optional)", "form.integration.ntfy_username": "Ntfy Username (optional)",
"form.integration.nunux_keeper_activate": "Tallenna artikkelit Nunux Keeperiin", "form.integration.nunux_keeper_activate": "Tallenna artikkelit Nunux Keeperiin",

View file

@ -186,6 +186,7 @@
"form.feed.label.ntfy_max_priority": "Priorité maximale de notification", "form.feed.label.ntfy_max_priority": "Priorité maximale de notification",
"form.feed.label.ntfy_min_priority": "Priorité minimale de notification", "form.feed.label.ntfy_min_priority": "Priorité minimale de notification",
"form.feed.label.ntfy_priority": "Priorité de notification", "form.feed.label.ntfy_priority": "Priorité de notification",
"form.feed.label.ntfy_topic": "Sujet Ntfy (facultatif)",
"form.feed.label.pushover_activate": "Activer les notifications vers Pushover", "form.feed.label.pushover_activate": "Activer les notifications vers Pushover",
"form.feed.label.pushover_default_priority": "Priorité par défaut", "form.feed.label.pushover_default_priority": "Priorité par défaut",
"form.feed.label.pushover_high_priority": "Priorité élevée", "form.feed.label.pushover_high_priority": "Priorité élevée",
@ -254,7 +255,7 @@
"form.integration.ntfy_icon_url": "URL de l'icône Ntfy (facultatif)", "form.integration.ntfy_icon_url": "URL de l'icône Ntfy (facultatif)",
"form.integration.ntfy_internal_links": "Utiliser les liens internes vers Miniflux (facultatif)", "form.integration.ntfy_internal_links": "Utiliser les liens internes vers Miniflux (facultatif)",
"form.integration.ntfy_password": "Mot de passe Ntfy (facultatif)", "form.integration.ntfy_password": "Mot de passe Ntfy (facultatif)",
"form.integration.ntfy_topic": "Sujet Ntfy", "form.integration.ntfy_topic": "Sujet Ntfy (défaut s'il n'est pas défini dans le flux)",
"form.integration.ntfy_url": "URL de Ntfy (optionnel, ntfy.sh par défaut)", "form.integration.ntfy_url": "URL de Ntfy (optionnel, ntfy.sh par défaut)",
"form.integration.ntfy_username": "Nom d'utilisateur Ntfy (optionnel)", "form.integration.ntfy_username": "Nom d'utilisateur Ntfy (optionnel)",
"form.integration.nunux_keeper_activate": "Sauvegarder les articles vers Nunux Keeper", "form.integration.nunux_keeper_activate": "Sauvegarder les articles vers Nunux Keeper",

View file

@ -186,6 +186,7 @@
"form.feed.label.ntfy_max_priority": "Ntfy max priority", "form.feed.label.ntfy_max_priority": "Ntfy max priority",
"form.feed.label.ntfy_min_priority": "Ntfy min priority", "form.feed.label.ntfy_min_priority": "Ntfy min priority",
"form.feed.label.ntfy_priority": "Ntfy priority", "form.feed.label.ntfy_priority": "Ntfy priority",
"form.feed.label.ntfy_topic": "Ntfy topic (optional)",
"form.feed.label.pushover_activate": "Push entries to pushover.net", "form.feed.label.pushover_activate": "Push entries to pushover.net",
"form.feed.label.pushover_default_priority": "Pushover default priority", "form.feed.label.pushover_default_priority": "Pushover default priority",
"form.feed.label.pushover_high_priority": "Pushover high priority", "form.feed.label.pushover_high_priority": "Pushover high priority",
@ -254,7 +255,7 @@
"form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)", "form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)",
"form.integration.ntfy_internal_links": "Use internal links on click (optional)", "form.integration.ntfy_internal_links": "Use internal links on click (optional)",
"form.integration.ntfy_password": "Ntfy Password (optional)", "form.integration.ntfy_password": "Ntfy Password (optional)",
"form.integration.ntfy_topic": "Ntfy topic", "form.integration.ntfy_topic": "Ntfy topic (default used if not set in feed)",
"form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)", "form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)",
"form.integration.ntfy_username": "Ntfy Username (optional)", "form.integration.ntfy_username": "Ntfy Username (optional)",
"form.integration.nunux_keeper_activate": "विषय-वस्तु को ननक्स कीपर में सहेजें", "form.integration.nunux_keeper_activate": "विषय-वस्तु को ननक्स कीपर में सहेजें",

View file

@ -184,6 +184,7 @@
"form.feed.label.ntfy_max_priority": "Ntfy max priority", "form.feed.label.ntfy_max_priority": "Ntfy max priority",
"form.feed.label.ntfy_min_priority": "Ntfy min priority", "form.feed.label.ntfy_min_priority": "Ntfy min priority",
"form.feed.label.ntfy_priority": "Ntfy priority", "form.feed.label.ntfy_priority": "Ntfy priority",
"form.feed.label.ntfy_topic": "Ntfy topic (optional)",
"form.feed.label.pushover_activate": "Push entries to pushover.net", "form.feed.label.pushover_activate": "Push entries to pushover.net",
"form.feed.label.pushover_default_priority": "Pushover default priority", "form.feed.label.pushover_default_priority": "Pushover default priority",
"form.feed.label.pushover_high_priority": "Pushover high priority", "form.feed.label.pushover_high_priority": "Pushover high priority",
@ -252,7 +253,7 @@
"form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)", "form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)",
"form.integration.ntfy_internal_links": "Use internal links on click (optional)", "form.integration.ntfy_internal_links": "Use internal links on click (optional)",
"form.integration.ntfy_password": "Ntfy Password (optional)", "form.integration.ntfy_password": "Ntfy Password (optional)",
"form.integration.ntfy_topic": "Ntfy topic", "form.integration.ntfy_topic": "Ntfy topic (default used if not set in feed)",
"form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)", "form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)",
"form.integration.ntfy_username": "Ntfy Username (optional)", "form.integration.ntfy_username": "Ntfy Username (optional)",
"form.integration.nunux_keeper_activate": "Simpan artikel ke Nunux Keeper", "form.integration.nunux_keeper_activate": "Simpan artikel ke Nunux Keeper",

View file

@ -186,6 +186,7 @@
"form.feed.label.ntfy_max_priority": "Ntfy max priority", "form.feed.label.ntfy_max_priority": "Ntfy max priority",
"form.feed.label.ntfy_min_priority": "Ntfy min priority", "form.feed.label.ntfy_min_priority": "Ntfy min priority",
"form.feed.label.ntfy_priority": "Ntfy priority", "form.feed.label.ntfy_priority": "Ntfy priority",
"form.feed.label.ntfy_topic": "Ntfy topic (optional)",
"form.feed.label.pushover_activate": "Push entries to pushover.net", "form.feed.label.pushover_activate": "Push entries to pushover.net",
"form.feed.label.pushover_default_priority": "Pushover default priority", "form.feed.label.pushover_default_priority": "Pushover default priority",
"form.feed.label.pushover_high_priority": "Pushover high priority", "form.feed.label.pushover_high_priority": "Pushover high priority",
@ -254,7 +255,7 @@
"form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)", "form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)",
"form.integration.ntfy_internal_links": "Use internal links on click (optional)", "form.integration.ntfy_internal_links": "Use internal links on click (optional)",
"form.integration.ntfy_password": "Ntfy Password (optional)", "form.integration.ntfy_password": "Ntfy Password (optional)",
"form.integration.ntfy_topic": "Ntfy topic", "form.integration.ntfy_topic": "Ntfy topic (default used if not set in feed)",
"form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)", "form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)",
"form.integration.ntfy_username": "Ntfy Username (optional)", "form.integration.ntfy_username": "Ntfy Username (optional)",
"form.integration.nunux_keeper_activate": "Salva gli articoli su Nunux Keeper", "form.integration.nunux_keeper_activate": "Salva gli articoli su Nunux Keeper",

View file

@ -184,6 +184,7 @@
"form.feed.label.ntfy_max_priority": "Ntfy max priority", "form.feed.label.ntfy_max_priority": "Ntfy max priority",
"form.feed.label.ntfy_min_priority": "Ntfy min priority", "form.feed.label.ntfy_min_priority": "Ntfy min priority",
"form.feed.label.ntfy_priority": "Ntfy priority", "form.feed.label.ntfy_priority": "Ntfy priority",
"form.feed.label.ntfy_topic": "Ntfy topic (optional)",
"form.feed.label.pushover_activate": "Push entries to pushover.net", "form.feed.label.pushover_activate": "Push entries to pushover.net",
"form.feed.label.pushover_default_priority": "Pushover default priority", "form.feed.label.pushover_default_priority": "Pushover default priority",
"form.feed.label.pushover_high_priority": "Pushover high priority", "form.feed.label.pushover_high_priority": "Pushover high priority",
@ -252,7 +253,7 @@
"form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)", "form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)",
"form.integration.ntfy_internal_links": "Use internal links on click (optional)", "form.integration.ntfy_internal_links": "Use internal links on click (optional)",
"form.integration.ntfy_password": "Ntfy Password (optional)", "form.integration.ntfy_password": "Ntfy Password (optional)",
"form.integration.ntfy_topic": "Ntfy topic", "form.integration.ntfy_topic": "Ntfy topic (default used if not set in feed)",
"form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)", "form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)",
"form.integration.ntfy_username": "Ntfy Username (optional)", "form.integration.ntfy_username": "Ntfy Username (optional)",
"form.integration.nunux_keeper_activate": "Nunux Keeper に記事を保存する", "form.integration.nunux_keeper_activate": "Nunux Keeper に記事を保存する",

View file

@ -184,6 +184,7 @@
"form.feed.label.ntfy_max_priority": "Ntfy siōng koân iu-sian sūn-sū", "form.feed.label.ntfy_max_priority": "Ntfy siōng koân iu-sian sūn-sū",
"form.feed.label.ntfy_min_priority": "Ntfy siōng kē iu-sian sūn-sū", "form.feed.label.ntfy_min_priority": "Ntfy siōng kē iu-sian sūn-sū",
"form.feed.label.ntfy_priority": "Ntfy iu-sian sūn-sū", "form.feed.label.ntfy_priority": "Ntfy iu-sian sūn-sū",
"form.feed.label.ntfy_topic": "Ntfy topic (soán thiⁿ)",
"form.feed.label.pushover_activate": "Push entries to Pushover", "form.feed.label.pushover_activate": "Push entries to Pushover",
"form.feed.label.pushover_default_priority": "Default priority", "form.feed.label.pushover_default_priority": "Default priority",
"form.feed.label.pushover_high_priority": "High priority", "form.feed.label.pushover_high_priority": "High priority",
@ -252,7 +253,7 @@
"form.integration.ntfy_icon_url": "Ntfy Icon bāng-chí (soán thiⁿ)", "form.integration.ntfy_icon_url": "Ntfy Icon bāng-chí (soán thiⁿ)",
"form.integration.ntfy_internal_links": "Tiám ê sî-chūn iōng lāi-pō͘ liân-kiat (soán thiⁿ)", "form.integration.ntfy_internal_links": "Tiám ê sî-chūn iōng lāi-pō͘ liân-kiat (soán thiⁿ)",
"form.integration.ntfy_password": "Ntfy bi̍t-bé (soán thiⁿ)", "form.integration.ntfy_password": "Ntfy bi̍t-bé (soán thiⁿ)",
"form.integration.ntfy_topic": "Ntfy topic", "form.integration.ntfy_topic": "Ntfy topic (chhī-liāu nā bô siat-tēng, tiō iōng ī-siat-ti̍t)",
"form.integration.ntfy_url": "Ntfy bāng-chí (soán thiⁿ, ū-siat sī ntfy.sh)", "form.integration.ntfy_url": "Ntfy bāng-chí (soán thiⁿ, ū-siat sī ntfy.sh)",
"form.integration.ntfy_username": "Ntfy kháu-chō miâ (soán thiⁿ)", "form.integration.ntfy_username": "Ntfy kháu-chō miâ (soán thiⁿ)",
"form.integration.nunux_keeper_activate": "Pó-chûn siau-sit kàu Nunux Keeper", "form.integration.nunux_keeper_activate": "Pó-chûn siau-sit kàu Nunux Keeper",

View file

@ -186,6 +186,7 @@
"form.feed.label.ntfy_max_priority": "Ntfy maximale prioriteit", "form.feed.label.ntfy_max_priority": "Ntfy maximale prioriteit",
"form.feed.label.ntfy_min_priority": "Ntfy minimale prioriteit", "form.feed.label.ntfy_min_priority": "Ntfy minimale prioriteit",
"form.feed.label.ntfy_priority": "Ntfy prioriteit", "form.feed.label.ntfy_priority": "Ntfy prioriteit",
"form.feed.label.ntfy_topic": "Ntfy topic (optional)",
"form.feed.label.pushover_activate": "Push entries to pushover.net", "form.feed.label.pushover_activate": "Push entries to pushover.net",
"form.feed.label.pushover_default_priority": "Pushover default priority", "form.feed.label.pushover_default_priority": "Pushover default priority",
"form.feed.label.pushover_high_priority": "Pushover high priority", "form.feed.label.pushover_high_priority": "Pushover high priority",
@ -254,7 +255,7 @@
"form.integration.ntfy_icon_url": "Ntfy Icon URL (optioneel)", "form.integration.ntfy_icon_url": "Ntfy Icon URL (optioneel)",
"form.integration.ntfy_internal_links": "Use internal links on click (optional)", "form.integration.ntfy_internal_links": "Use internal links on click (optional)",
"form.integration.ntfy_password": "Ntfy wachtwoord (optioneel)", "form.integration.ntfy_password": "Ntfy wachtwoord (optioneel)",
"form.integration.ntfy_topic": "Ntfy topic", "form.integration.ntfy_topic": "Ntfy topic (standaard gebruikt als deze niet is ingesteld in feed)",
"form.integration.ntfy_url": "Ntfy URL (optioneel, standaard is ntfy.sh)", "form.integration.ntfy_url": "Ntfy URL (optioneel, standaard is ntfy.sh)",
"form.integration.ntfy_username": "Ntfy gebruikersnaam (optioneel)", "form.integration.ntfy_username": "Ntfy gebruikersnaam (optioneel)",
"form.integration.nunux_keeper_activate": "Artikelen opslaan in Nunux Keeper", "form.integration.nunux_keeper_activate": "Artikelen opslaan in Nunux Keeper",

View file

@ -188,6 +188,7 @@
"form.feed.label.ntfy_max_priority": "Maksymalny priorytet ntfy", "form.feed.label.ntfy_max_priority": "Maksymalny priorytet ntfy",
"form.feed.label.ntfy_min_priority": "Minimalny priorytet ntfy", "form.feed.label.ntfy_min_priority": "Minimalny priorytet ntfy",
"form.feed.label.ntfy_priority": "Priorytet ntfy", "form.feed.label.ntfy_priority": "Priorytet ntfy",
"form.feed.label.ntfy_topic": "Temay ntfy (opcjonalne)",
"form.feed.label.pushover_activate": "Prześlij wpisy do pushover.net", "form.feed.label.pushover_activate": "Prześlij wpisy do pushover.net",
"form.feed.label.pushover_default_priority": "Domyślny priorytet Pushover", "form.feed.label.pushover_default_priority": "Domyślny priorytet Pushover",
"form.feed.label.pushover_high_priority": "Wysoki priorytet Pushover", "form.feed.label.pushover_high_priority": "Wysoki priorytet Pushover",
@ -256,7 +257,7 @@
"form.integration.ntfy_icon_url": "Adres URL ikony ntfy (opcjonalny)", "form.integration.ntfy_icon_url": "Adres URL ikony ntfy (opcjonalny)",
"form.integration.ntfy_internal_links": "Używaj łączy wewnętrznych po kliknięciu (opcjonalnie)", "form.integration.ntfy_internal_links": "Używaj łączy wewnętrznych po kliknięciu (opcjonalnie)",
"form.integration.ntfy_password": "Hasło do ntfy (opcjonalne)", "form.integration.ntfy_password": "Hasło do ntfy (opcjonalne)",
"form.integration.ntfy_topic": "Temay ntfy", "form.integration.ntfy_topic": "Temay ntfy (domyślny, jeśli nie został ustawiony w kanale)",
"form.integration.ntfy_url": "Adres URL ntfy (opcjonalny, domyślny to ntfy.sh)", "form.integration.ntfy_url": "Adres URL ntfy (opcjonalny, domyślny to ntfy.sh)",
"form.integration.ntfy_username": "Login do ntfy (opcjonalny)", "form.integration.ntfy_username": "Login do ntfy (opcjonalny)",
"form.integration.nunux_keeper_activate": "Zapisuj wpisy w Nunux Keeper", "form.integration.nunux_keeper_activate": "Zapisuj wpisy w Nunux Keeper",

View file

@ -186,6 +186,7 @@
"form.feed.label.ntfy_max_priority": "Ntfy max priority", "form.feed.label.ntfy_max_priority": "Ntfy max priority",
"form.feed.label.ntfy_min_priority": "Ntfy min priority", "form.feed.label.ntfy_min_priority": "Ntfy min priority",
"form.feed.label.ntfy_priority": "Ntfy priority", "form.feed.label.ntfy_priority": "Ntfy priority",
"form.feed.label.ntfy_topic": "Ntfy topic (optional)",
"form.feed.label.pushover_activate": "Push entries to pushover.net", "form.feed.label.pushover_activate": "Push entries to pushover.net",
"form.feed.label.pushover_default_priority": "Pushover default priority", "form.feed.label.pushover_default_priority": "Pushover default priority",
"form.feed.label.pushover_high_priority": "Pushover high priority", "form.feed.label.pushover_high_priority": "Pushover high priority",
@ -254,7 +255,7 @@
"form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)", "form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)",
"form.integration.ntfy_internal_links": "Use internal links on click (optional)", "form.integration.ntfy_internal_links": "Use internal links on click (optional)",
"form.integration.ntfy_password": "Ntfy Password (optional)", "form.integration.ntfy_password": "Ntfy Password (optional)",
"form.integration.ntfy_topic": "Ntfy topic", "form.integration.ntfy_topic": "Ntfy topic (default if not set in feed)",
"form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)", "form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)",
"form.integration.ntfy_username": "Ntfy Username (optional)", "form.integration.ntfy_username": "Ntfy Username (optional)",
"form.integration.nunux_keeper_activate": "Salvar itens no Nunux Keeper", "form.integration.nunux_keeper_activate": "Salvar itens no Nunux Keeper",

View file

@ -188,6 +188,7 @@
"form.feed.label.ntfy_max_priority": "Ntfy max priority", "form.feed.label.ntfy_max_priority": "Ntfy max priority",
"form.feed.label.ntfy_min_priority": "Ntfy min priority", "form.feed.label.ntfy_min_priority": "Ntfy min priority",
"form.feed.label.ntfy_priority": "Ntfy priority", "form.feed.label.ntfy_priority": "Ntfy priority",
"form.feed.label.ntfy_topic": "Ntfy topic (optional)",
"form.feed.label.pushover_activate": "Push entries to pushover.net", "form.feed.label.pushover_activate": "Push entries to pushover.net",
"form.feed.label.pushover_default_priority": "Pushover default priority", "form.feed.label.pushover_default_priority": "Pushover default priority",
"form.feed.label.pushover_high_priority": "Pushover high priority", "form.feed.label.pushover_high_priority": "Pushover high priority",
@ -256,7 +257,7 @@
"form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)", "form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)",
"form.integration.ntfy_internal_links": "Use internal links on click (optional)", "form.integration.ntfy_internal_links": "Use internal links on click (optional)",
"form.integration.ntfy_password": "Ntfy Password (optional)", "form.integration.ntfy_password": "Ntfy Password (optional)",
"form.integration.ntfy_topic": "Ntfy topic", "form.integration.ntfy_topic": "Ntfy topic (default if not set in feed)",
"form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)", "form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)",
"form.integration.ntfy_username": "Ntfy Username (optional)", "form.integration.ntfy_username": "Ntfy Username (optional)",
"form.integration.nunux_keeper_activate": "Сохранять статьи в Nunux Keeper", "form.integration.nunux_keeper_activate": "Сохранять статьи в Nunux Keeper",

View file

@ -186,6 +186,7 @@
"form.feed.label.ntfy_max_priority": "Ntfy max priority", "form.feed.label.ntfy_max_priority": "Ntfy max priority",
"form.feed.label.ntfy_min_priority": "Ntfy min priority", "form.feed.label.ntfy_min_priority": "Ntfy min priority",
"form.feed.label.ntfy_priority": "Ntfy priority", "form.feed.label.ntfy_priority": "Ntfy priority",
"form.feed.label.ntfy_topic": "Ntfy topic (optional)",
"form.feed.label.pushover_activate": "Push entries to pushover.net", "form.feed.label.pushover_activate": "Push entries to pushover.net",
"form.feed.label.pushover_default_priority": "Pushover default priority", "form.feed.label.pushover_default_priority": "Pushover default priority",
"form.feed.label.pushover_high_priority": "Pushover high priority", "form.feed.label.pushover_high_priority": "Pushover high priority",
@ -254,7 +255,7 @@
"form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)", "form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)",
"form.integration.ntfy_internal_links": "Use internal links on click (optional)", "form.integration.ntfy_internal_links": "Use internal links on click (optional)",
"form.integration.ntfy_password": "Ntfy Password (optional)", "form.integration.ntfy_password": "Ntfy Password (optional)",
"form.integration.ntfy_topic": "Ntfy topic", "form.integration.ntfy_topic": "Ntfy topic (default if not set in feed)",
"form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)", "form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)",
"form.integration.ntfy_username": "Ntfy Username (optional)", "form.integration.ntfy_username": "Ntfy Username (optional)",
"form.integration.nunux_keeper_activate": "Makaleleri Nunux Keeper'a kaydet", "form.integration.nunux_keeper_activate": "Makaleleri Nunux Keeper'a kaydet",

View file

@ -188,6 +188,7 @@
"form.feed.label.ntfy_max_priority": "Ntfy max priority", "form.feed.label.ntfy_max_priority": "Ntfy max priority",
"form.feed.label.ntfy_min_priority": "Ntfy min priority", "form.feed.label.ntfy_min_priority": "Ntfy min priority",
"form.feed.label.ntfy_priority": "Ntfy priority", "form.feed.label.ntfy_priority": "Ntfy priority",
"form.feed.label.ntfy_topic": "Ntfy topic (optional)",
"form.feed.label.pushover_activate": "Push entries to pushover.net", "form.feed.label.pushover_activate": "Push entries to pushover.net",
"form.feed.label.pushover_default_priority": "Pushover default priority", "form.feed.label.pushover_default_priority": "Pushover default priority",
"form.feed.label.pushover_high_priority": "Pushover high priority", "form.feed.label.pushover_high_priority": "Pushover high priority",
@ -256,7 +257,7 @@
"form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)", "form.integration.ntfy_icon_url": "Ntfy Icon URL (optional)",
"form.integration.ntfy_internal_links": "Use internal links on click (optional)", "form.integration.ntfy_internal_links": "Use internal links on click (optional)",
"form.integration.ntfy_password": "Ntfy Password (optional)", "form.integration.ntfy_password": "Ntfy Password (optional)",
"form.integration.ntfy_topic": "Ntfy topic", "form.integration.ntfy_topic": "Ntfy topic (default if not set in feed)",
"form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)", "form.integration.ntfy_url": "Ntfy URL (optional, default is ntfy.sh)",
"form.integration.ntfy_username": "Ntfy Username (optional)", "form.integration.ntfy_username": "Ntfy Username (optional)",
"form.integration.nunux_keeper_activate": "Зберігати статті до Nunux Keeper", "form.integration.nunux_keeper_activate": "Зберігати статті до Nunux Keeper",

View file

@ -184,6 +184,7 @@
"form.feed.label.ntfy_max_priority": "Ntfy最高优先级", "form.feed.label.ntfy_max_priority": "Ntfy最高优先级",
"form.feed.label.ntfy_min_priority": "Ntfy最低优先级", "form.feed.label.ntfy_min_priority": "Ntfy最低优先级",
"form.feed.label.ntfy_priority": "Ntfy优先级", "form.feed.label.ntfy_priority": "Ntfy优先级",
"form.feed.label.ntfy_topic": "Ntfy主题可选",
"form.feed.label.pushover_activate": "Push entries to pushover.net", "form.feed.label.pushover_activate": "Push entries to pushover.net",
"form.feed.label.pushover_default_priority": "Pushover default priority", "form.feed.label.pushover_default_priority": "Pushover default priority",
"form.feed.label.pushover_high_priority": "Pushover high priority", "form.feed.label.pushover_high_priority": "Pushover high priority",
@ -252,7 +253,7 @@
"form.integration.ntfy_icon_url": "Ntfy图标URL可选", "form.integration.ntfy_icon_url": "Ntfy图标URL可选",
"form.integration.ntfy_internal_links": "Use internal links on click (optional)", "form.integration.ntfy_internal_links": "Use internal links on click (optional)",
"form.integration.ntfy_password": "Ntfy密码可选", "form.integration.ntfy_password": "Ntfy密码可选",
"form.integration.ntfy_topic": "Ntfy主题", "form.integration.ntfy_topic": "Ntfy主题(預設,如果未在此源中定義)",
"form.integration.ntfy_url": "Ntfy URL可选默认为ntfy.sh", "form.integration.ntfy_url": "Ntfy URL可选默认为ntfy.sh",
"form.integration.ntfy_username": "Ntfy用户名可选", "form.integration.ntfy_username": "Ntfy用户名可选",
"form.integration.nunux_keeper_activate": "保存文章到 Nunux Keeper", "form.integration.nunux_keeper_activate": "保存文章到 Nunux Keeper",

View file

@ -184,6 +184,7 @@
"form.feed.label.ntfy_max_priority": "Ntfy 最高優先順序", "form.feed.label.ntfy_max_priority": "Ntfy 最高優先順序",
"form.feed.label.ntfy_min_priority": "Ntfy 最低優先順序", "form.feed.label.ntfy_min_priority": "Ntfy 最低優先順序",
"form.feed.label.ntfy_priority": "Ntfy 優先順序", "form.feed.label.ntfy_priority": "Ntfy 優先順序",
"form.feed.label.ntfy_topic": "Ntfy topic (選填)",
"form.feed.label.pushover_activate": "Push entries to pushover.net", "form.feed.label.pushover_activate": "Push entries to pushover.net",
"form.feed.label.pushover_default_priority": "Pushover default priority", "form.feed.label.pushover_default_priority": "Pushover default priority",
"form.feed.label.pushover_high_priority": "Pushover high priority", "form.feed.label.pushover_high_priority": "Pushover high priority",
@ -252,7 +253,7 @@
"form.integration.ntfy_icon_url": "Ntfy Icon 網址 (選填)", "form.integration.ntfy_icon_url": "Ntfy Icon 網址 (選填)",
"form.integration.ntfy_internal_links": "點選時使用內部連結 (選填)", "form.integration.ntfy_internal_links": "點選時使用內部連結 (選填)",
"form.integration.ntfy_password": "Ntfy 密碼 (選填)", "form.integration.ntfy_password": "Ntfy 密碼 (選填)",
"form.integration.ntfy_topic": "Ntfy topic", "form.integration.ntfy_topic": "Ntfy topic (飼料若無設定,則使用預設值)",
"form.integration.ntfy_url": "Ntfy 網址 (選填,預設為 ntfy.sh)", "form.integration.ntfy_url": "Ntfy 網址 (選填,預設為 ntfy.sh)",
"form.integration.ntfy_username": "Ntfy 使用者名稱 (選填)", "form.integration.ntfy_username": "Ntfy 使用者名稱 (選填)",
"form.integration.nunux_keeper_activate": "儲存文章到 Nunux Keeper", "form.integration.nunux_keeper_activate": "儲存文章到 Nunux Keeper",

View file

@ -56,6 +56,7 @@ type Feed struct {
WebhookURL string `json:"webhook_url"` WebhookURL string `json:"webhook_url"`
NtfyEnabled bool `json:"ntfy_enabled"` NtfyEnabled bool `json:"ntfy_enabled"`
NtfyPriority int `json:"ntfy_priority"` NtfyPriority int `json:"ntfy_priority"`
NtfyTopic string `json:"ntfy_topic"`
PushoverEnabled bool `json:"pushover_enabled,omitempty"` PushoverEnabled bool `json:"pushover_enabled,omitempty"`
PushoverPriority int `json:"pushover_priority,omitempty"` PushoverPriority int `json:"pushover_priority,omitempty"`

View file

@ -361,10 +361,11 @@ func (s *Storage) UpdateFeed(feed *model.Feed) (err error) {
description=$30, description=$30,
ntfy_enabled=$31, ntfy_enabled=$31,
ntfy_priority=$32, ntfy_priority=$32,
pushover_enabled=$33, ntfy_topic=$33,
pushover_priority=$34 pushover_enabled=$34,
pushover_priority=$35
WHERE WHERE
id=$35 AND user_id=$36 id=$36 AND user_id=$37
` `
_, err = s.db.Exec(query, _, err = s.db.Exec(query,
feed.FeedURL, feed.FeedURL,
@ -399,6 +400,7 @@ func (s *Storage) UpdateFeed(feed *model.Feed) (err error) {
feed.Description, feed.Description,
feed.NtfyEnabled, feed.NtfyEnabled,
feed.NtfyPriority, feed.NtfyPriority,
feed.NtfyTopic,
feed.PushoverEnabled, feed.PushoverEnabled,
feed.PushoverPriority, feed.PushoverPriority,
feed.ID, feed.ID,

View file

@ -169,6 +169,7 @@ func (f *FeedQueryBuilder) GetFeeds() (model.Feeds, error) {
f.disable_http2, f.disable_http2,
f.ntfy_enabled, f.ntfy_enabled,
f.ntfy_priority, f.ntfy_priority,
f.ntfy_topic,
f.pushover_enabled, f.pushover_enabled,
f.pushover_priority f.pushover_priority
FROM FROM
@ -242,6 +243,7 @@ func (f *FeedQueryBuilder) GetFeeds() (model.Feeds, error) {
&feed.DisableHTTP2, &feed.DisableHTTP2,
&feed.NtfyEnabled, &feed.NtfyEnabled,
&feed.NtfyPriority, &feed.NtfyPriority,
&feed.NtfyTopic,
&feed.PushoverEnabled, &feed.PushoverEnabled,
&feed.PushoverPriority, &feed.PushoverPriority,
) )

View file

@ -191,6 +191,12 @@
<details {{ if .form.NtfyEnabled }}open{{ end }}> <details {{ if .form.NtfyEnabled }}open{{ end }}>
<summary>Ntfy</summary> <summary>Ntfy</summary>
<label><input type="checkbox" name="ntfy_enabled" value="1" {{ if .form.NtfyEnabled }}checked{{ end }}> {{ t "form.feed.label.ntfy_activate" }}</label> <label><input type="checkbox" name="ntfy_enabled" value="1" {{ if .form.NtfyEnabled }}checked{{ end }}> {{ t "form.feed.label.ntfy_activate" }}</label>
<div class="form-label-row">
<label for="form-ntfy-topic">
{{ t "form.feed.label.ntfy_topic" }}
</label>
</div>
<input type="text" name="ntfy_topic" id="form-ntfy-topic" value="{{ .form.NtfyTopic }}" spellcheck="false" autocomplete="off">
<div class="form-label-row"> <div class="form-label-row">
<label for="form-ntfy-priority"> <label for="form-ntfy-priority">
{{ t "form.feed.label.ntfy_priority" }} {{ t "form.feed.label.ntfy_priority" }}

View file

@ -67,6 +67,7 @@ func (h *handler) showEditFeedPage(w http.ResponseWriter, r *http.Request) {
DisableHTTP2: feed.DisableHTTP2, DisableHTTP2: feed.DisableHTTP2,
NtfyEnabled: feed.NtfyEnabled, NtfyEnabled: feed.NtfyEnabled,
NtfyPriority: feed.NtfyPriority, NtfyPriority: feed.NtfyPriority,
NtfyTopic: feed.NtfyTopic,
PushoverEnabled: feed.PushoverEnabled, PushoverEnabled: feed.PushoverEnabled,
PushoverPriority: feed.PushoverPriority, PushoverPriority: feed.PushoverPriority,
} }

View file

@ -39,6 +39,7 @@ type FeedForm struct {
DisableHTTP2 bool DisableHTTP2 bool
NtfyEnabled bool NtfyEnabled bool
NtfyPriority int NtfyPriority int
NtfyTopic string
PushoverEnabled bool PushoverEnabled bool
PushoverPriority int PushoverPriority int
} }
@ -73,6 +74,7 @@ func (f FeedForm) Merge(feed *model.Feed) *model.Feed {
feed.DisableHTTP2 = f.DisableHTTP2 feed.DisableHTTP2 = f.DisableHTTP2
feed.NtfyEnabled = f.NtfyEnabled feed.NtfyEnabled = f.NtfyEnabled
feed.NtfyPriority = f.NtfyPriority feed.NtfyPriority = f.NtfyPriority
feed.NtfyTopic = f.NtfyTopic
feed.PushoverEnabled = f.PushoverEnabled feed.PushoverEnabled = f.PushoverEnabled
feed.PushoverPriority = f.PushoverPriority feed.PushoverPriority = f.PushoverPriority
return feed return feed
@ -121,6 +123,7 @@ func NewFeedForm(r *http.Request) *FeedForm {
DisableHTTP2: r.FormValue("disable_http2") == "1", DisableHTTP2: r.FormValue("disable_http2") == "1",
NtfyEnabled: r.FormValue("ntfy_enabled") == "1", NtfyEnabled: r.FormValue("ntfy_enabled") == "1",
NtfyPriority: ntfyPriority, NtfyPriority: ntfyPriority,
NtfyTopic: r.FormValue("ntfy_topic"),
PushoverEnabled: r.FormValue("pushover_enabled") == "1", PushoverEnabled: r.FormValue("pushover_enabled") == "1",
PushoverPriority: pushoverPriority, PushoverPriority: pushoverPriority,
} }