@tiledesk/tiledesk-server 2.10.63 → 2.10.65
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/CHANGELOG.md +9 -1
- package/package.json +3 -3
- package/routes/user-request.js +7 -5
- package/services/requestService.js +3 -3
- package/test/userRequestRoute.js +125 -0
package/CHANGELOG.md
CHANGED
@@ -5,8 +5,16 @@
|
|
5
5
|
🚀 IN PRODUCTION 🚀
|
6
6
|
(https://www.npmjs.com/package/@tiledesk/tiledesk-server/v/2.3.77)
|
7
7
|
|
8
|
+
# 2.10.65
|
9
|
+
- fix issue con /rating called by chatbot
|
10
|
+
|
11
|
+
# 2.10.64
|
12
|
+
- updated tybot-connector to 0.3.4
|
13
|
+
- updated whatsapp-connector to 0.1.81
|
14
|
+
- fix bug: not existing err variable on requestService
|
15
|
+
|
8
16
|
# 2.10.63
|
9
|
-
- updated tybot-connector to 0.3.
|
17
|
+
- updated tybot-connector to 0.3.3
|
10
18
|
- updated multi-worker to 0.1.20
|
11
19
|
|
12
20
|
# 2.10.62
|
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "@tiledesk/tiledesk-server",
|
3
3
|
"description": "The Tiledesk server module",
|
4
|
-
"version": "2.10.
|
4
|
+
"version": "2.10.65",
|
5
5
|
"scripts": {
|
6
6
|
"start": "node ./bin/www",
|
7
7
|
"pretest": "mongodb-runner start",
|
@@ -47,8 +47,8 @@
|
|
47
47
|
"@tiledesk/tiledesk-messenger-connector": "^0.1.23",
|
48
48
|
"@tiledesk/tiledesk-rasa-connector": "^1.0.10",
|
49
49
|
"@tiledesk/tiledesk-telegram-connector": "^0.1.14",
|
50
|
-
"@tiledesk/tiledesk-tybot-connector": "^0.3.
|
51
|
-
"@tiledesk/tiledesk-whatsapp-connector": "^0.1.
|
50
|
+
"@tiledesk/tiledesk-tybot-connector": "^0.3.4",
|
51
|
+
"@tiledesk/tiledesk-whatsapp-connector": "^0.1.81",
|
52
52
|
"@tiledesk/tiledesk-whatsapp-jobworker": "^0.0.11",
|
53
53
|
"@tiledesk/tiledesk-sms-connector": "^0.1.11",
|
54
54
|
"@tiledesk/tiledesk-vxml-connector": "^0.1.67",
|
package/routes/user-request.js
CHANGED
@@ -12,7 +12,6 @@ router.patch('/:requestid/rating', function (req, res) {
|
|
12
12
|
winston.debug(req.body);
|
13
13
|
const update = {};
|
14
14
|
|
15
|
-
|
16
15
|
if (req.body.rating) {
|
17
16
|
update.rating = req.body.rating;
|
18
17
|
}
|
@@ -20,13 +19,16 @@ router.patch('/:requestid/rating', function (req, res) {
|
|
20
19
|
if (req.body.rating_message) {
|
21
20
|
update.rating_message = req.body.rating_message;
|
22
21
|
}
|
23
|
-
|
24
|
-
|
25
22
|
|
26
23
|
winston.debug("Request user patch update",update);
|
27
24
|
|
28
|
-
|
29
|
-
|
25
|
+
let query = {
|
26
|
+
request_id: req.params.requestid
|
27
|
+
}
|
28
|
+
|
29
|
+
if (req.projectuser) {
|
30
|
+
query.requester = req.projectuser.id
|
31
|
+
}
|
30
32
|
|
31
33
|
//cacheinvalidation
|
32
34
|
return Request.findOneAndUpdate(query, { $set: update }, { new: true, upsert: false })
|
@@ -1503,13 +1503,13 @@ class RequestService {
|
|
1503
1503
|
|
1504
1504
|
|
1505
1505
|
return new Promise(function (resolve, reject) {
|
1506
|
-
winston.debug("changeFirstTextAndPreflightByRequestId"
|
1506
|
+
winston.debug("changeFirstTextAndPreflightByRequestId" + request_id);
|
1507
1507
|
// winston.debug("request_id", request_id);
|
1508
1508
|
// winston.debug("newstatus", newstatus);
|
1509
1509
|
|
1510
1510
|
if (!first_text) {
|
1511
|
-
winston.error(
|
1512
|
-
return reject({ err: "
|
1511
|
+
winston.error("Error changing first text. The field first_text is empty for request " + request_id);
|
1512
|
+
return reject({ err: "Error changing first text. The field first_text is empty" });
|
1513
1513
|
}
|
1514
1514
|
|
1515
1515
|
return Request
|
@@ -0,0 +1,125 @@
|
|
1
|
+
process.env.NODE_ENV = 'test';
|
2
|
+
|
3
|
+
let chai = require('chai');
|
4
|
+
let chaiHttp = require('chai-http');
|
5
|
+
let server = require('../app');
|
6
|
+
let should = chai.should();
|
7
|
+
|
8
|
+
chai.use(chaiHttp);
|
9
|
+
|
10
|
+
var expect = require('chai').expect;
|
11
|
+
var assert = require('chai').assert;
|
12
|
+
var config = require('../config/database');
|
13
|
+
|
14
|
+
var mongoose = require('mongoose');
|
15
|
+
var winston = require('../config/winston');
|
16
|
+
|
17
|
+
let log = false;
|
18
|
+
|
19
|
+
// var databaseUri = process.env.DATABASE_URI || process.env.MONGODB_URI;
|
20
|
+
// if (!databaseUri) {
|
21
|
+
// console.log('DATABASE_URI not specified, falling back to localhost.');
|
22
|
+
// }
|
23
|
+
|
24
|
+
// mongoose.connect(databaseUri || config.database);
|
25
|
+
mongoose.connect(config.databasetest);
|
26
|
+
|
27
|
+
var userService = require('../services/userService');
|
28
|
+
const projectService = require('../services/projectService');
|
29
|
+
var leadService = require('../services/leadService');
|
30
|
+
var requestService = require('../services/requestService');
|
31
|
+
const faqService = require('../services/faqService');
|
32
|
+
var Bot = require("../models/faq_kb");
|
33
|
+
|
34
|
+
var jwt = require('jsonwebtoken');
|
35
|
+
const uuidv4 = require('uuid/v4');
|
36
|
+
|
37
|
+
|
38
|
+
describe('UserService()', function () {
|
39
|
+
|
40
|
+
it('request-rating', function (done) {
|
41
|
+
|
42
|
+
var email = "test-UserRequest-signup-" + Date.now() + "@email.com";
|
43
|
+
var pwd = "pwd";
|
44
|
+
|
45
|
+
userService.signup(email, pwd, "Test Firstname", "Test lastname").then(function (savedUser) {
|
46
|
+
var userid = savedUser.id;
|
47
|
+
|
48
|
+
projectService.createAndReturnProjectAndProjectUser("createWithId", savedUser.id).then(function (savedProjectAndPU) {
|
49
|
+
var savedProject = savedProjectAndPU.project;
|
50
|
+
|
51
|
+
faqService.create("testbot", null, savedProject._id, savedUser._id, "tilebot", null, null, null, "en", "blank").then(async function (savedFaq_kb) {
|
52
|
+
|
53
|
+
var signOptions = {
|
54
|
+
issuer: 'https://tiledesk.com',
|
55
|
+
subject: 'bot',
|
56
|
+
audience: 'https://tiledesk.com/bots/' + savedFaq_kb._id,
|
57
|
+
jwtid: uuidv4()
|
58
|
+
};
|
59
|
+
|
60
|
+
let botPayload = savedFaq_kb.toObject();
|
61
|
+
let botSecret = botPayload.secret;
|
62
|
+
|
63
|
+
var bot_token = jwt.sign(botPayload, botSecret, signOptions);
|
64
|
+
|
65
|
+
leadService.createIfNotExists("leadfullname", "email@email.com", savedProject._id).then(function (createdLead) {
|
66
|
+
var now = Date.now();
|
67
|
+
var request = {
|
68
|
+
request_id: "request_id-createObjSimple-" + now, project_user_id: savedProjectAndPU.project_user._id, lead_id: createdLead._id,
|
69
|
+
id_project: savedProject._id, first_text: "first_text",
|
70
|
+
lead: createdLead, requester: savedProjectAndPU.project_user
|
71
|
+
};
|
72
|
+
|
73
|
+
requestService.create(request).then(function (savedRequest) {
|
74
|
+
|
75
|
+
chai.request(server)
|
76
|
+
.patch('/' + savedProject._id + '/requests/' + savedRequest.request_id + "/rating")
|
77
|
+
.set('Authorization', "JWT " + bot_token)
|
78
|
+
.send({ rating: 4, rating_message: "Good" })
|
79
|
+
.end((err, res) => {
|
80
|
+
|
81
|
+
if (err) { console.error("err: ", err) };
|
82
|
+
if (log) { console.log("res.body: ", res.body) };
|
83
|
+
|
84
|
+
res.should.have.status(200);
|
85
|
+
res.body.should.be.a('object');
|
86
|
+
expect(res.body.rating).to.equal(4);
|
87
|
+
expect(res.body.rating_message).to.equal('Good');
|
88
|
+
|
89
|
+
done()
|
90
|
+
});
|
91
|
+
});
|
92
|
+
});
|
93
|
+
|
94
|
+
|
95
|
+
|
96
|
+
});
|
97
|
+
|
98
|
+
|
99
|
+
|
100
|
+
// console.log("savedProject: ", savedProject)
|
101
|
+
// leadService.createIfNotExists("leadfullname", "email@email.com", savedProject._id).then(function (createdLead) {
|
102
|
+
// var now = Date.now();
|
103
|
+
// var request = {
|
104
|
+
// request_id: "request_id-createObjSimple-" + now, project_user_id: savedProjectAndPU.project_user._id, lead_id: createdLead._id,
|
105
|
+
// id_project: savedProject._id, first_text: "first_text",
|
106
|
+
// lead: createdLead, requester: savedProjectAndPU.project_user
|
107
|
+
// };
|
108
|
+
|
109
|
+
// console.log("request: ", request)
|
110
|
+
|
111
|
+
|
112
|
+
// requestService.create(request).then(function (savedRequest) {
|
113
|
+
|
114
|
+
// console.log("savedRequest: ", savedRequest);
|
115
|
+
// done();
|
116
|
+
// });
|
117
|
+
// });
|
118
|
+
});
|
119
|
+
|
120
|
+
})
|
121
|
+
|
122
|
+
|
123
|
+
}).timeout(10000);
|
124
|
+
})
|
125
|
+
|