J'essaie de configurer google speech api pour travailler dans mon projet au sein du pare-feu de l'entreprise. Je l'ai configuré les SpeechSettings comme suit:Authentification par mandataire pour Google Apeech Credential
InputStream is = this.getClass().getResourceAsStream("/my-service-account.json");
CredentialsProvider credentialsProvider = FixedCredentialsProvider.create(ServiceAccountCredentials.fromStream(is));
SpeechSettings.Builder builder = SpeechSettings.newBuilder();
builder.setTransportProvider(SpeechSettings.defaultTransportProvider());
builder.setCredentialsProvider(credentialsProvider);
SpeechSettings settings = builder.build();
SpeechClient.create(settings);
L'utilisation de ce réseau fonctionne correctement proxy extérieur et démarre une session de reconnaître la parole. Mais il ne parvient pas à transcrire quoi que ce soit sous un réseau proxy authentifié et expire avec cette erreur - UNAVAILABLE: Transport closed for unknown reason
dans la classe ApiStreamObserver. Je pense que le transport Grpc est en cours de fermeture en raison du délai d'expiration du pare-feu.
Est-il possible de s'authentifier avec les informations d'identification de l'authentification proxy lors de la création de la session client vocal? Merci.
Le réseau proxy est un proxy http avec nom d'utilisateur et mot de passe. Je n'utilise pas de terminaux ni n'exécute le projet sur Google Cloud Platform. Tout ce que je fais pour me connecter avec l'API est d'utiliser le fichier json du compte de service. – swapp1990
Après avoir fait des recherches, j'ai trouvé un moyen de définir le proxy à partir de ce post: https://github.com/grpc/grpc-java/issues/2983. Si je mets la variable d'environnement GRPC_PROXY_EXP à mon proxy url: my.proxy.com:8080, ça marche! – swapp1990