Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   p2p на FP11.2 не вызывается метод (http://www.flasher.ru/forum/showthread.php?t=177674)

Silicium 05.04.2012 23:22

p2p на FP11.2 не вызывается метод
 
Приветствую. Был у меня начат проект, в котором использовалось p2p соединение. Писал я его под fp11.1 и под ним он работает. Под 11.2 - нет. О том, что в RTMFP произошли какие-либо изменения информации не нашел. В чем может быть причина?
ПС: понимаю, информации мало, но может быть известны какие-либо принципиальные моменты.

dsQuadro 06.04.2012 12:49

какой именно метод не работает?

Silicium 06.04.2012 16:39

Изначально код писался на основе вот этого: ссылка
Есть там такой участок кода:
Код AS3:

client.onPeerConnect = function(subscriber:NetStream):Boolean {
    // когда ко мне присоединяется подписчик, проверяем,
    // если это новый подписчик, то оповещаем всех о нем,
    // а также подписываемся на его поток
    if (! hasSubscriptionTo(subscriber.farID)) {
        sendStream.send('onBroadcastNewSubscriber', subscriber.farID);
        initRecvStream(subscriber.farID);
    }
 
    // ... и конечно же оповещаем его о своем имени
    subscriber.send('onPeerNameUpdate', myPeerID, myName);
 
    return true;
};

Так вот именно отправка через нетстрим, пришедший как параметр метода и не работает в 11.2 плеере.
Код AS3:

subscriber.send('onPeerNameUpdate', myPeerID, myName);

Отправка методов через вещатель работает исправно.

dsQuadro 06.04.2012 18:09

при компиляции на 11-м плеере такая конструкция работает нормально, только я использую только 1 дополнительный параметр - Object в котором уже куча всего что надо
Код AS3:

netStream.send("metod", data:Object)

в пример не вчитывался, но как я понял там чат делают... для этих целей, как мне кажется, лучше(проще) NetGroup использовать(задержка в 1-2 секунды в чате не критична, а реализация на порядок проще), а конструкцию netStream.send(...) там где нужна большая скорость передачи данных.

Silicium 08.04.2012 00:14

Компилируется-то компилируется, да вот не работает. Собственно, приведенный метод используется для обмена именами юзеров. Остальные методы отправляются через создаваемый мною нетстрим, передаются нормально. Подозреваю, что загвоздка как раз в том, что в описанном выше методе для отправки используется нетстрим, переданный параметром клиентскому методу onPeerConnect. Опять же странно, что в 11.1 он работает, в 11.2 - нет.

campu 10.04.2012 15:26

программисты корпорации Adobe улучшили безопасность NetStream в 11.2 плеере. так качественно улучшили, что действительно перестали работать некоторые реализации.
замечено, что если поток, на который подписываешься, пустой (данные не воспроизводятся), то и не работают клиентские методы никакие (onImageData, onTextData...). пока не начнется хоть какое-нибудь воспроизведение. видно что собственно события нетстатуса не приходят даже, хотя логично после NetStream.play() получить события получилось/не получилось))

Adobe disrespect!

Silicium 10.04.2012 21:55

спасибо за мало-мальски вразумительный ответ, только этому есть оф.пруф?

red_penguin 11.04.2012 11:34

и что же теперь делать?
У меня те же проблемы. :(


Часовой пояс GMT +4, время: 00:44.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.