DiMaker DiMaker В чём разница?

Интеграция с GetCourse

Автоматическое создание и рассылка дипломов и сертификатов из GetCourse после окончания тренинга или вебинара. Ссылка на готовый диплом будет сохранена в данных ученика в GetCourse.

Создание процесса

Чтобы отправлять запросы на создания файлов в DiMaker, необходимо создать процесс в GetCourse. Для этого нужно открыть "Задачи" - "Процессы". Далее - "Создать процесс". Заполнить название и выбрать "Тип объекта" - "Пользователи".

Создание сертификата об прохождении тренинга в GetCourse - создание процесса Окно создания процесса

Далее в процессе, нужно выбрать вкладку "Процесс" и справа "Добавить блок" - "Операция".

Создание сертификата об прохождении тренинга в GetCourse - создание процесса Окно создания процесса - добавление вызова URL

В появившемся окне следует выбрать "Вызвать URL" (самый последний пункт") и нажмите "Сохранить".

Создание сертификата об прохождении тренинга в GetCourse - окно задачи Окно создания процесса - окно задачи

Это основное окно. Нужно выбрать метод POST, а в поле URL укажите строку запроса, которая должна содержать:

  • Адрес запроса - https://dimaker.app/api/v1/create/?
  • Токен API - secure (взять в настройках, в DiMaker)
  • ID документа - doc_id Документ, на основании которого будет выдан сертификат или диплом
  • ID папки - folder_id Папка на Диске, в которую нужно будет положить файл
  • ID письма - mail_id Шаблон письма, который будет использоваться для отправки файла
  • Данные для замены, каждая переменная, начинающиеся с mask_

Вначале рассмотрим все эти данные подробнее, а затем - как в итоге должна выглядет строка запроса.

Переменные

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

Обязательные переменные формы помечены звёздочкой.

  • secure*

    Токен (строка, 36 символов) со страницы "Токены API" в DiMaker

  • doc_id*

    ID документа (строка, 36 символов), который будет использоваться для создания файла. ID можно получить в адресной строке, когда документ открыт. Документ не должен быть в корзине, но может лежать в любой паке Документов.

  • mail_id

    ID шаблона письма (строка, 36 символов) для отправки по электронной почте. ID можно получить в адресной строке, когда шаблон открыт. Если переменная не передана, то письмо отправлено не будет.

  • email_send

    Время, когда отправлять письмо с файлом. Может принимать следующие значения:
    onfinish - Разослать все письма после создания всех файлов (по-умолчанию)
    oncreate - Отправлять письма сразу же после создания файла. При создании одного файла onfinish и oncreate идентичны.
    timeout - Разослать письма через промежуток времени. В этом случае необходимо передать ещё два параметра:
    email_timeout_value - цифровое значение промежутка, через который отправлять письма, целое значение
    email_timeout_value - единица измерения промежутка. Может принимать значение "m" (минуты), "h" (часы), "d" (дни).
    Либо, для указания точного времени отправки, нужно передать время в формате unix time в email_timeout_timestamp. Если переданы timeout и email_timeout_timestamp, то приориет будет у последней.

  • folder_id

    ID папки в Диске (строка, 36 символов) сохранения файлов. Если папки нет, то она будет создана автоматически при создании первого файла.

  • page_id

    Порядковый номер листа (число или строка), если в документе есть несколько листов. Можно передать один номер ( первый лист - 0), или номера (через запятую) листов, которые нужно использовать для создания файла.

  • result

    Определяет в каком виде возвращать результат. Может принимать значения:

    • Значение отсутствует. Будет возвращена JSON-строка с результатом запроса (см. ниже)
    • link. При успешном запросе будет возвращена строка, содержащая ссылку на созданный файл (если в запросе было создание нескольких файлов, то ссылку на первый). Для получения самого файла нужно обратиться по указанной ссылке. На подготовку самих файлов требуется время - от 1 до 5 секунд на каждый файл. До того, как файл будет создан, запрос по этому адресу будет возврашать ошибку 404. Если запрос не привёл к созданию файла, то будет возвращена JSON строка с ошибкой (см. ниже).
    • file. При успешном запросе будет возвращён сам готовый файл (если в запросе было создание нескольких файлов, то только первый). Так как создание файла занимает 1-5 секунд, то возврат произойдёт только после того, как файл будет создан. При большом количестве запросов к API время создание файла будет увеличено. Если файл не будет подготовлен за 30 секунд, то API вернёт ошибку 404 (хотя сам запрос на создание файла в конечном итоге будет исполнен). Если запрос не привёл к созданию файла, то будет возвращена JSON строка с ошибкой (см. ниже). Если ожидается, что запросов к API будет больше, чем 1 запрос в 5 секунд, то не стоит использовать этот параметр.

Переменные

В документе DiMaker должна быть хотя бы одна переменная для замены, например %name или %city. Переменная должна быть написана латиницей. Кирилические %фио или %класс использовать нельзя. Адрес электронной почты - %email.

При составлении URL в процесах имя переменной должно начинаться со слова mask_, и далее - переменная из Документа. Например, если в документе переменная %name, то имя переменной в URL - mask_name, если у документе переменная %city, то имя переменной - mask_city. Указанные для этих переменных данные будут доставлены в Документ в DiMaker при создании файла.

Сами данные можно взять из того, что предоставляет GetCourse, список вот на этой странице (подзаголовок Переменные по объекту «Пользователи»). Значение должно быть в фигурных скобках, с префиксом object., например {object.first_name}

Если необходимо отправлять готовый файл по электронной почте, то следует использовать переменную mask_email, а значение - {object.email}, а если задать имя готового файла - mask_filename.

Таких переменных в документе может быть любое количество. Можно передать в DiMaker любые данные из профиля пользователя в GetCourse, в том числе и из дополнительных полей, чтобы затем их нанести на готовый файл.

Если нужно вставить текущую дату, случайный номер или другие данные - то следует использовать функции.

Составление строки запроса

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

https://dimaker.app/api/v1/create/?mask_name={object.last_name}%20{object.first_name}&mask_city={object.city}&mask_level={object.Уровень}&mask_email={object.email}&doc_id=b75b01cf-c732-49c6-80a0-77dd051a8299&folder_id=5a390b28-9845-4c01-b94a-7d252b115e2e&mail_id=fb5eff48-4c08-4df7-a9e6-29e17896317c&secure=8453bc41-с34у-4ead-80e8-c4e76175a11b

Разберём строку по-порядку:

  • https://dimaker.app/api/v1/create/? - адрес запроса
  • mask_name={object.last_name}%20{object.first_name} - в переменную %name в документе будет подставлены имя и фамилия из профиля в GetCourse. Обратите внимание, что между именем и фамилией нужен пробел. Его обозначение - %20
  • mask_city={object.city} - в переменную %city в документе будет подставлен город из профиля в GetCourse
  • mask_level={object.Уровень} - в переменную %level в документе будет подставлено значение из дополниельного поля "Уровень", из профиля в GetCourse
  • mask_email={object.email} - адрес электронной почты посетителя из профиля в GetCourse
  • doc_id=b75b01cf-c732-49c6-80a0-77dd051a8299 - ID Документа в DiMaker
  • folder_id=5a390b28-9845-4c01-b94a-7d252b115e2e - ID папки в Диске в DiMaker
  • mail_id=fb5eff48-4c08-4df7-a9e6-29e17896317c - ID шаблона письма в DiMaker
  • secure=8453bc41-с34у-4ead-80e8-c4e76175a11b - API секретный код из DiMaker

Между переменными - знак &. Пробелы использовать нельзя. Очень, очень внимательно слудет составить строку, подставив свои данные и не потеряв ни одного символа. После сохранения Задачи, соедените "Начало работы" и "Задачу".

Создание сертификата об прохождении тренинга в GetCourse - процесс Окно создания процесса - процесс

В настройках DiMaker нужно включить приём запросов через API и затем выполните тестирование. Для этого, в GetCourse, там же, в Процессе, нажмите "Тестировать", выберите аккаунт, и поставьте галочку "Выполнять действия по настоящему". Если всё верно, в результате в папке на Диске появится файл диплома или сертификата. Если вы указали mail_id, то файл будет отправлен на электронную почту. Если файл не появился, в окне тестирования будет написана причина, почему запрос не выполнился.

Завершение настройки процеса

Если тестирование успешно, файл создался и все данные подставились, можно завершить настройку процесса. Для этого вернитесь на вкладку "Основные". В панели "Массовое создание задач", укажите "Переодическая проверка", а в "Правило вхождения объекта" - когда срабатывать процессу выдачи сертификата. Например - "Участник трегинга", выберите какой трениг, и "Завершил". В результате, GetCourse будет проверять все посетителей, кто завершил указанный трениг, и, если так оно и есть - запускать указанный процесс. В настройках Тренинга в GetCourse, обязательно укажите когда считать тренинг завершённым. После запуска процесса новые задачи будут добавляться для тех посетителей, кто соответствует условиям поиска. Обратите внимание, что GetCourse делает проверку один раз в 5-15 минут. Это значит, что если посетитель завершил трениг, то сам сертификат он получит в течение 15 минут (DiMaker обрабатывает запро сразу же).

Как сделать, чтобы под процесс не попали все текущие посетители, которым уже выдан диплом через GetCourse или вручную? Там же, в "Правило вхождения объекта", добавьте ещё одно условие, нажав "и", и, например "Дата регистрации", укзав нужную дату, или группу посетителя.

Добавление в группу после выдачи сертификата

Если необходимо, в GetCourse можно создать группу "Сертификат выдан", в "Пользователи" - "Группы" и добавлять всех пользователей в эту группу, кому был выдан сертификат через DiMaker. Для этого, в процессе, после выполнения запроса на URL, добавьте ещё один блок, операцию, "Добавить в группу", и укажите эту группу. Затем свяжите запрос к URL и добавление в групу. В результате, после выполнения запроса посетитель будет добавлен в нужную группу.

Сохранение ссылки на сертификат в профиле пользователя GetCourse

Если необходимо, в GetCourse вы можете сделать сохранение ссылки на диплом или сертификат в профиле пользователя, которому был выдан сертификат. Для этого добавьте дополнительное поле "Сертификат" в "Пользователи" - "Дополнительные поля" - "Добавить поле" - "Строка". Затем, в URL запроса в DiMaker добавьте &result=link, а ниже в том же окне - "Записать результат в доп. поле" и выберите это поле. В результате после запроса ссылка на диплом будет добавлена в профиль посетителя.

Ручное одобрение выдачи сертификатов

Если вы хотите вручную проверять ФИО или другие данные, перед тем как выдать сертификат, то это можно сделать двумя путями.

Путь первый: в процессе, в окне с url поставьте галочку в "Менеджер должен подтвердить запуск". В итоге менеджер должен будет одобрить запуск задачи для конкретного посетителя.

Путь второй: создать три группы "Ожидание сертификата", "Выдать сертификат" и "Сертификат выдан". Затем, в процессах - два процесса. Первый процесс должен срабатывать, когда посетитель заканчивает тренинг и он должен добавляться в группу "Ожидание сертификата", а второй процесс - это запрос в DiMaker, при условии, если посетитель есть в группе "Выдать сертификат". В том же процессе нужно добавить ещё две операции - удаление из группы "Выдать сертификат" и добавление в "Сертификат выдан". В итоге, после прохождения курса посетитель будет добавлен в группу "Ожидание сертификата", затем менеджер должен будет проверить все данные и перенести посетителя в группу "Выдать сертификат". Как только задача будет создана, посетитель будет перемещён в группу "Сертификат выдан".


Другие интеграции