RGJ
(Richard - Communiteq)
2023 年10 月 19 日 13:27
1
当我将一个类别设置为“watching first post”(“您将收到这些类别中每个新主题的第一个帖子的通知 ”)时,当类别中创建主题时,我会收到手机推送通知,并且还会收到后续回复的推送通知。
但是,当类别设置为“watching”(“您将收到所有新帖子和主题的通知 ”)时,我不会收到推送通知。
检查 code ,我发现一个条件 NOTIFIABLE_TYPES.include?(type)
NOTIFIABLE_TYPES 包括 watching_first_post 和 posted,但不包括 watching_category_or_tag。
这是故意的吗?我一直认为“watching”是“watching first post”的超集?
(相似/相关:Watching First Post does not send push notifications 和 这个 更改)
编辑:我目前正在运行几个我自己在使用的论坛,其中有一个已修补的版本添加了 watching_category_or_tag,并且将 push notification time window mins 设置为 0,我的用户体验从“一般”变成了“很棒”。所以如果这不是一个 bug,请将其视为一个功能请求
8 个赞
我已合并 一个提交 ,该提交将 watching_category_or_tag 添加到了 NOTIFIABLE_TYPES 中,正如您所概述的那样!感谢您的错误报告和解决方案
7 个赞
RGJ
(Richard - Communiteq)
2023 年11 月 1 日 20:19
8
感谢 @markvanlan !!
… 我刚发现这还需要一个区域设置字符串 en.discourse_push_notifications.popup.watching_category_or_tag
1 个赞
哦,抓得好,当然类型与翻译相关!但是……我很好奇哪个文本最好。watching_first_post 的文本如下。我想知道翻译是否应该是“X 创建了一个新帖子”,而不是“X 创建了一个新主题”,因为它可能是一个新主题,但更有可能是回复。
要使字符串更花哨,我们将不得不修改 PushNotificationPusher。现在,我将创建一个 PR 来实现我的建议,然后我们可以跟进改进。
watching_first_post: '%{username} 创建了一个新主题“%{topic}” - %{site_title}'
watching_category_or_tag: '%{username} 创建了一个新帖子“%{topic}” - %{site_title}'
编辑:已添加包含翻译的提交。我明天会跟进,看看如何提供更丰富的体验,直接链接到帖子,并附有关于与之关联的类别或标签的说明。FIX: Add translation for new push notification (#24203) · discourse/discourse@1d96b0a · GitHub
4 个赞
我刚刚推送了另一个提交 ,对推送通知文本进行了一些改进。来自PR描述:
现在对于新的主题 ,它将显示:
username 创建了新主题 “标题在此!” - Marks' Discourse
对于新的帖子 :
username 在 “标题在此!” 中发帖 - Marks' Discourse
在深入研究代码后,要让文本显示“X 在 Y 类别/标签中发布了新主题”将是一个巨大的改动。这是朝着正确方向迈出的一大步,如果将来需要,我们可以进行更复杂的更改。
再次感谢 @RGJ !
3 个赞