Своя система лицензирования шаблонов в связке с GAS (Google Apps Script)

Регистрация
23.12.2014
Сообщения
127
Благодарностей
65
Баллы
28
Я так понял если в многопотоке запускать сразу шаб то файл этот забивается и там получается каша
Почему каша то? Каждый поток, при наличии файла, читает файл, проверяет его на условия. Если все ок и период не прошел - то поток идет дальше.

Всем привет. В чем может быть трабла. Шаб работает все гуд. Для теста задал проверку лицензии 1 минута. И спецом поменял хэш в таблице. Вообщем спустя минуту - две и т.д , первый кубик не делает запрос к таблице. Как только файл лицензии удаляю , то запрос идет и выходит по ошибке , т.к до этого поменял хэш на заведомо не верный.
Ты в дебаггере проверял это поведение?
 
  • Спасибо
Реакции: ZHAG

ZHAG

Client
Регистрация
01.05.2014
Сообщения
228
Благодарностей
220
Баллы
43
Вообщем спустя минуту - две и т.д , первый кубик не делает запрос к таблице
Ставь точку останова и отлаживай )). Запрос обязан быть если срок сессии истек.
Я так понял если в многопотоке запускать сразу шаб то файл этот забивается и там получается каша
Специально чтобы избежать каши в момент отправки запроса шаблон останавливает все потоки. если Ты не вносил изменения в код снипета то такая ситуация не возможна.
 

Gizmond

Client
Регистрация
18.02.2017
Сообщения
263
Благодарностей
51
Баллы
28
Ставь точку останова и отлаживай )). Запрос обязан быть если срок сессии истек.

Специально чтобы избежать каши в момент отправки запроса шаблон останавливает все потоки. если Ты не вносил изменения в код снипета то такая ситуация не возможна.
Привет. Я чисто для теста как сделал. Добавил в таблицу все данные и поставил запрос через 1 минуту. Запускаю кубик , ответ приходит все норм. Но потом я пробую через 2 -3 минуту опять запустить кубик, он как бы читает данные из lic и думает что время еще не прошло :-)) Как бы он проходит по положительной ветке, но запросов не делает ни каких. Как только удаляю файлик лицензии , он делает запрос приходит ответ и все опять такая же история
 

Gizmond

Client
Регистрация
18.02.2017
Сообщения
263
Благодарностей
51
Баллы
28
Почему каша то? Каждый поток, при наличии файла, читает файл, проверяет его на условия. Если все ок и период не прошел - то поток идет дальше.


Ты в дебаггере проверял это поведение?
Не совсем понял. Кубик у меня норм отрабатывает без ошибок , если ты про это )
 

Gizmond

Client
Регистрация
18.02.2017
Сообщения
263
Благодарностей
51
Баллы
28
Второй день бьюсь не могу понять в чем трабла.. В таблице забиваю прошедшую дату , шаблон по отрицалке идет. Ставлю актуальную дату идет по положительной. Время проверки лицензии ставлю 1 минуту. Как только прошло по положительной сразу меняю дату на прошедшую , но шаб все равно проходит по положительной ветке. Обращения к гуглу не идет. В чем трабла ?
 

ZHAG

Client
Регистрация
01.05.2014
Сообщения
228
Благодарностей
220
Баллы
43
Обращения к гуглу не идет. В чем трабла ?
в твоем случае обращение будет идти с переодичностью 1 минута. по этому если ты изменишь в таблице данные то они будут запрошены только по истечению срока действия сессии.
 

Gizmond

Client
Регистрация
18.02.2017
Сообщения
263
Благодарностей
51
Баллы
28
в твоем случае обращение будет идти с переодичностью 1 минута. по этому если ты изменишь в таблице данные то они будут запрошены только по истечению срока действия сессии.
Ну дык я и говорю , поставил минуту и нифига. Как только удаляю файл lic, то идет запрос и потом он уже видит что дата кривая и идет шаблон по красной ветке. Запрос не идет к гуглу пока файл lic в папке , как только удаляешь файл lic то идет , но опять же все по кругу :bn:
 

ZHAG

Client
Регистрация
01.05.2014
Сообщения
228
Благодарностей
220
Баллы
43
Так вот этот момент и от дебаж.
Поставь точку останова в снипете и по шагам посмотри от чего не идет запрос )) может ты ченить в коде закоментировал. ))
 

TheBoss

Client
Регистрация
30.03.2015
Сообщения
529
Благодарностей
193
Баллы
43
Спасибо вам ребятки за багрепорты.
Внес исправления этих багов :-)
Так как редактировать стартПост не могу то приложу обновленную 100% реализацию системы.
1. Без использования локальной лицензии - СвояСистемаЛицензированияШаблонов.xmlz
2. Версия которая хранит локально фаил сессии шаблона и запрашивает обновление у сервера через указанный вами промежуток - СвояСистемаЛицензированияШаблоновV2.xmlz

