Главная
Форум
Контакты
Купить
Поддержи проект
Поиск
Искать:
Расширенный поиск
[Закрыть]
Правила форума
Войти
Регистрация
Russian
English
HandyCache форум
Главная категория
»
Общие вопросы
»
Расширения на языке Lua в HandyCache
Имя пользователя:
1 час
1 день
1 неделя
1 месяц
Навсегда
Пароль:
Страниц:
1
...
26
27
[
28
]
29
Вниз
« предыдущая тема
следующая тема »
Отправить эту тему
Печать
Автор
Тема: Расширения на языке Lua в HandyCache (Прочитано 448356 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Anymore
Beta tester
Репутация: +17/-0
Offline
Сообщений: 339
Re: Расширения на языке Lua в HandyCache
«
Ответ #540 :
06 декабря 2014, 08:50:51 »
То что никак это оч странно...
Код:
--[[ <HCExtension>
@name WhiteUser
@author mai62
@version 0.11
@description Отключение Черного списка или переадресации для заданных пользователей
@event RequestHeaderReceived/RequestReceived
</HCExtension> ]]
function RequestReceived()
local mask=''
if hc.user_name=='user1' or
hc.user_name=='user2'
then
mask='B'
hc.user_speed_limit=20*1024
end
if hc.user_name=='user31' or
hc.user_name=='user32'
then
mask=mask..'R'
end
if #mask>0
then
hc.monitor_string = hc.monitor_string.."WU "
hc.white_mask=mask
end
end
Сообщить модератору
Записан
sunserg10
Beta tester
Репутация: +7/-0
Offline
Сообщений: 322
Re: Расширения на языке Lua в HandyCache
«
Ответ #541 :
24 декабря 2014, 11:19:16 »
HC RC3 1.0.0.551.
Есть расширение
Код:
--[[ <HCExtension>
@name Ограничить скорость доступа к определенным ресурсам (Videohostings)
@rule videoplay|lscache|youtube|playback
@rule \.(flv|mp4)(\?|$)
@event RequestHeaderReceived/Request
</HCExtension> ]]
function Request()
hc.file_speed_limit = 256000 -- 250 кбайт в секунду
end
При загрузке онлайн-видео скорость 32,2 Кбайта в секунду.
Без расширения - более 2,5 Мбайт в секунду.
Пример видеоролика - URL:
http://e2.dtln.1internet.tv/promorolik/2014/12/PUSTGOV-20141223.mp4
Что сделано не так?
Сообщить модератору
Записан
YuS
Ветеран
Репутация: +30/-4
Offline
Сообщений: 701
crazy
Re: Расширения на языке Lua в HandyCache
«
Ответ #542 :
24 декабря 2014, 14:11:33 »
Цитата: sunserg10 от 24 декабря 2014, 11:19:16
При загрузке онлайн-видео скорость 32,2 Кбайта в секунду.
Без расширения - более 2,5 Мбайт в секунду.
...
Что сделано не так?
Конечно, лучше дождаться ответа от автора, но есть легкое подозрение, что в описание закралась ошибка, т.е. судя по полученным цифрам, скорость там указывается не в байтах, а в битах:
256000 бит/с/8=32000 б/c
32000 б/с/1024=31,25 кб/с
«
Последнее редактирование: 24 декабря 2014, 14:23:59 от YuS
»
Сообщить модератору
Записан
LordMerlin
Старожил
Репутация: +12/-8
Offline
Сообщений: 488
Re: Расширения на языке Lua в HandyCache
«
Ответ #543 :
24 декабря 2014, 14:55:21 »
По логике да, но вот тут пишут про байты
http://handycache.ru/content/view/8/5/1/5/
Сообщить модератору
Записан
YuS
Ветеран
Репутация: +30/-4
Offline
Сообщений: 701
crazy
Re: Расширения на языке Lua в HandyCache
«
Ответ #544 :
24 декабря 2014, 19:39:13 »
Цитата: LordMerlin от 24 декабря 2014, 14:55:21
По логике да, но вот тут пишут про байты
Это и было предположение, что в описании есть ошибка (байты-биты)... впрочем, предположение оказалось неверное. Дело в том, что если изменять скорость ограничения в большую сторону, то само ограничение, всё равно, не будет более 32 кб/c, но если использовать цифры соответствующие интервалу 0-32 кб/с, то ограничение приблизительно соответствует описанию, т.е. там именно байты. Так что надо подождать, что скажет автор, возможно там есть более глубокая проблема внутри кода.
Сообщить модератору
Записан
sunserg10
Beta tester
Репутация: +7/-0
Offline
Сообщений: 322
Re: Расширения на языке Lua в HandyCache
«
Ответ #545 :
29 января 2015, 14:25:21 »
Нужен пример расширения, которое будет запрашивать определенный URL через определенный промежуток времени.
Сообщить модератору
Записан
Anymore
Beta tester
Репутация: +17/-0
Offline
Сообщений: 339
Re: Расширения на языке Lua в HandyCache
«
Ответ #546 :
29 января 2015, 16:02:10 »
Цитата: sunserg10 от 29 января 2015, 14:25:21
Нужен пример расширения, которое будет запрашивать определенный URL через определенный промежуток времени.
Например, pingProxy.lua
http://handycache.ru/component/option,com_smf/Itemid,10/topic,2576.msg21473/#msg21473
«
Последнее редактирование: 29 января 2015, 16:19:13 от Anymore
»
Сообщить модератору
Записан
sunserg10
Beta tester
Репутация: +7/-0
Offline
Сообщений: 322
Re: Расширения на языке Lua в HandyCache
«
Ответ #547 :
30 января 2015, 09:39:22 »
Цитата: Anymore от 29 января 2015, 16:02:10
Например, pingProxy.lua
http://handycache.ru/component/option,com_smf/Itemid,10/topic,2576.msg21473/#msg21473
В какую часть подставлять нужный мне URL?
В function timer (), или в function Answer() ?
Добился только того, что запрос URLа происходит один раз при инициализации расширения, а нужно через заданный интервал.
Задача расширения - обновлять внешний динамический IP-адрес:
http://rejector.ru/features/dynip/
Сообщить модератору
Записан
YuS
Ветеран
Репутация: +30/-4
Offline
Сообщений: 701
crazy
Re: Расширения на языке Lua в HandyCache
«
Ответ #548 :
30 января 2015, 13:47:39 »
Цитата: sunserg10 от 30 января 2015, 09:39:22
В какую часть подставлять нужный мне URL?
В function timer (), или в function Answer() ?
Добился только того, что запрос URLа происходит один раз при инициализации расширения, а нужно через заданный интервал.
В функцию таймера. Этот таймер запускается по событию Timer1m, каждую минуту, а функция уже ведет свой счетчик от 5 до 1 с записью в переменную hc_static['count'] и поэтому загружает в кэш URL один раз из пяти:
Код:
hc.execute_cmd('LoadURL http://ping.proxy/')
т.е. при выполнении условия:
Код:
hc_static['count']<=1
Этот таймер может не работать если включен автономный режим...
Сообщить модератору
Записан
sunserg10
Beta tester
Репутация: +7/-0
Offline
Сообщений: 322
Re: Расширения на языке Lua в HandyCache
«
Ответ #549 :
30 января 2015, 14:24:55 »
Anymore
,
YuS
, благодарю!
URL запрашивается через заданный интервал, задача решена.
Сообщить модератору
Записан
stealzy
Пользователь
Репутация: +1/-2
Offline
Сообщений: 52
Re: Расширения на языке Lua в HandyCache
«
Ответ #550 :
01 февраля 2015, 00:45:19 »
Пытаюсь поймать POST запрос.
Включил плагин:
Код:
--[[ <HCExtension>
@name POST notification
@event BeforeRequestBodySend/BeforeRequestBodySend
</HCExtension> ]]
function BeforeRequestBodySend()
hc.put_msg(10, 'POST')
end
Заполняю форму(POST, разумеется) на сайте, жму отправить. Почему оно не срабатывает?
«
Последнее редактирование: 01 февраля 2015, 00:53:23 от stealzy
»
Сообщить модератору
Записан
HC 1.0.0.551
olDjeka
Постоялец
Репутация: +6/-0
Offline
Сообщений: 117
Re: Расширения на языке Lua в HandyCache
«
Ответ #551 :
25 мая 2015, 00:06:56 »
Не нашёл более-менее понятного описания функции
WideCharToMultiByte
на русском. Возможно кто-то может прояснить значения её флагов
WC_COMPOSITECHECK
,
WC_DISCARDNS
,
WC_SEPCHARS
и
WC_DEFAULTCHAR
.
Взяв за основу пример из файла
HCExtensions.html
, и выполняя нижепривежённое расширение в программе
Lua Test
, выяснил что флаг
WC_COMPOSITECHECK
обязателен, а вот в чём различие остальных флагов не понял, поскольку все результаты оказались одинаковы.
Расширение:
Код:
--[[ <HCExtension>
@name Test extension
@event Init/init
</HCExtension> ]]
function init()
local WC_COMPOSITECHECK = 512
local WC_DEFAULTCHAR = 64
local WC_DISCARDNS = 16
local WC_SEPCHARS = 32
local s1,b1 = hc.recode('абвгд 12345 abcde', 1251, 28591, WC_COMPOSITECHECK, '#')
hc.put_msg(s1)
local s2,b2 = hc.recode('абвгд 12345 abcde', 1251, 28591, WC_COMPOSITECHECK+WC_DEFAULTCHAR, '#')
hc.put_msg(s2)
local s3,b3 = hc.recode('абвгд 12345 abcde', 1251, 28591, WC_COMPOSITECHECK+WC_DISCARDNS, '#')
hc.put_msg(s3)
local s4,b4 = hc.recode('абвгд 12345 abcde', 1251, 28591, WC_COMPOSITECHECK+WC_SEPCHARS, '#')
hc.put_msg(s4)
local s5,b5 = hc.recode('абвгд 12345 abcde', 1251, 28591, WC_COMPOSITECHECK)
hc.put_msg(s5)
local s6,b6 = hc.recode('абвгд 12345 abcde', 1251, 28591, WC_COMPOSITECHECK+WC_DEFAULTCHAR)
hc.put_msg(s6)
local s7,b7 = hc.recode('абвгд 12345 abcde', 1251, 28591, WC_COMPOSITECHECK+WC_DISCARDNS)
hc.put_msg(s7)
local s8,b8 = hc.recode('абвгд 12345 abcde', 1251, 28591, WC_COMPOSITECHECK+WC_SEPCHARS)
hc.put_msg(s8)
end
Результат:
Код:
Put Info Window:
##### 12345 abcde
Put Info Window:
##### 12345 abcde
Put Info Window:
##### 12345 abcde
Put Info Window:
##### 12345 abcde
Put Info Window:
????? 12345 abcde
Put Info Window:
????? 12345 abcde
Put Info Window:
????? 12345 abcde
Put Info Window:
????? 12345 abcde
Сообщить модератору
Записан
YuS
Ветеран
Репутация: +30/-4
Offline
Сообщений: 701
crazy
Re: Расширения на языке Lua в HandyCache
«
Ответ #552 :
25 мая 2015, 21:18:50 »
Цитата: olDjeka от 25 мая 2015, 00:06:56
Не нашёл более-менее понятного описания функции
WideCharToMultiByte
на русском.
Можно
так посмотреть
- корявенько, но смысл понять можно.
Сообщить модератору
Записан
olDjeka
Постоялец
Репутация: +6/-0
Offline
Сообщений: 117
Re: Расширения на языке Lua в HandyCache
«
Ответ #553 :
26 мая 2015, 00:32:36 »
YuS
, спасибо. Так и пробовал, но проглядел ссылку на
дополнительную информацию
внизу страницы.
Получилось так: если установлен флаг
WC_COMPOSITECHECK
, то символ, имеющийся во входной кодировке, но отсутствующий в выходной, будет преобразован в соответствии с дополнительно устанавленным флагом:
WC_DEFAULTCHAR
- Заменён на символ по умолчанию.
WC_DISCARDNS
- Отсутствующий символ будет отброшен.
WC_SEPCHARS
- Будет произведена попытка подобрать подходящий символ в выходной кодировке, если такой не найдётся то будет заменён на символ по умолчанию.
Если я всё понял правильно, то результатом использования флага
WC_DISCARDNS
(в расширении) должно быть не
##### 12345 abcde
, и не
?
?
?
?
? 12345 abcde
, а
12345 abcde
. Или ошибаюсь?
Сообщить модератору
Записан
YuS
Ветеран
Репутация: +30/-4
Offline
Сообщений: 701
crazy
Re: Расширения на языке Lua в HandyCache
«
Ответ #554 :
26 мая 2015, 20:43:09 »
Цитата: olDjeka от 26 мая 2015, 00:32:36
Если я всё понял правильно, то результатом использования флага
WC_DISCARDNS
(в расширении) должно быть не
##### 12345 abcde
, и не
?
?
?
?
? 12345 abcde
, а
12345 abcde
. Или ошибаюсь?
Не совсем так...
Вообще,
WC_COMPOSITECHECK
касается составных символов (умляуты и т.п.), с помощью этого флага их конвертируем на составляющие: базовый символ и непробельный символ. А
WC_DISCARDNS
отбрасывает непробельные символы во время конвертирования, но опять же, это касается составных символов.
Так что, результатом
Код:
local s7,b7 = hc.recode('абвгд 12345 abcde', 1251, 28591, WC_COMPOSITECHECK+WC_DISCARDNS)
будет именно:
Код:
s7 = ????? 12345 abcde
b7 = true
т.к.:
1.
Цитировать
DefaultChar
- символ, который будет помещен в строку, если в указанной кодировке символ не может быть представлен;
если аргумент пропущен, то выводится символ
'
?
'.
2.
Цитировать
Вторым значением является true или false в зависимости от того потебовалось использовать символ DefaultChar или нет.
Сообщить модератору
Записан
ilgrin
Новичок
Репутация: +0/-0
Offline
Сообщений: 6
Re: Расширения на языке Lua в HandyCache
«
Ответ #555 :
31 августа 2015, 11:07:29 »
Подскажите, пожалуйста, можно ли и как вообще заблокировать все исходящие post-запросы, чтобы пользователи не могли отправлять данные с форм?
Не знаю, как закончить условие, if hc.method = "POST".. И будет ли это действенно для https?
«
Последнее редактирование: 31 августа 2015, 11:17:22 от ilgrin
»
Сообщить модератору
Записан
mai62
Автор HC
Репутация: +226/-4
Offline
Сообщений: 6383
Re: Расширения на языке Lua в HandyCache
«
Ответ #556 :
31 августа 2015, 13:20:57 »
if hc.method = "POST" then hc.action = "stop"
Для https это будет работать, если включена опция Управление загрузкой/Обработка SSL. Если эта опция выключена, через НС будут проходить зашифрованные данные и он не получит доступа к заголовкам запроса.
Сообщить модератору
Записан
ilgrin
Новичок
Репутация: +0/-0
Offline
Сообщений: 6
Re: Расширения на языке Lua в HandyCache
«
Ответ #557 :
01 сентября 2015, 05:30:43 »
В таком виде? собаку перед name и event не даёт вставить в пост)
Код:
--[[ <HCExtension>
name
POST_break
event
BeforeRequestBodySend/stop_action
</HCExtension> ]]
function stop_action()
if hc.method == "POST" then hc.action = "stop" end
end
«
Последнее редактирование: 01 сентября 2015, 07:16:47 от ilgrin
»
Сообщить модератору
Записан
ilgrin
Новичок
Репутация: +0/-0
Offline
Сообщений: 6
Re: Расширения на языке Lua в HandyCache
«
Ответ #558 :
01 сентября 2015, 08:47:03 »
Разобрался, работает) А как лучше написать не чтобы он вообще блочил страницу после нажатия "войти", а просто её обновлял, не логинясь?
Сообщить модератору
Записан
mai62
Автор HC
Репутация: +226/-4
Offline
Сообщений: 6383
Re: Расширения на языке Lua в HandyCache
«
Ответ #559 :
01 сентября 2015, 11:54:43 »
Цитировать
А как лучше написать не чтобы он вообще блочил страницу после нажатия "войти", а просто её обновлял, не логинясь?
Как такое сделать я не знаю.
Сообщить модератору
Записан
Страниц:
1
...
26
27
[
28
]
29
Вверх
Отправить эту тему
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Главная категория
-----------------------------
=> Общие вопросы
=> Новые предложения
=> Дополнения, плагины
=> Сжатие трафика
=> English forum
=> Indonesian forum
-----------------------------
Гостевая
-----------------------------
=> Гостевая
-----------------------------
Дела домашние
-----------------------------
=> Сайт и форум HandyCache
=> Курилка
© 2006-2014 HandyCache Team. Все права защищены.
Загружается...