Skip to content

Commit c9ba76a

Browse files
epipavjoanagmaia
andauthored
Bots and team members excluded by default from cubejs (#360)
Co-authored-by: Joana Maia <joana@crowd.dev>
1 parent 58e7160 commit c9ba76a

6 files changed

Lines changed: 40 additions & 1 deletion

File tree

backend/src/cubejs/cube.js

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,18 @@ module.exports = {
3232
})
3333
}
3434

35+
query.filters.push({
36+
member: `Members.isTeamMember`,
37+
operator: 'equals',
38+
values: [false],
39+
})
40+
41+
query.filters.push({
42+
member: `Members.isBot`,
43+
operator: 'equals',
44+
values: [false],
45+
})
46+
3547
query.filters.push({
3648
member: `${measureCube[0]}.tenantId`,
3749
operator: 'equals',

backend/src/cubejs/schema/Activities.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,11 @@ cube(`Activities`, {
7575
type: `string`,
7676
},
7777

78+
channel: {
79+
sql: `channel`,
80+
type: `string`,
81+
},
82+
7883
tenantId: {
7984
sql: `${CUBE}."tenantId"`,
8085
type: `string`,

backend/src/cubejs/schema/Members.js

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,16 @@ cube(`Members`, {
113113
shown: false,
114114
},
115115

116+
isTeamMember: {
117+
sql: `COALESCE((${CUBE}.attributes->'isTeamMember'->'default')::boolean, false)`,
118+
type: `boolean`,
119+
},
120+
121+
isBot: {
122+
sql: `COALESCE((${CUBE}.attributes->'isBot'->'default')::boolean, false)`,
123+
type: `boolean`,
124+
},
125+
116126
id: {
117127
sql: `id`,
118128
type: `string`,

backend/src/cubejs/schema/Sentiment.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ cube(`Sentiment`, {
33
a."tenantId" ,
44
a."platform" ,
55
a."timestamp" ,
6+
a."memberId" ,
67
(a.sentiment->>'sentiment')::integer as sentiment,
78
case
89
when (a.sentiment->>'sentiment')::integer < 34 then 'negative'
@@ -26,6 +27,13 @@ where
2627
},
2728
},
2829

30+
joins: {
31+
Members: {
32+
sql: `${CUBE}."memberId" = ${Members}."id"`,
33+
relationship: `belongsTo`,
34+
},
35+
},
36+
2937
measures: {
3038
averageSentiment: {
3139
type: 'avg',

frontend/src/i18n/en.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -519,7 +519,8 @@ const en = {
519519
count: '[Activities] Count',
520520
type: '[Activities] Type',
521521
platform: '[Activities] Platform',
522-
date: '[Activities] Date'
522+
date: '[Activities] Date',
523+
channel: '[Activities] Channel'
523524
},
524525
Members: {
525526
count: '[Members] Count',

frontend/src/modules/widget/components/cube/_query_builder/DimensionSelect.vue

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ export default {
6464
'Activities.platform',
6565
'Activities.type',
6666
'Activities.date',
67+
'Activities.channel',
6768
'Members.score',
6869
'Members.location',
6970
'Members.joinedAt',
@@ -74,6 +75,7 @@ export default {
7475
'Activities.platform',
7576
'Activities.type',
7677
'Activities.date',
78+
'Activities.channel',
7779
'Members.score',
7880
'Members.location',
7981
'Members.joinedAt',
@@ -84,6 +86,7 @@ export default {
8486
'Activities.platform',
8587
'Activities.type',
8688
'Activities.date',
89+
'Activities.channel',
8790
'Conversations.createdat',
8891
'Conversations.platform',
8992
'Conversations.category',

0 commit comments

Comments
 (0)