Я пытаюсь интегрировать службу речи в текст в своем чате, но получаю сообщение об ошибке, указанное в заголовке.Я просто использовал сервис, как описано в документации.Они изменили метод авторизации с имени пользователя + пароль на ключ API, верно?Это ошибка, которую я получаю:
26 февраля 2019 г. 11:18:38 okhttp3.internal.platform.Platform log INFO: -> POST https://stream.watsonplatform.net/speech-to-text/api/v1/recognize http / 1.1 (-1-тело байта) 26 февраля 2019 11:18:40 okhttp3.internal.platform.Log журнала INFO: <- 401 не авторизован <a href="https://stream.watsonplatform.net/speech-to-text/api/v1/recognize" rel="nofollow noreferrer">https://stream.watsonplatform.net/speech-to-text/api/v1/recognize (2434 мс, тело 37 байтов) 26 февраля 2019 11:18:40:00 com.ibm.watson.developer_cloud.service.WatsonService processServiceCall SEVERE: POST https://stream.watsonplatform.net/speech-to-text/api/v1/recognize, status: 401, ошибка: неавторизованное исключение в потоке «AWT-EventQueue-0» com.ibm.watson.developer_cloud.service.exception.UnauthorizedException: Unauthorized: доступ запрещен из-за неверных учетных данных.Подсказка: вы установили конечную точку?по адресу com.ibm.watson.developer_cloud.service.WatsonService.processServiceCall (WatsonService.java:368) по адресу com.ibm.watson.developer_cloud.service.WatsonService $ WatsonServiceCall.execute (WatsonService.erTSerneer).java: 66) в GUI $ recordAudioButtonListener.actionPerformed (GUI.java:179)
Тем не менее мой код выглядит так:
SpeechToText stt = new SpeechToText();
stt.setApiKey("3PHwb6P36A0hgiovasdcqgesVyDZEO7awg2L1be");
stt.setEndPoint("https://stream.watsonplatform.net/speech-to-text/api");
try {
RecognizeOptions recognizeOptions = new RecognizeOptions.Builder()
.audio(new File("C:/Users/jvermaet/Desktop/hallo.wav"))
.contentType(HttpMediaType.AUDIO_WAV)
.build();
SpeechRecognitionResults srr = stt.recognize(recognizeOptions).execute();
System.out.println(srr.toString());
} catch (FileNotFoundException e) {
e.printStackTrace();
System.out.println("OO");
}