Разработчик TokBox здесь.
Да, к сожалению, мы публично не документировали этот конкретный случай (извините за это). Мы планируем добавить это в выпуске 2.16.0.
Причина отправки OTSubscriberVideoEventReason=4
заключается в том, что видео в потоке абонента было отключено, поскольку поток использует видеокодек (такой как H.264), который не поддерживается на симуляторе.
@annakata (и даже если бы Вы сохранили их, у Вас не было бы разрешения больше закрывать их),
Не верно. Если у Вас есть название окна, можно использовать window.open для восстановления ссылки на окно, даже если новичок был закрыт и вновь открыт. Например:
<script>
function winOpen(url){
return window.open(url,getWinName(url));
}
function winClose(url){
var win = window.open("",getWinName(url));
win.close();
}
function getWinName(url){
return "win" + url.replace(/[^A-Za-z0-9\-\_]*/g,"");
}
</script>
<a href="#" onclick="winOpen('http://google.com');return false;">Click me first</a>, close and open this window, then
<a href="#" onclick="winClose('http://google.com');return false;">click me to close the other window</a>
В JavaScript можно только получить ссылки на текущее окно и любые окна, которыми Вы открываетесь window.open
.
Вы могли проверить на winRef.closed
видеть, закрыл ли пользователь окно, все же. Я не уверен, работает ли это хорошо над всеми браузерами или нет, все же.
Нет, это было бы проблемой безопасности/конфиденциальности.
Так как другие подняли устройство хранения данных состояния владения/cookie: это только работает, если Вы - также тот же документ, который открыл окно, т.е. в сценарии, где пользователь завершает работу окна и вновь открылся затем, эти ссылки действительно потеряны (и даже если бы Вы сохранили их, то у Вас не было бы разрешения больше закрывать их),
Установите массив и увеличьте его со ссылками окна при открытии их...
var wins = new Array();
function openWindow(url) {
wins.push(window.open(url));
}
Затем, когда Вы хотите проверить состояние окон, можно циклично выполниться через них как это и удалить окна, которые не открыты...
function updateWindowArray() {
for(var i = 0, l = wins.length; i < l; i++) {
if(wins[i] == null || wins[i].closed)
arrayRemove(wins, i, i + 1);
}
}
function arrayRemove(array, from, to) {
var rest = array.slice((to || from) + 1 || array.length);
array.length = from < 0 ? array.length + from : from;
return array.push.apply(array, rest);
}
С уважением...
Вы могли на самом деле сделать это с cookie, но... если Вы спрашиваете меня, Вы не сделаете этого.
При предоставлении каждого окна, уникальное имя окна (второй аргумент window.open), звоня window.open снова с тем же именем окна или откроет окно, если это будет закрыто, или возвратите ссылку на существующее окно, не открывая новое окно.