Скорректировать клиент SIPML5

Цена договорная • наличный расчёт, безналичный расчёт, электронные деньги
03 марта 2018, 23:27 • 1 отклик • 52 просмотра
Задача:
скорректировать клиент SIPML5 https://github.com/DoubangoTelecom/sipml5 для осуществления звонка без запроса на наличие микрофона и камеры.
Т.е. есть ведущий, для него есть возможность включать камеру и микрофон и есть участник, который при входе в комнату осуществляет звонок через сип клиент, чтобы видеть и слышать ведущего, но данный звонок нужно осуществлять без проверки наличия оборудования, чтобы исключить возможность говорить и показывать камеру участнику, но иметь возможность по запросу (поднятие руки) включить участнику микрофон и камеру.

Что сделали:
Нашли код, удалив который добились реализации описанной выше возможности, но только в Chrome, для Firefox нужны другие заголовки, т.е. удаление не корректно решает вопрос, нужно именно программно, сохранив логику клиента отключить проверку оборудования.

От Вас

наличие опыта в данной области, либо js.

На выходе:
1. Клиент работает во всех современных браузерах: Chrome, Firefox, Opera, IE, Яндекс браузер, Safari.
2. Возможность осуществлять звонок без проверки на наличие камеры и микрофона
3. Возможность включать по запросу камеру и микрофон (как вариант думали реализовать двумя папками со скриптами: в одной ведущему с полными возможностями, в другой участнику с отключенной проверкой)

Как будем проверять

Есть тестовая площадка, к которой есть возможность через тимвьювер (т.к. есть только root доступ к серверу) дать доступ для итоговой проверки решения.

Оплата по факту

т.к. много кто брался, предполагая, что решат и пока продолжаем искать специалиста, поэтому предоплата исключена.

Найденный код данный, его удалили:
navigator.getUserMedia({
audio: (this.e_type == tmedia_type_e.SCREEN_SHARE) ? false : !!(this.e_type.i_id & tmedia_type_e.AUDIO.i_id),
video: !!(this.e_type.i_id & tmedia_type_e.VIDEO.i_id) ? d : false,
data: false
}, tmedia_session_jsep01.mozThis ? tmedia_session_jsep01.onGetUserMediaSuccess : function (e) {
tmedia_session_jsep01.onGetUserMediaSuccess(e, c)
}, tmedia_session_jsep01.mozThis ? tmedia_session_jsep01.onGetUserMediaError : function (e) {
tmedia_session_jsep01.onGetUserMediaError(e, c)
})

Заменили на данный:
tmedia_session_jsep01.onGetUserMediaSuccess(__o_jsep_stream_audiovideo, c)

Ждем предложений.