Привет! Можешь, пожалуйся доработать систему? К примеру в шаблоне есть модули и каждый лицензируется отдельно. Как выход вижу такое решение, добавить еще одно поле в таблице и туда прописывается ключ, который я сам рандомно придумаю. и также клиент в входных настройках, в шабе прописывает этот же ключ. Т.е. таким образом мы сможем проверять лицензию не только всего шаба но и отдельных модулей. Можешь код доработать пожалуйста? Могу доплатить не много....
 

TheBoss

Client
Регистрация
30.03.2015
Сообщения
529
Благодарностей
193
Баллы
43
Привет! Можешь, пожалуйся доработать систему? К примеру в шаблоне есть модули и каждый лицензируется отдельно. Как выход вижу такое решение, добавить еще одно поле в таблице и туда прописывается ключ, который я сам рандомно придумаю. и также клиент в входных настройках, в шабе прописывает этот же ключ. Т.е. таким образом мы сможем проверять лицензию не только всего шаба но и отдельных модулей. Можешь код доработать пожалуйста? Могу доплатить не много....
Тут все разобрался... подтягивать мейл теперь нет смысла с реестра, т.к. зеннолаб в одном из обновлений ввели маскировку мейла клиентов своим ид... и получается, что у многих клиентов - в реестре не их мейл, а как раз ид.
Решается это замены строки:

string mail = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("SOFTWARE\\ZennoLab").GetValue("login").ToString();

на

string mail = project.ExecuteMacro("{-Environment.CurrentUser-}");

Также скрипт не работает с зеннобоксом, только с зеннопостером. Надеюсь автор подправит)
 

zortexx

Client
Регистрация
19.09.2011
Сообщения
2 520
Благодарностей
1 221
Баллы
113
Тут все разобрался... подтягивать мейл теперь нет смысла с реестра, т.к. зеннолаб в одном из обновлений ввели маскировку мейла клиентов своим ид... и получается, что у многих клиентов - в реестре не их мейл, а как раз ид.
Решается это замены строки:

string mail = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("SOFTWARE\\ZennoLab").GetValue("login").ToString();

на

string mail = project.ExecuteMacro("{-Environment.CurrentUser-}");

Также скрипт не работает с зеннобоксом, только с зеннопостером. Надеюсь автор подправит)
Какой смысл в исправлениии шаблона, предназначенного для разработчиков?
 

TheBoss

Client
Регистрация
30.03.2015
Сообщения
529
Благодарностей
193
Баллы
43
Какой смысл в исправлениии шаблона, предназначенного для разработчиков?
А какой смысл в вашем вопросе?

Нужно полагать, что уровень у всех разный и глядя на любой топик, и это тв том числе увидите что вопросов куча у других разработчиков. НА ЭТО ОНО И СООБЩЕСТВО! Так почему бы не поделать скрипт, чтобы он и в боксе работал...
 
  • Спасибо
Реакции: Adigen

zortexx

Client
Регистрация
19.09.2011
Сообщения
2 520
Благодарностей
1 221
Баллы
113
А какой смысл в вашем вопросе?
  1. Разработчики вполне способны подправить шаблон самостоятельно, наче грош им цена как разработчикам.
  2. Разработчик обладает возможностью запускать шаблон в ZP.
Так доступнее?
 

zortexx

Client
Регистрация
19.09.2011
Сообщения
2 520
Благодарностей
1 221
Баллы
113
А какой смысл в вашем вопросе?

Нужно полагать, что уровень у всех разный и глядя на любой топик, и это тв том числе увидите что вопросов куча у других разработчиков. НА ЭТО ОНО И СООБЩЕСТВО! Так почему бы не поделать скрипт, чтобы он и в боксе работал...
Зачем?
Снимите видео как вы в боксе что-то разрабатываете. Полагаю это тут многих заинтригует.
 

TheBoss

Client
Регистрация
30.03.2015
Сообщения
529
Благодарностей
193
Баллы
43
  1. Разработчики вполне способны подправить шаблон самостоятельно, наче грош им цена как разработчикам.
  2. Разработчик обладает возможностью запускать шаблон на в ZP.
Так доступнее?
Уважаемый, мне понятна ваша надменная логика, все же не все, как вы родились разработчиком сразу с супер знаниями и званием мегаразраб!
Полагаю, что лично вас никто не о чем тут не просил, верно? Поэтому вы, великий программист, можете спокойно заняться своими делами.

Есть конкурсная статья , есть факт не работы в боксе... разработчику данного скрипта написал, с вами же нет у меня желания вступать в дискуссии бесполезные.
 

TheBoss

Client
Регистрация
30.03.2015
Сообщения
529
Благодарностей
193
Баллы
43
Зачем?
Снимите видео как вы в боксе что-то разрабатываете. Полагаю это тут многих заинтригует.
Складывается ощущение, что вы несете какую то херню. При чем тут видео о том, как я разрабатываю чего то там в боксе? Вы серьезно? Вы бы хоть удосужились почитать данный топик.
 

zortexx

