Как я могу подсчитать использование каждой пользовательской функции для пользователя надстройки

Я сделал надстройку с пользовательской функцией, которая вызывает API. Мой план таков: когда пользователь устанавливает дополнение, я даю ему 20 бесплатных звонков. Могу ли я учитывать каждое использование пользовательской функции на стороне сервера?

UPD: Нашел решение. Сегодня я настроил функцию для изменения количества вызовов, отправляющих каждый вызов в Firebase. Эта статья очень помогла во всем разобраться.


person Igor Stefurak    schedule 18.02.2018    source источник
comment
можно использовать счетчик после аутентификации в серверной функции.   -  person Aryan Firouzian    schedule 19.02.2018
comment
Лучше всего хранить эти данные в отдельной базе данных. Однако вы также можете попытаться сохранить эту информацию в PropertiesService's UserProperty (не рекомендуется из-за ограниченного хранилища пробел.)   -  person Chris    schedule 19.02.2018
comment
@AryanFirouzyan, не могли бы вы показать мне какие-нибудь примеры?   -  person Igor Stefurak    schedule 20.02.2018
comment
@ChrisWI попытался сохранить его в UserProperty, но получил много ошибок (Служба вызывалась слишком много раз за короткое время: свойства. Попробуйте Utilities.sleep(1000) между вызовами.). Даже Utilities.sleep(1000) не помогает.   -  person Igor Stefurak    schedule 20.02.2018
comment
@IgorStefurak Под пользовательской функцией вы имеете в виду функции, которые будут использоваться в формулах Google Sheets?   -  person Rubén    schedule 20.02.2018
comment
@ Рубен да, точно   -  person Igor Stefurak    schedule 21.02.2018


Ответы (1)


Сценарий Google Apps не может подсчитывать использование пользовательских функций для каждого пользователя, поскольку они выполняются анонимно.

Ссылка

person Rubén    schedule 18.02.2018
comment
Я уже реализовал подсчет с помощью UserProperty. Но возникает ошибка «Служба вызывается слишком много раз за короткое время: свойства», когда слишком много пользователей. - person Igor Stefurak; 20.02.2018
comment
@IgorStefurak Эту проблему следует опубликовать как новый вопрос. - person Rubén; 20.02.2018