@tiledesk/tiledesk-server 2.4.97 → 2.4.99

Sign up to get free protection for your applications and to get access to all the features.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,14 @@
5
5
  🚀 IN PRODUCTION 🚀
6
6
  (https://www.npmjs.com/package/@tiledesk/tiledesk-server/v/2.3.77)
7
7
 
8
+ # 2.4.99
9
+ - Updated whatsapp-connector to 0.1.62
10
+ - Updated messenger-connector to 0.1.16
11
+ - Bug fix: globals are not exported when a chatbot is published
12
+
13
+ # 2.4.98
14
+ - Updated whatsapp-connector to 0.1.61
15
+
8
16
  # 2.4.97
9
17
  - Updated whatsapp-connector to 0.1.61
10
18
 
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.4.97",
4
+ "version": "2.4.99",
5
5
  "scripts": {
6
6
  "start": "node ./bin/www",
7
7
  "pretest": "mongodb-runner start",
package/routes/faq_kb.js CHANGED
@@ -637,17 +637,27 @@ router.post('/fork/:id_faq_kb', async (req, res) => {
637
637
  let public = req.query.public;
638
638
  winston.debug("public " + public);
639
639
 
640
+ let globals = req.query.globals;
641
+ winston.debug("export globals " + globals);
642
+ console.log("export globals? --> globals ", globals);
643
+
640
644
  let token = req.headers.authorization;
641
645
 
642
646
  let cs = req.app.get('chatbot_service')
643
647
 
644
- let chatbot = await cs.getBotById(id_faq_kb, public, api_url, chatbot_templates_api_url, token, current_project_id);
648
+ let chatbot = await cs.getBotById(id_faq_kb, public, api_url, chatbot_templates_api_url, token, current_project_id, globals);
645
649
  winston.debug("chatbot: ", chatbot)
646
-
650
+ console.log("/fork chatbot after getBotById: ", chatbot);
647
651
  if (!chatbot) {
648
652
  return res.status(500).send({ success: false, message: "Unable to get chatbot" });
649
653
  }
650
654
 
655
+ if (!globals) {
656
+ if (chatbot.attributes) {
657
+ delete chatbot.attributes.globals
658
+ }
659
+ }
660
+
651
661
  let savedChatbot = await cs.createBot(api_url, token, chatbot, landing_project_id);
652
662
  winston.debug("savedChatbot: ", savedChatbot)
653
663
 
@@ -972,6 +982,7 @@ router.post('/importjson/:id_faq_kb', upload.single('uploadFile'), async (req, r
972
982
  router.get('/exportjson/:id_faq_kb', (req, res) => {
973
983
 
974
984
  winston.debug("exporting bot...")
985
+ console.log("exportjson req.query.globals: ", req.query.globals);
975
986
 
976
987
 
977
988
  let id_faq_kb = req.params.id_faq_kb;
@@ -988,8 +999,13 @@ router.get('/exportjson/:id_faq_kb', (req, res) => {
988
999
  // delete from exclude map intent_id
989
1000
  const intents = faqs.map(({ _id, id_project, topic, status, id_faq_kb, createdBy, createdAt, updatedAt, __v, ...keepAttrs }) => keepAttrs)
990
1001
 
991
- if (faq_kb.attributes) {
992
- delete faq_kb.attributes.globals;
1002
+ if (!req.query.globals) {
1003
+ console.log("Delete globals from attributes!")
1004
+ if (faq_kb.attributes) {
1005
+ delete faq_kb.attributes.globals;
1006
+ }
1007
+ } else {
1008
+ console.log("Keep globals")
993
1009
  }
994
1010
 
995
1011
  let json = {
@@ -12,7 +12,7 @@ class ChatbotService {
12
12
  winston.debug("[CHATBOT SERVICE] fork");
13
13
 
14
14
  return await axios({
15
- url: api_url + '/' + project_id + '/faq_kb/fork/'+id_faq_kb+"?projectid="+project_id+"&public=false",
15
+ url: api_url + '/' + project_id + '/faq_kb/fork/'+id_faq_kb+"?projectid="+project_id+"&public=false&globals=true",
16
16
  headers: {
17
17
  'Content-Type': 'application/json',
18
18
  'Authorization': token
@@ -29,15 +29,16 @@ class ChatbotService {
29
29
 
30
30
  }
31
31
 
32
- async getBotById(id_faq_kb, published, api_url, chatbot_templates_api_url, token, project_id) {
32
+ async getBotById(id_faq_kb, published, api_url, chatbot_templates_api_url, token, project_id, globals) {
33
33
 
34
34
  winston.debug("[CHATBOT SERVICE] getBotById");
35
+ console.log("getBotById globals: ", globals);
35
36
 
36
37
  // private bot
37
38
  if (published == "false") {
38
39
 
39
40
  return await axios({
40
- url: api_url + "/" + project_id + "/faq_kb/exportjson/" + id_faq_kb,
41
+ url: api_url + "/" + project_id + "/faq_kb/exportjson/" + id_faq_kb + "?globals=" + globals,
41
42
  headers: {
42
43
  'Content-Type': 'application/json',
43
44
  'Authorization': token
@@ -11,6 +11,12 @@ const existing_chatbot_mock = {
11
11
  createdAt: "2022-09-15T15:32:06.491Z",
12
12
  updatedAt: "2022-09-15T15:32:06.491Z",
13
13
  name: "Bot",
14
+ attributes: {
15
+ globals: {
16
+ "mykey1": "myvalue1",
17
+ "mykey2": "myvalue2"
18
+ }
19
+ },
14
20
  intents: [
15
21
  {
16
22
  "webhook_enabled": false,
@@ -947,6 +947,70 @@ describe('FaqKBRoute', () => {
947
947
  });
948
948
  }).timeout(20000);
949
949
 
950
+ // it('publishChatbot', (done) => {
951
+
952
+ // var email = "test-signup-" + Date.now() + "@email.com";
953
+ // var pwd = "pwd";
954
+
955
+ // userService.signup(email, pwd, "Test Firstname", "Test Lastname").then(function (savedUser) {
956
+ // projectService.create("current-project", savedUser._id).then(function (currentProject) {
957
+
958
+ // console.log("declare chatbot_service functions...")
959
+
960
+ // class chatbot_service {
961
+ // async fork(id, api_url, token, project_id) {
962
+ // console.log("chatbot_service test fork called")
963
+ // return { message: "Chatbot forked successfully", bot_id: savedChatbot._id }
964
+ // //return chatbot_mock.existing_chatbot_mock;
965
+ // }
966
+
967
+ // async getBotById(id, published, api_url, chatbot_templates_api_url, token, project_id, globals) {
968
+ // return chatbot_mock.existing_chatbot_mock;
969
+ // }
970
+
971
+ // async createBot(api_url, token, chatbot, project_id) {
972
+ // return chatbot_mock.empty_chatbot_mock
973
+ // }
974
+
975
+ // async importFaqs(api_url, id_faq_kb, token, chatbot, project_id) {
976
+ // return chatbot_mock.import_faqs_res_mock
977
+ // }
978
+ // }
979
+
980
+ // server.set('chatbot_service', new chatbot_service());
981
+ // console.log("chatbot_service functions declared")
982
+
983
+ // chai.request(server)
984
+ // .post('/' + currentProject._id + '/faq_kb')
985
+ // .auth(email, pwd)
986
+ // .send({ "name": "privateBot", type: "internal", language: 'en', public: "false", template: "blank" })
987
+ // .end((err, res) => {
988
+ // console.log("res.body: ", res.body);
989
+ // if (log) {
990
+ // }
991
+ // res.should.have.status(200);
992
+ // res.body.should.be.a('object');
993
+ // expect(res.body.name).to.equal("privateBot");
994
+ // expect(res.body.language).to.equal("en");
995
+ // let id_faq_kb = res.body._id;
996
+
997
+ // chai.request(server)
998
+ // .put('/' + currentProject._id + '/faq_kb/' + id_faq_kb + '/publish')
999
+ // .auth(email, pwd)
1000
+ // .set('Content-Type', 'application/json')
1001
+ // .end((err, res) => {
1002
+ // console.log("publish bot res.body: ", res.body);
1003
+ // res.should.have.status(200);
1004
+
1005
+ // done();
1006
+ // })
1007
+ // })
1008
+
1009
+
1010
+ // })
1011
+ // })
1012
+ // })
1013
+
950
1014
 
951
1015
  });
952
1016