validateChatDetails()

in src/core/chatArgsValidator.js [53:82]


  validateChatDetails(chatDetails, sessionType) {
    Utils.assertIsObject(chatDetails, "chatDetails");
    if (sessionType===SESSION_TYPES.AGENT && !Utils.isFunction(chatDetails.getConnectionToken)) {
      throw new IllegalArgumentException(
        "getConnectionToken was not a function", 
        chatDetails.getConnectionToken
      );
    }
    Utils.assertIsNonEmptyString(
      chatDetails.contactId,
      "chatDetails.contactId"
    );
    Utils.assertIsNonEmptyString(
      chatDetails.participantId,
      "chatDetails.participantId"
    );
    if (sessionType===SESSION_TYPES.CUSTOMER){
      if (chatDetails.participantToken){
        Utils.assertIsNonEmptyString(
          chatDetails.participantToken,
          "chatDetails.participantToken"
        );
      } else {
        throw new IllegalArgumentException(
          "participantToken was not provided for a customer session type",
          chatDetails.participantToken
        );
      }
    }
  }