Как публично распространить скрипт Google Apps (обработка почты Gmail)?

Я разработал Скрипт Google Apps для автоматической обработки некоторых писем (подключенных к Gmail), более или менее как бот, и он работает должным образом. Он запускается каждую минуту, используя триггер Time-drivenMinutes timer > Every minute:

Как публично распространить скрипт Google Apps (обработка почты Gmail)?

Можно ли распространять этот «скрипт» для других пользователей (в том числе в коммерческих целях), или он обязательно будет с открытым исходным кодом? (примечание: скрипты Google Apps используют Javascript внутри)

Я вижу Deploy as web app, Deploy as API executable, Register in Chrome Web Store, Deploy as web add-on, Deploy from manifest, но не знаю, какой из них использовать, чтобы предложить эту услугу другим пользователям.

Как публично распространить скрипт Google Apps (обработка почты Gmail)?

Кроме того, обязательно ли это будет на Интернет-магазин Chrome или есть другие способы коммерческого распространения / предоставления доступа клиентам к таким приложениям?

TL; DR: Как распространить среди клиентов скрипт Google Apps, который обрабатывает электронные письма Gmail? (который должен запускаться автоматически каждую минуту).


Примечание. Кажется, надстройки Gmail доступны здесь: https://gsuite.google.com/marketplace/category/works-with-gmail. Но похоже, что мы не можем продавать надстройку на коммерческой основе. Обязательно ли бесплатные надстройки Gmail?

Как публично распространить скрипт Google Apps (обработка почты Gmail)?

Примечание: сценарий нет связан с конкретным браузером или компьютером (поэтому его нельзя установить с расширением браузера на конкретный компьютер), он незаметно запускается на сервере Gmail каждую минуту.

Вы смотрели документацию на Надстройки GMail

Alan Wells 19.05.2018 19:21

Да, @SandyGood, но я вижу много вариантов развертывания в показанном здесь меню, поэтому я не знаю, какой из них выбрать для распространения среди клиентов. Также мне нужно, чтобы скрипт запускался каждые 2 минуты (он проверяет, пришли ли новые электронные письма на определенную метку Gmail), возможно ли это с помощью скрипта / добавления коммерческих приложений?

Basj 19.05.2018 19:26

Единственный вариант - «Развернуть из манифеста». Ни один из остальных вариантов не предназначен для надстройки GMail. Это не веб-приложение. Это не исполняемый файл API. Я считаю, что регистрация в Интернет-магазине Chrome предназначена для веб-приложений как расширений Chrome. Опция «веб-надстройка» не имеет опции для GMail, только Документы, Таблицы, Формы и Презентации. И это определенно не надстройка для Android, поэтому осталось только «Развернуть из манифеста». Публичные надстройки GMail ограничены. Вы должны быть одобрены

Alan Wells 19.05.2018 20:23

@SandyGood Спасибо. Где я могу распространять надстройку Gmail, когда она будет готова? Единственное место, которое я вижу, это: gsuite.google.com/marketplace/category/works-with-gmail. Но похоже, что мы не можем продавать надстройку на коммерческой основе. Обязательно ли бесплатные надстройки Gmail?

Basj 24.05.2018 00:16

Вы можете реализовать платежную систему в надстройке, даже если она рекламируется как бесплатная.

Alan Wells 24.05.2018 00:30

Однако вы, конечно, не можете запускать триггер на основе времени в надстройке чаще, чем один раз в час. Если вам нужен такой уровень запросов, используйте надстройку, чтобы настроить службу cron на вашем сервере для людей, которые вам платят, и с вашего сервера запускайте свои функции через API скриптов приложений. (так далее).

tehhowch 24.05.2018 03:18

@tehhowch Какой тип файла / триггера манифеста используется для запуска надстройки один раз в час? Я просмотрел документ, но не нашел триггера для добавления в файл манифеста, который позволяет запускать каждые x часов. Я нашел только такие вещи, как "contextualTriggers": [{ "unconditional": { }, "onTriggerFunction": "buildAddOn" }]

Basj 28.05.2018 17:42

Для надстроек @Basj Gmail доступен только безусловный триггер, т. Е. Они могут активироваться только тогда, когда пользователь открывает новое сообщение, а затем выбирает надстройку. Другие надстройки (например, Таблицы и Документы) могут использовать триггеры на основе времени. Ссылка: developers.google.com/gmail/add-ons/guides/…

tehhowch 28.05.2018 19:41
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
9
8
1 320
1

Ответы 1

Частичный ответ:

На странице Ограничения о надстройках 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 будет запускаться только пользователем. Если пользователь явно нажимает на универсальное действие.

V.i.K.i 14.03.2019 08:01

Другие вопросы по теме