@tiledesk/tiledesk-server 2.3.16 → 2.3.18

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.
@@ -169,8 +169,18 @@ class WebSocketServer {
169
169
 
170
170
  winston.debug(' req.user._id: '+ req.user);
171
171
 
172
+ if (!topic) {
173
+ winston.error('WebSocket - Error getting topic. Topic can t be null');
174
+ return reject('WebSocket - Error getting topic. Topic can t be null');
175
+ }
172
176
  var urlSub = topic.split('/');
173
177
 
178
+ if (!urlSub || (urlSub && urlSub.length==0)) {
179
+ winston.error('WebSocket - Error getting topic. Topic is not properly configured');
180
+ return reject('WebSocket - Error getting topic. Topic is not properly configured');
181
+ }
182
+ // Error getting Project Cast to ObjectId failed for value "N7VJlLZ1" (type string) at path "_id" for model "project" {"kind":"ObjectId","path":"_id","reason":{},"stack":"CastError: Cast to ObjectId failed for value \"N7VJlLZ1\" (type string) at path \"_id\" for model \"project\"\n at model.Query.exec (/usr/src/app/node_modules/mongoose/lib/query.js:4498:21)\n at /usr/src/app/websocket/webSocketServer.js:180:14\n at new Promise (<anonymous>)\n at Object.onSubscribeCallback [as onSubscribe] (/usr/src/app/websocket/webSocketServer.js:167:14)\n at PubSub.handleReceivedClientMessage (/usr/src/app/websocket/pubsub.js:358:57)\n at runMicrotasks (<anonymous>)\n at processTicksAndRejections (internal/process/task_queues.js:97:5)","stringValue":"\"N7VJlLZ1\"","value":"N7VJlLZ1","valueType":"string"}
183
+
174
184
  var projectId = urlSub[1];
175
185
  winston.debug('projectId: '+projectId);
176
186
 
@@ -590,11 +600,12 @@ class WebSocketServer {
590
600
  winston.debug('messageCreateKey: ' + messageCreateKey);
591
601
 
592
602
  messageEvent.on(messageCreateKey, function (message) {
603
+ setImmediate(async () => {
593
604
  winston.debug('messageEvent websocket server: '+messageCreateKey, message);
594
605
  if (message.request) {
595
606
  pubSubServer.handlePublishMessage ('/'+message.id_project+'/requests/'+message.request.request_id+'/messages', message, undefined, true, "CREATE");
596
607
  }
597
-
608
+ });
598
609
  });
599
610
 
600
611
  // var reconnect = require('./reconnect');
@@ -604,7 +615,8 @@ class WebSocketServer {
604
615
  }
605
616
  winston.debug('requestCreateKey: ' + requestCreateKey);
606
617
  requestEvent.on(requestCreateKey, async function (request) {
607
- // TODO setImmediate(() => {
618
+ setImmediate(async () => {
619
+
608
620
  winston.debug('requestEvent websocket server: '+requestCreateKey, request);
609
621
  // TODO scarta riquesta se agente (req.user._id) non sta ne in participants ne in agents
610
622
 
@@ -643,7 +655,7 @@ class WebSocketServer {
643
655
  pubSubServer.handlePublishMessage ('/'+request.id_project+'/requests', request, undefined, true, "CREATE");
644
656
  pubSubServer.handlePublishMessage ('/'+request.id_project+'/requests/'+request.request_id, request, undefined, true, "CREATE");
645
657
  }
646
-
658
+ });
647
659
  });
648
660
 
649
661
  var requestUpdateKey = 'request.update';
@@ -653,6 +665,8 @@ class WebSocketServer {
653
665
 
654
666
  winston.debug('requestUpdateKey: ' + requestUpdateKey);
655
667
  requestEvent.on(requestUpdateKey, async function(request) {
668
+ setImmediate(async () => {
669
+
656
670
  // TODO setImmediate(() => {
657
671
  winston.debug('requestEvent websocket server: '+requestUpdateKey, request);
658
672
  if (request.preflight===false && request.status > requestConstants.TEMP) {
@@ -694,7 +708,7 @@ class WebSocketServer {
694
708
  pubSubServer.handlePublishMessage ('/'+request.id_project+'/requests', requestJSON, undefined, true, "UPDATE");
695
709
  pubSubServer.handlePublishMessage ('/'+request.id_project+'/requests/'+request.request_id, requestJSON, undefined, true, "UPDATE");
696
710
  }
697
-
711
+ });
698
712
  });
699
713
 
700
714
 
@@ -709,6 +723,8 @@ class WebSocketServer {
709
723
  }
710
724
  winston.debug('projectuserUpdateKey: ' + projectuserUpdateKey);
711
725
  authEvent.on(projectuserUpdateKey,function(data) {
726
+ setImmediate(async () => {
727
+
712
728
  var pu = data.updatedProject_userPopulated;
713
729
  winston.debug('ws pu', pu);
714
730
 
@@ -724,7 +740,7 @@ class WebSocketServer {
724
740
  }
725
741
  winston.debug('userId:'+ userId);
726
742
  pubSubServer.handlePublishMessage ('/'+pu.id_project+'/project_users/users/'+userId, pu, undefined, true, "UPDATE");
727
-
743
+ });
728
744
  });
729
745
 
730
746
 
@@ -735,6 +751,7 @@ class WebSocketServer {
735
751
  }
736
752
  winston.debug('eventEmitKey: ' + eventEmitKey);
737
753
  eventEvent.on(eventEmitKey,function(event) {
754
+ setImmediate(async () => {
738
755
  winston.debug('event', event);
739
756
  if (event.project_user === undefined) {
740
757
  //with "faqbot.answer_not_found" project_user is undefined but it's ok
@@ -743,6 +760,7 @@ class WebSocketServer {
743
760
  }
744
761
  pubSubServer.handlePublishMessage ('/'+event.id_project+'/events/'+event.project_user._id, event, undefined, true, "CREATE");
745
762
  });
763
+ });
746
764
 
747
765
 
748
766
  // https://github.com/websockets/ws/blob/master/examples/express-session-parse/index.js