MCPcopy Create free account
hub / github.com/CommE2E/comm / handleResponsesClientSocketMessage

Method handleResponsesClientSocketMessage

keyserver/src/socket/socket.js:510–546  ·  view source on GitHub ↗
(
    message: ResponsesClientSocketMessage,
  )

Source from the content-addressed store, hash-verified

508 }
509
510 async handleResponsesClientSocketMessage(
511 message: ResponsesClientSocketMessage,
512 ): Promise<ServerServerSocketMessage[]> {
513 const { viewer } = this;
514 invariant(viewer, 'should be set');
515
516 const { clientResponses } = message.payload;
517 const { stateCheckStatus } = await processClientResponses(
518 viewer,
519 clientResponses,
520 );
521
522 const serverRequests = [];
523 if (stateCheckStatus && stateCheckStatus.status !== 'state_check') {
524 const { sessionUpdate, checkStateRequest } = await checkState(
525 viewer,
526 stateCheckStatus,
527 );
528 if (sessionUpdate) {
529 await commitSessionUpdate(viewer, sessionUpdate);
530 this.setStateCheckConditions({ stateCheckOngoing: false });
531 }
532 if (checkStateRequest) {
533 serverRequests.push(checkStateRequest);
534 }
535 }
536
537 // We send a response message regardless of whether we have any requests,
538 // since we need to ack the client's responses
539 return [
540 {
541 type: serverSocketMessageTypes.REQUESTS,
542 responseTo: message.id,
543 payload: { serverRequests },
544 },
545 ];
546 }
547
548 handlePingClientSocketMessage(
549 message: PingClientSocketMessage,

Callers 1

Calls 5

processClientResponsesFunction · 0.90
checkStateFunction · 0.90
commitSessionUpdateFunction · 0.90
pushMethod · 0.80

Tested by

no test coverage detected