Это же самое действие GetTimer можно применить и для оценки качества коннекта посетителей вашей странички. Здесь все намного проще. Если используется цикл If Frame Is Loaded (для стандартных задач типа Loading...), просто засекаем время в самом первом кадре и еще раз засекаем после окончания этого цикла. Объем данных загружаемых пользователем в этом цикле нам известен, время загрузки узнаем как разницу двух значений GetTimer - получается, что скорость соединения вычислить не просто, а очень просто :) Можно еще для этой же цели подгрузить пару комбинаций из "невидимых" роликов весом по полтора-два килобайта с паузой секунды в 3-4 (а вдруг как раз в этот момент попадется ретрейн ? :) Тогда время засекать лучше действиями в подгружаемых роликах, а переменные хранить в основном. В первом из подгружаемых (например up_1.swf ) роликов получится три Blank Keyframes и действия похожие на что-то вроде:
в первом кадре
Set Variable: "_level0:time1" = GetTimerво втором
Load Movie ("up_up_1.swf", 1)и в третьем
Set Variable: "_level0:time2" = GetTimer
где up_up_1.swf
это дополнительный
подгружаемый ролик весом
1-2 кб состоящий из двух
кадров - первый кадр
пустой с действием Stop,
а второй кадр содержит
какой-нибудь объект
весящий 1-2 кб. Для пущей
точности из основного
ролика нужно подгружать
эту комбинацию раза 2-3 и
брать среднюю разницу time2-time1.
При этом просто нужно
иметь две-три
переименованных копии up.swf
и up_up.swf.
Это совсем не так страшно
как кажется - на самом деле
такой подход очень удобен.
Для определения скорости
не нужно будет каждый раз
подбирать соотношение
времени и объема данных -
нужно только иметь эти 2
ролика up.swf и
up_up.swf (две-три
пары под разными именами)
и, подобрав один раз
константу в соотношении
время загрузки - величина
файла, просто загружать из
любой точки ролика up_х.swf
и в любой другой точке
ролика вычислять скорость
коннекта формулой N/(time2
- time1), где N
- известная (подобранная
раз и навсегда) константа.
При этом в основном ролике
ничего отображаться не
будет. Как уже говорилось,
для пущей точности
скорость коннекта лучше
посчитать минимум 2 раза с
паузой 2-4 секунды (комбинация
up_1.swf и up_up1.swf
может посылать в основной
ролик константы time1
и time2, а, к
примеру, up_2.swf и
up_up_2.swf -
time3 и time4).
Кстати, вычисляя скорость,
не забывайте задавать
верхний предел возможного,
чтобы отсеять,
подгружаемые из кэша
браузера, ролики.
Поняли что-нибудь ? :)
Честно говоря, я тоже :) Но
более понятного и
удобного варианта, я
например, найти не смог -
виноват :)
<< назад | содержание | вперед >> |