Kurento Media Server не записывается из-за подписанного сертификата - PullRequest
0 голосов
/ 04 мая 2020

Я работаю с кодом приложения old-i sh, которое отлично работает на исходном сервере, но я не могу работать локально на моем компьютере. Это веб-приложение, которое использует Node.js и Kurento для потокового видео. Я использую тот же конфиг Kurento и ту же версию ОС и Kurento, которая находится на сервере. Код также такой же, он только что был скопирован и вставлен на мой локальный компьютер (хотя мне пришлось изменить несколько параметров конфигурации, таких как ips, но ничего особенного). Все в приложении работает нормально, включая потоковое видео, кроме записи.

Приложение должно создавать видеофайл с содержимым потока после его завершения. Однако это абсолютно ничего не делает. Он не создает такую ​​запись, но также не выдает никаких ошибок и не регистрирует сообщения об исключениях. Вот параметры рекордера (для RecorderEndpoint):

const recordParams = {
    mediaPipeline: pipeline,
    uri: 'https://x.x.x.x:8443/kurento/video/' + roomId,
    mediaProfile: 'WEBM',
    stopOnEndOfStream: true
};

URI вызывает другой метод моего контроллера, который, по сути, пост-обрабатывает видео. Вот такой метод:

router.post('/kurento/video/:roomId', function (req, res) {

    log.debug("TEST");

    ...

});

Я даже не могу записать сообщение "TEST", что означает, что метод вообще не вызывается. Я также попытался с router.put кстати.

Однако, если я изменяю URI для локального адреса файла, например:

uri: file:////var/lib/kurento/test.webm

, приложение работает отлично, что означает что проблема связана с моим URI, а не с самим объектом записи.

Я попытался сделать петиции с почтальоном на этот URI и обнаружил, что получил ошибку, если сначала не отключил «Проверка SSL-сертификата», что имеет смысл, так как я использую автоподписанный сертификат на моей локальной машине. Итак, мой вопрос: это может быть проблемой? если так, как я могу обойти это? Я могу подделать сертификат (и фактически сделал это и проверил на почтальоне, что он не выдал ошибок), но kurento требует IP, а не доменное имя, и при непосредственном вызове ip выдает ту же ошибку, что и раньше ...

...