Я разработал Скрипт Google Apps для автоматической обработки некоторых писем (подключенных к Gmail), более или менее как бот, и он работает должным образом. Он запускается каждую минуту, используя триггер Time-drivenMinutes timer > Every minute:
Можно ли распространять этот «скрипт» для других пользователей (в том числе в коммерческих целях), или он обязательно будет с открытым исходным кодом? (примечание: скрипты Google Apps используют Javascript внутри)
Я вижу Deploy as web app, Deploy as API executable, Register in Chrome Web Store, Deploy as web add-on, Deploy from manifest, но не знаю, какой из них использовать, чтобы предложить эту услугу другим пользователям.
Кроме того, обязательно ли это будет на Интернет-магазин Chrome или есть другие способы коммерческого распространения / предоставления доступа клиентам к таким приложениям?
TL; DR: Как распространить среди клиентов скрипт Google Apps, который обрабатывает электронные письма Gmail? (который должен запускаться автоматически каждую минуту).
Примечание. Кажется, надстройки Gmail доступны здесь: https://gsuite.google.com/marketplace/category/works-with-gmail. Но похоже, что мы не можем продавать надстройку на коммерческой основе. Обязательно ли бесплатные надстройки Gmail?
Примечание: сценарий нет связан с конкретным браузером или компьютером (поэтому его нельзя установить с расширением браузера на конкретный компьютер), он незаметно запускается на сервере Gmail каждую минуту.
Да, @SandyGood, но я вижу много вариантов развертывания в показанном здесь меню, поэтому я не знаю, какой из них выбрать для распространения среди клиентов. Также мне нужно, чтобы скрипт запускался каждые 2 минуты (он проверяет, пришли ли новые электронные письма на определенную метку Gmail), возможно ли это с помощью скрипта / добавления коммерческих приложений?
Единственный вариант - «Развернуть из манифеста». Ни один из остальных вариантов не предназначен для надстройки GMail. Это не веб-приложение. Это не исполняемый файл API. Я считаю, что регистрация в Интернет-магазине Chrome предназначена для веб-приложений как расширений Chrome. Опция «веб-надстройка» не имеет опции для GMail, только Документы, Таблицы, Формы и Презентации. И это определенно не надстройка для Android, поэтому осталось только «Развернуть из манифеста». Публичные надстройки GMail ограничены. Вы должны быть одобрены
@SandyGood Спасибо. Где я могу распространять надстройку Gmail, когда она будет готова? Единственное место, которое я вижу, это: gsuite.google.com/marketplace/category/works-with-gmail. Но похоже, что мы не можем продавать надстройку на коммерческой основе. Обязательно ли бесплатные надстройки Gmail?
Вы можете реализовать платежную систему в надстройке, даже если она рекламируется как бесплатная.
Однако вы, конечно, не можете запускать триггер на основе времени в надстройке чаще, чем один раз в час. Если вам нужен такой уровень запросов, используйте надстройку, чтобы настроить службу cron на вашем сервере для людей, которые вам платят, и с вашего сервера запускайте свои функции через API скриптов приложений. (так далее).
@tehhowch Какой тип файла / триггера манифеста используется для запуска надстройки один раз в час? Я просмотрел документ, но не нашел триггера для добавления в файл манифеста, который позволяет запускать каждые x часов. Я нашел только такие вещи, как "contextualTriggers": [{ "unconditional": { }, "onTriggerFunction": "buildAddOn" }]
Для надстроек @Basj Gmail доступен только безусловный триггер, т. Е. Они могут активироваться только тогда, когда пользователь открывает новое сообщение, а затем выбирает надстройку. Другие надстройки (например, Таблицы и Документы) могут использовать триггеры на основе времени. Ссылка: developers.google.com/gmail/add-ons/guides/…





Частичный ответ:
На странице Ограничения о надстройках Gmail указано, что они не предоставляют прямого способа взимать плату с пользователей за установку надстройки:
We don't provide a way to charge users for installing add-ons, and add-ons can't include ads. However, you can roll your own payment system or call into an existing billing database. Your add-on can connect to non-Google services that bill users.
Однако мне неясно, можно ли запускать фоновую задачу, управляемую по времени (скажем, каждые 15 минут) с помощью надстройки Gmail. С одной стороны, на странице ограничений я вижу:
You can't create or use Apps Script simple or installable triggers in a Gmail add-on.
и запускаемые по времени триггеры, кажется, включены в категорию "простые" или "устанавливаемые", но я не уверен. Например, everyMinutes(n):
Specifies to run the trigger every n minutes. n must be 1, 5, 10, 15 or 30.
ScriptApp.newTrigger("myFunction") .timeBased() .everyMinutes(10) .create();
С другой стороны, я вижу пример здесь с так называемым Universal Actions:
/**
* Run background tasks, none of which should alter the UI.
* Also records the time of sync in the script properties.
*
* @param {Object} e an event object
*/
function runBackgroundSync(e) {
...
Например, runBackgroundSync будет запускаться только пользователем. Если пользователь явно нажимает на универсальное действие.
Вы смотрели документацию на Надстройки GMail