0

我已经设置了 SonarQube 5.2 安装,我想默认为新用户启用通知。我的意思是用户配置文件中的这些复选框。如果有人有类似的问题,我在文档、可用插件、互联网中找不到答案。到目前为止,我发现的是 SQ 数据库中的用户属性:

sonar=# select * from properties where user_id=6;
 id |                          prop_key                           | resource_id | text_value | user_id 
----+-------------------------------------------------------------+-------------+------------+---------
 85 | favourite                                                   |        3260 |            |       6
 91 | notification.ChangesOnMyIssue.EmailNotificationChannel      |             | true       |       6
 92 | notification.NewFalsePositiveIssue.EmailNotificationChannel |             | true       |       6
 93 | notification.SQ-MyNewIssues.EmailNotificationChannel        |             | true       |       6
 94 | notification.NewIssues.EmailNotificationChannel             |             | true       |       6
 95 | notification.NewAlerts.EmailNotificationChannel             |             | true       |       6
(6 rows)

我什至搜索了源代码,但还没有找到如何在用户注册时设置用户属性。实现这一目标的最佳方法是什么?

4

2 回答 2

2

虽然我理解希望人们为自己选择垃圾邮件,但我们公司需要要求开发人员立即修复他们的安全问题。因此,我们要求开发人员收到通知,以便他们了解问题。他们太多了,无法不断“使用说服行为”。

这是我用来为所有尚未打开通知的开发人员打开“我的新问题”通知的插入语句:

INSERT INTO properties 
        (prop_key, 
         resource_id, 
         user_id, 
         is_empty, 
         text_value, 
         clob_value, 
         created_at)
SELECT 'notification.SQ-MyNewIssues.EmailNotificationChannel', 
       NULL, 
       u.id, 
       0, 
       'true', 
       NULL, 
       Unix_timestamp(Now()) 
FROM   users u 
       LEFT JOIN properties p 
              ON ( u.id = p.user_id 
                   AND 
       p.prop_key = 'notification.SQ-MyNewIssues.EmailNotificationChannel' ) 
WHERE  p.user_id IS NULL; 
于 2017-04-28T14:48:47.940 回答
0

文档已针对此案例进行了更新:未提供任何功能来为其他用户订阅通知。每个用户必须选择自己接收通知。

于 2016-02-02T15:55:15.303 回答