Запуск архивирования в opentok java sdk v4.3.0 приводит к 400 (неверный запрос)

#java #spring #opentok #tokbox

#java #spring #opentok #tokbox

Вопрос:

Я использую проект tokbox opentok для публикации и подписки на видеокамеры, а также их архивирования. Я использовал opentok-java-sdk v2.3.2, в котором все работало нормально, пока я не изменил версию sdk. Теперь я изменил версию sdk на 4.3.0. что приводит к сбою запуска архивирования.
Это выдает следующую ошибку:

 com.opentok.exception.RequestException: Could not start an OpenTok Archive. A bad request, check input archive properties like resolution etc.
    at com.opentok.util.HttpClient.startArchive(HttpClient.java:259)
    at com.opentok.OpenTok.startArchive(OpenTok.java:445)
    at com.abc.web.utils.OpenTokSdkUtils.startRecording(OpenTokSdkUtils.java:99)
  

Если кто-нибудь может мне помочь с этим. Это было бы действительно оценено.
Редактировать: — Я следую этому коду из руководства opentok для java sdk

 import com.opentok.Archive;
import com.opentok.ArchiveProperties;

Archive archive = opentok.startArchive(sessionId, new ArchiveProperties.Builder()
  .archiveMode(Archive.OutputMode.INDIVIDUAL)
  .build());

// Store this archiveId in the database for later use
String archiveId = archive.getId();
  

Но это связано с ArchiveBuilder, поскольку у archive builder нет имени метода archiveMode, поэтому я использовал outputMode, который я использовал ранее.
После изменений:-

 Archive archive = opentok.startArchive(sessionId, new ArchiveProperties.Builder()
                      .outputMode(Archive.OutputMode.INDIVIDUAL).name(username)
                      .build());
  

Комментарии:

1. Евангелист-разработчик TokBox здесь. Не могли бы вы поделиться запросом, который вы делаете?

2. @Manik, я добавил код, который я использую для отправки запроса.

3. Аншул, спасибо, что поделился кодом и обнаружил опечатку. Вы правы — это должен быть outputMode, а не archiveMode. Я зарегистрировал проблему в репозитории, чтобы исправить документацию: github.com/opentok/Opentok-Java-SDK/issues/173 Работал ли архив для вас после изменения его на outputMode ? Также обратите внимание, что вы не можете указать разрешение для отдельного архивирования — эта функция доступна только для составных архивов.

4. Нет, это не сработало. Я сохранил его только для outputMode и не добавлял разрешение в архивирование, но оно все равно не работает. Случай, в котором он работает, — это когда я удаляю ArchiveProperties из startArchive метода, в этом случае он работает нормально

Ответ №1:

Евангелист-разработчик TokBox здесь.

Похоже, что OpenTok Java SDK пытается добавить макет, даже если outputMode установлено значение Archive.OutputMode.INDIVIDUAL . Я пошел дальше и зарегистрировал ошибку в репозитории SDK, чтобы вы могли отслеживать выпуск исправления.

Пожалуйста, ознакомьтесь с документами API для получения дополнительной информации об архивировании: https://tokbox.com/developer/rest/#start_archive

Комментарии:

1. Спасибо за помощь, которую действительно оценили. И означает ли это, что я не смогу использовать свойства архива до тех пор, пока не будет выпущено исправление или есть какое-либо обходное решение?