@tiledesk/tiledesk-server 2.2.39 → 2.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +14 -657
- package/README.md +2 -0
- package/app.js +12 -0
- package/event/subscriptionEvent.js +11 -0
- package/models/subscriptionEvent.js +11 -0
- package/models/subscriptionLog.js +34 -0
- package/models/tagLibrary.js +42 -0
- package/package.json +2 -10
- package/pubmodules/activities/activityArchiver.js +295 -0
- package/pubmodules/activities/index.js +3 -0
- package/pubmodules/activities/models/activity.js +88 -0
- package/pubmodules/activities/routes/activity.js +710 -0
- package/pubmodules/activities/test/activityRoute.js +85 -0
- package/pubmodules/analytics/analytics.js +1719 -0
- package/pubmodules/analytics/index.js +3 -0
- package/pubmodules/canned/cannedResponse.js +51 -0
- package/pubmodules/canned/cannedResponseRoute.js +157 -0
- package/pubmodules/canned/index.js +3 -0
- package/pubmodules/pubModulesManager.js +104 -5
- package/pubmodules/trigger/default.js +271 -0
- package/pubmodules/trigger/event/actionEventEmitter.js +10 -0
- package/pubmodules/trigger/event/flowEventEmitter.js +10 -0
- package/pubmodules/trigger/event/triggerEventEmitter.js +10 -0
- package/pubmodules/trigger/index.js +3 -0
- package/pubmodules/trigger/models/trigger.js +149 -0
- package/pubmodules/trigger/rulesTrigger.js +1180 -0
- package/pubmodules/trigger/start.js +114 -0
- package/pubmodules/trigger/triggerRoute.js +150 -0
- package/routes/department.js +51 -0
- package/routes/group.js +140 -0
- package/routes/project.js +52 -0
- package/routes/subscription.js +140 -0
- package/routes/tag.js +138 -0
- package/services/faqService.js +1 -1
- package/services/modulesManager.js +7 -188
- package/services/subscriptionNotifier.js +485 -0
- package/template/email/assignedEmailMessage.html +1 -1
- package/template/email/assignedRequest.html +1 -1
- package/template/email/newMessage.html +1 -1
- package/template/email/passwordChanged.html +1 -1
- package/template/email/pooledEmailMessage.html +1 -1
- package/template/email/pooledRequest.html +1 -1
- package/template/email/resetPassword.html +2 -2
- package/template/email/ticket.html +1 -1
- package/views/messages.jade +1 -1
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
var mongoose = require('mongoose');
|
|
2
|
+
var Schema = mongoose.Schema;
|
|
3
|
+
// var TriggerEventSchema = require('./triggerEvent').schema;
|
|
4
|
+
|
|
5
|
+
// var ConditionSchema = require('./triggerCondition').schema;
|
|
6
|
+
// var ActionSchema = require('./triggerAction').schema;
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
var TriggerConditionSchema = new Schema({
|
|
11
|
+
key: { //ex: request.firsttext
|
|
12
|
+
type: String,
|
|
13
|
+
required: true
|
|
14
|
+
},
|
|
15
|
+
fact: { //ex: request.firsttext
|
|
16
|
+
type: String,
|
|
17
|
+
required: true
|
|
18
|
+
},
|
|
19
|
+
path: {
|
|
20
|
+
type: String,
|
|
21
|
+
required: false
|
|
22
|
+
},
|
|
23
|
+
operator: { //use ref to OperatorSchema
|
|
24
|
+
type: String,
|
|
25
|
+
required: true
|
|
26
|
+
},
|
|
27
|
+
// type: { unused
|
|
28
|
+
// type: String,
|
|
29
|
+
// required: false
|
|
30
|
+
// },
|
|
31
|
+
value: {
|
|
32
|
+
type: Object,
|
|
33
|
+
required: true
|
|
34
|
+
},
|
|
35
|
+
},{ _id : false });
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
var ConditionsSchema = new Schema({
|
|
39
|
+
all: [TriggerConditionSchema],
|
|
40
|
+
any: [TriggerConditionSchema]
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
var ActionSchema = new Schema({
|
|
47
|
+
key: { //ex: message.send
|
|
48
|
+
type: String,
|
|
49
|
+
required: true,
|
|
50
|
+
index:true
|
|
51
|
+
},
|
|
52
|
+
parameters: {
|
|
53
|
+
type: Object,
|
|
54
|
+
required: false
|
|
55
|
+
},
|
|
56
|
+
// name: {
|
|
57
|
+
// type: String,
|
|
58
|
+
// required: true
|
|
59
|
+
// },
|
|
60
|
+
// description: {
|
|
61
|
+
// type: String,
|
|
62
|
+
// required: false
|
|
63
|
+
// },
|
|
64
|
+
|
|
65
|
+
script: { //use ref
|
|
66
|
+
type: String,
|
|
67
|
+
required: false
|
|
68
|
+
},
|
|
69
|
+
});
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
var TriggerEventSchema = new Schema({
|
|
75
|
+
key: { //ex: request.create
|
|
76
|
+
type: String,
|
|
77
|
+
required: true,
|
|
78
|
+
index:true
|
|
79
|
+
},
|
|
80
|
+
name: {
|
|
81
|
+
type: String,
|
|
82
|
+
required: true
|
|
83
|
+
},
|
|
84
|
+
description: {
|
|
85
|
+
type: String,
|
|
86
|
+
required: false
|
|
87
|
+
},
|
|
88
|
+
});
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
var TriggerSchema = new Schema({
|
|
93
|
+
name: {
|
|
94
|
+
type: String,
|
|
95
|
+
required: true
|
|
96
|
+
},
|
|
97
|
+
description: {
|
|
98
|
+
type: String,
|
|
99
|
+
required: false
|
|
100
|
+
},
|
|
101
|
+
delay: {
|
|
102
|
+
type: Number,
|
|
103
|
+
select: true
|
|
104
|
+
},
|
|
105
|
+
// triggers: [TriggerSchema],
|
|
106
|
+
trigger: TriggerEventSchema,
|
|
107
|
+
conditions: ConditionsSchema,
|
|
108
|
+
actions: [ActionSchema],
|
|
109
|
+
enabled: {
|
|
110
|
+
type:Boolean,
|
|
111
|
+
required:true,
|
|
112
|
+
default:false,
|
|
113
|
+
index:true
|
|
114
|
+
},
|
|
115
|
+
id_project: {
|
|
116
|
+
type: String,
|
|
117
|
+
required: true,
|
|
118
|
+
index:true
|
|
119
|
+
},
|
|
120
|
+
code: {
|
|
121
|
+
type: String,
|
|
122
|
+
select: true
|
|
123
|
+
},
|
|
124
|
+
type: {
|
|
125
|
+
type: String, //internal per new_conversation e invite bot
|
|
126
|
+
select: true
|
|
127
|
+
},
|
|
128
|
+
version: {
|
|
129
|
+
type: Number,
|
|
130
|
+
select: true
|
|
131
|
+
},
|
|
132
|
+
createdBy: {
|
|
133
|
+
type: String,
|
|
134
|
+
required: true
|
|
135
|
+
},
|
|
136
|
+
updatedBy: {
|
|
137
|
+
type: String,
|
|
138
|
+
required: true
|
|
139
|
+
}
|
|
140
|
+
}, {
|
|
141
|
+
timestamps: true
|
|
142
|
+
}
|
|
143
|
+
);
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
// let query = {id_project: event.id_project, enabled:true, 'trigger.key':eventKey};
|
|
147
|
+
TriggerSchema.index({ id_project: 1, "trigger.key":1, enabled:1 });
|
|
148
|
+
|
|
149
|
+
module.exports = mongoose.model('trigger', TriggerSchema);
|