code: protected ResponseEnvelope invoke(UnmarshalledRequest<RequestEnvelope> unmarshalledRequest, Object context) {
          RequestEnvelope requestEnvelope = unmarshalledRequest.getUnmarshalledRequest();
          JsonNode requestEnvelopeJson = unmarshalledRequest.getRequestJson();
  
          if (skillId != null && !requestEnvelope.getContext().getSystem().getApplication().getApplicationId().equals(skillId)) {
              throw new AskSdkException("AlexaSkill ID verification failed.");
          }
  
          ServiceClientFactory serviceClientFactory = apiClient != null ? ServiceClientFactory.builder()
                  .withDefaultApiConfiguration(getApiConfiguration(requestEnvelope))
                  .build() : null;
  
          HandlerInput handlerInput = HandlerInput.builder()
                  .withRequestEnvelope(requestEnvelope)
                  .withPersistenceAdapter(persistenceAdapter)
                  .withContext(context)
                  .withRequestEnvelopeJson(requestEnvelopeJson)
                  .withServiceClientFactory(serviceClientFactory)
                  .withTemplateFactory(templateFactory)
                  .build();
  
          Optional<Response> response = requestDispatcher.dispatch(handlerInput);
          return ResponseEnvelope.builder()
                  .withResponse(response != null ? response.orElse(null) : null)
                  .withSessionAttributes
                          (requestEnvelope.getSession() != null ? handlerInput.getAttributesManager().getSessionAttributes() : null)
                  .withVersion(SdkConstants.FORMAT_VERSION)
                  .withUserAgent(UserAgentUtils.getUserAgent(customUserAgent))
                  .build();
      }
docs: Invokes the dispatcher to handler the request envelope and construct the handler input
  @param unmarshalledRequest unmarshalled output from {@link JacksonJsonUnmarshaller}, containing a
  {@link RequestEnvelope} and a JSON representation of the request.
  @param context context
  @return optional request envelope