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

Я так понял если в многопотоке запускать сразу шаб то файл этот забивается и там получается каша
Почему каша то? Каждый поток, при наличии файла, читает файл, проверяет его на условия. Если все ок и период не прошел - то поток идет дальше.

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

Специально чтобы избежать каши в момент отправки запроса шаблон останавливает все потоки. если Ты не вносил изменения в код снипета то такая ситуация не возможна.

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


Ты в дебаггере проверял это поведение?
Не совсем понял. Кубик у меня норм отрабатывает без ошибок , если ты про это )
 
Второй день бьюсь не могу понять в чем трабла.. В таблице забиваю прошедшую дату , шаблон по отрицалке идет. Ставлю актуальную дату идет по положительной. Время проверки лицензии ставлю 1 минуту. Как только прошло по положительной сразу меняю дату на прошедшую , но шаб все равно проходит по положительной ветке. Обращения к гуглу не идет. В чем трабла ?
 
Обращения к гуглу не идет. В чем трабла ?
в твоем случае обращение будет идти с переодичностью 1 минута. по этому если ты изменишь в таблице данные то они будут запрошены только по истечению срока действия сессии.
 
в твоем случае обращение будет идти с переодичностью 1 минута. по этому если ты изменишь в таблице данные то они будут запрошены только по истечению срока действия сессии.
Ну дык я и говорю , поставил минуту и нифига. Как только удаляю файл lic, то идет запрос и потом он уже видит что дата кривая и идет шаблон по красной ветке. Запрос не идет к гуглу пока файл lic в папке , как только удаляешь файл lic то идет , но опять же все по кругу :bn:
 
Так вот этот момент и от дебаж.
Поставь точку останова в снипете и по шагам посмотри от чего не идет запрос )) может ты ченить в коде закоментировал. ))
 
Спасибо вам ребятки за багрепорты.
Внес исправления этих багов :-)
Так как редактировать стартПост не могу то приложу обновленную 100% реализацию системы.
1. Без использования локальной лицензии - СвояСистемаЛицензированияШаблонов.xmlz
2. Версия которая хранит локально фаил сессии шаблона и запрашивает обновление у сервера через указанный вами промежуток - СвояСистемаЛицензированияШаблоновV2.xmlz


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

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

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

на

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

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

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

на

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

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

А какой смысл в вашем вопросе?

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

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

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

Есть конкурсная статья , есть факт не работы в боксе... разработчику данного скрипта написал, с вами же нет у меня желания вступать в дискуссии бесполезные.
 
Зачем?
Снимите видео как вы в боксе что-то разрабатываете. Полагаю это тут многих заинтригует.

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

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

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

Удачи.

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

Еще раз удачи, её вам явно не хватает :-))))))
 
  • Спасибо
Реакции: TheBoss
Какие у вас занятные проекции. Выдают ваши наклонности с потрохами.
Но не переживайте, мы никому не скажем. Все сами всё увидят и сделают выводы ;-)

Еще раз удачи, её вам явно не хватает :-))))))

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

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

на

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

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


Автор подсказал решение, дабы система лицензирования работала в боксе. Все оказалось просто: название шаба, и мейл нужно писать в нижнем регистре)) Автору спасибо!
 
Автор выходит на связь? На сколько я понимаю, он как пропал летом так и тишина.
 
Получаю в лог ошибку, что не так делаю?
Ashampoo_Snap_10 октября 2018 г._11h02m42s_007_.png
 
Предполагаю, что в 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";

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

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