Client
Регистрация
19.09.2011
Сообщения
2 520
Благодарностей
1 221
Баллы
113
Уважаемый, мне понятна ваша надменная логика, все же не все, как вы родились разработчиком сразу с супер знаниями и званием мегаразраб!
Полагаю, что лично вас никто не о чем тут не просил, верно? Поэтому вы, великий программист, можете спокойно заняться своими делами.

Есть конкурсная статья , есть факт не работы в боксе... разработчику данного скрипта написал, с вами же нет у меня желания вступать в дискуссии бесполезные.
Да ладно, не принимаййте мои вопросы так близко к сердцу. Но, имхается мне, что автора этого шаблона проблемы барыг тоже мало интересуют :-)

Удачи.
 

TheBoss

Client
Регистрация
30.03.2015
Сообщения
529
Благодарностей
193
Баллы
43
Да ладно, не принимаййте мои вопросы так близко к сердцу. Но, имхается мне, что автора этого шаблона проблемы барыг тоже мало интересуют :-)

Удачи.
Давайте автор сам за себя пусть решает, великий вы всезнайчетый сувака своего мнения. И тут нет барыг... это так, чтобы не путали.
 

zortexx

Client
Регистрация
19.09.2011
Сообщения
2 520
Благодарностей
1 221
Баллы
113

TheBoss

Client
Регистрация
30.03.2015
Сообщения
529
Благодарностей
193
Баллы
43

zortexx

Client
Регистрация
19.09.2011
Сообщения
2 520
Благодарностей
1 221
Баллы
113
скорее не сунул, а надкусил...
Какие у вас занятные проекции. Выдают ваши наклонности с потрохами.
Но не переживайте, мы никому не скажем. Все сами всё увидят и сделают выводы ;-)

Еще раз удачи, её вам явно не хватает :-))))))
 
  • Спасибо
Реакции: TheBoss

TheBoss

Client
Регистрация
30.03.2015
Сообщения
529
Благодарностей
193
Баллы
43
Какие у вас занятные проекции. Выдают ваши наклонности с потрохами.
Но не переживайте, мы никому не скажем. Все сами всё увидят и сделают выводы ;-)

Еще раз удачи, её вам явно не хватает :-))))))
Вывод тут один: вы надменный
Тут все разобрался... подтягивать мейл теперь нет смысла с реестра, т.к. зеннолаб в одном из обновлений ввели маскировку мейла клиентов своим ид... и получается, что у многих клиентов - в реестре не их мейл, а как раз ид.
Решается это замены строки:

string mail = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("SOFTWARE\\ZennoLab").GetValue("login").ToString();

на

string mail = project.ExecuteMacro("{-Environment.CurrentUser-}");

Также скрипт не работает с зеннобоксом, только с зеннопостером. Надеюсь автор подправит)

Автор подсказал решение, дабы система лицензирования работала в боксе. Все оказалось просто: название шаба, и мейл нужно писать в нижнем регистре)) Автору спасибо!
 

zortexx

Client
Регистрация
19.09.2011
Сообщения
2 520
Благодарностей
1 221
Баллы
113

Mikhail B.

Moderator
Регистрация
23.12.2014
Сообщения
14 304
Благодарностей
5 421
Баллы
113
Автор выходит на связь? На сколько я понимаю, он как пропал летом так и тишина.
 

TheBoss

Client
Регистрация
30.03.2015
Сообщения
529
Благодарностей
193
Баллы
43

BigJeff

Client
Регистрация
22.09.2016
Сообщения
16
Благодарностей
1
Баллы
3
Получаю в лог ошибку, что не так делаю?
Ashampoo_Snap_10 октября 2018 г._11h02m42s_007_.png
 

BigJeff

Client
Регистрация
22.09.2016
Сообщения
16
Благодарностей
1
Баллы
3
Предполагаю, что в OwnCodeUsing нужно тоже настроить?
Код:
[*]namespace ZennoLab.OwnCode
[*]{
[*]

[*]    public class zCrypto
[*]   {
[*]       static readonly string PasswordHash = "P@@Sw0rd";
[*]       static readonly string SaltKey = "S@LT&KEY";
[*]       static readonly string VIKey = "@1B2c3D4e5F6g7H8";
Что тут нужно прописать?
 

WebBot

Client
Регистрация
04.04.2015
Сообщения
1 713
Благодарностей
1 370
Баллы
113

WebBot

Client
Регистрация
04.04.2015
Сообщения
1 713
Благодарностей
1 370
Баллы
113

BigJeff

Client
Регистрация
22.09.2016
Сообщения
16
Благодарностей
1
Баллы
3
это не ошибка, это остановка проекта так в PM выглядит ... в ZP запустите
Ага Всё верно ;-)
просто замените значения PasswordHash, SaltKey, VIKey на свои ... на любую комбинацию символов
Параметр
Код:
static readonly string SaltKey = "S@LT&KEY";
Нужно менять до &KEY?
И у меня не решён вопрос с
Большая разница во времени между клиентом и сервером!
Вернее не понял как она решается
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)