Обновление 2015-02-10: у нас теперь есть встроенная интеграция WebCron, которую мы рекомендуем, так как она более безопасна.

Оптимизация запасов должна быть обычным делом. Однако, наше приложение для прогнозирования запасов Salescast еще не поддерживает нативно запланированные выполнения. Однако, можно получить запланированные выполнения с помощью 15-минутной настройки. Для этого мы собираемся объединить API Salescast, который предлагает программное управление Salescast, с сервисом webcron.

Webcron - это общее название для обозначения приложения, которое ведет себя как онлайн-планировщик задач. Если вы ищете webcron в своем любимом поисковике, вы получите множество компаний-разработчиков программного обеспечения, которые поддерживают такой сервис. В этом посте мы будем использовать setcronjob.com, который поставляется с бесплатным планом подписки (на январь 2015 года), который в значительной степени достаточен для наших нужд.

Таким образом, чтобы получить ежедневное или еженедельное выполнение Salescast, вы должны начать с создания учетной записи на setcronjob.com. Как только у вас есть учетная запись SetCronJob, перейдите на страницу Пользователи в вашей учетной записи Lokad, а затем нажмите кнопку Добавить пользователя. Создание отдельного пользователя Lokad, посвященного webcron, важно для целей безопасности. Lokad предложит вам два варианта, выберите Введите имя пользователя и пароль и продолжайте. Затем вы можете создать нового пользователя с:

  • SetCronJob Robot для полного имени
  • setcronjob@example.com для логина. Вы должны заменить example на фактическое имя домена вашей компании. Не имеет значения, если адрес электронной почты не существует на самом деле.
  • длинный случайный пароль. Просто придерживайтесь цифр и букв для простоты, но сделайте пароль длинным (скажем, 20 символов). Вам не нужно будет фактически вводить этот пароль, поэтому его короткость и практичность не имеют значения.

Нажмите Добавить пользователя, и теперь, когда вы создали отдельного пользователя Lokad, вернитесь на setcronjob.com и войдите в свою учетную запись. Здесь нажмите Создать CronJob. В поле Url to call введите следующий URL (подробнее ниже):

https://setcronjob%40example.com:pwd@salescast2.lokad.com/rest/basicstartrun?folder=fld

Наконец, выберите Каждый день или Каждую неделю в SetCronJob, чтобы запускать Salescast с желаемой частотой. Вы также можете настроить фактическое время дня, когда будет запущен Salescast, если нажмете кнопку Дополнительные параметры.

Составление этого URL немного сложно, давайте рассмотрим детали. Первая часть - setcronjob%40example.com. Обратите внимание, что знак @ в адресе электронной почты заменен на %40. Это потому, что символы в URL должны быть закодированы. На практике латинские буквы и цифры остаются прежними, но более сложные символы, такие как @, заменяются на закодированные эквиваленты.

Вторая часть, которая идет после двоеточия (:), - это pwd. Замените эту часть на свой фактический пароль. Если ваш пароль состоит только из букв и цифр, как предложено выше, то пароль не требует специальной обработки URL-кодирования, поэтому вы можете использовать функцию копировать-вставить.

Наконец, последняя часть fld должна быть заменена на выходную папку вашего проекта Salescast. Выходная папка отображается на странице Salescast. Если ваш проект Salescast загружает файлы из корневой папки, то ваш URL должен заканчиваться просто на ?folder= (без чего-либо после знака =).

Как только вы завершили настройку CronJob, просто запустите его один раз, чтобы убедиться, что он работает. Вы должны увидеть, что Salescast запускается в вашей учетной записи Lokad.

Вы закончили. Поздравляем! Теперь Salescast будет выполняться в соответствии с расписанием.

Однако, имейте в виду: SetCronJob позволяет выбирать частоту выполнения, например, Каждую минуту. Однако, убедитесь, что вы не выбираете частоту для Salescast, которая короче 1 выполнения в день, так как это скорее всего приведет к блокировке вашей учетной записи Lokad. Если это произойдет, просто напишите нам на contact@lokad.com, и мы поможем вам восстановить доступ к вашей учетной записи Lokad.