Автор дополнения
Александр Филимонов
Пакетов
7
Закачек
1 311
Обычно отвечает более недели
Автор дополнения
Пакетов
7
Закачек
1 311
Обычно отвечает более недели
Версия 1.1.0-rc
Дата выпуска 17.05.2022
Загрузки 254
Просмотры 17 795
Компонент предназначен для автоматической отправки SMS-сообщений при оформлении заказов в интернет-магазине. Умеет отправлять сообщения покупателю, менеджеру(ам), покупателю и менеджеру(ам). Срабатывает при изменении статуса заказа, при этом на какие изменения и как реагировать указывается в панели администратора.

После установки компонента для начала работы с ним нужно:

* зарегистрироваться в одном из поддерживаемых сервисов
* на вкладке Провайдеры указать параметры подключения к сервису
* на вкладке События настроить статусы при установке которых будут отправляться сообщения
* внести средства на счет сервиса рассылки

Настройка провайдера


Для начала нужно зарегистрироваться в одном из поддерживаемых сервисов для рассылки SMS (если еще не зарегистрированы). После регистрации в кабинете сервиса Вы сможете получить параметры для подключения и работы с API, которые необходимо указать в настройках соответствующего провайдера (в виде JSON закодированной строки). Также нужно сделать его активным, для этого поставте галку в поле Активный.


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

На данный момент поддерживаются следующие сервисы SMS рассылок:



Настройка событий



На вкладке «События» приведен список возможных статусов заказа. Данные для него берутся из соответствующей таблицы miniShop2. Если список пуст, либо Вы изменили/удалили/добавили статус, для синхронизации его (списка) нужно нажать кнопку «Обновить список».

На этой вкладке Вы можете настроить кому и когда будут отправляться сообщения, а также что в них будет содержаться.

Например допускаем ситуацию, когда пользователь Евгений Петров сделал заказ на 1000руб. Если нужно чтобы при оформлении заказа отправлялось сообщение покупателю с текстом «Вы совершили покупку в интернет-магазине ExempleShop на сумму 1000руб. Номер Вашего заказа 1403/5. Спасибо за покупку!», и отправлялось сообщение менеджерам с «Пользователь Евгений Петров сделал заказ на сумму 1000руб. Номер заказа 1403/5». Номера менеджеров +7 011 111 11 11 и +7 022 222 22 22. Вам нужно настроить статус «Новый» так, как показано на изображении.



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

В сообщениях можно использовать следующие конструкции {cost}, {order_id}, {order_num}, {customer}, которые будут заменены на данные из заказа — стоимость, id заказа, номер заказа, имя покупателя (receiver) соответственно. Кроме того есть возможность использовать любые другие данные, о том, как это делать читайте ниже.

Для отправки сообщения пользователю компонент будет пытаться получить телефон в следующем порядке:

1. из данных введенных пользователем при оформлении заказа
2. из поля mobilephone в профиле
3. из поля phone в профиле

если телефон не будет определен, или его формат не будет соответствовать требованиям сервиса для рассылки — сообщение отправлено не будет.
Как именно получить от покупателя телефон в нужном формате — это задача которую каждый должен решить самостоятельно.

Журнал


На вкладке «Журнал» хранится информация об отправленных сообщениях. В таблице указываются дата, провайдер на сервис которого было отправлено сообщение, тип адресата (менеджер/покупатель), номер телефона адресата, само сообщение, статус который вернул провайдер обработав запрос с Вашего сайта и последний полученный статус сообщения (обычно провайдеры принимают сообщения в очередь, и отправляют в соответствующем порядке). Для получения данных о текущем статусе нужно нажать правой кнопкой мыши на интересующей строке и выбрать пункт «Запросить статус».

У разных провайдеров статусы отличаются, их описание можно найти на сайте провайдера.

У каждого провайдера есть статусы которые являются финальными, то есть для сообщения с таким статусом уже не может быть повторно запрошен актуальный статус. К таким статусам относятся например статусы доставленного сообщения или сообщения которое было отклонено сервисом из-за ошибки в данных запроса на его отправку (не верный формат номера, оператор адресата не поддерживается сервисом и т. д.). Если Вы попытаетесь повторно получить статус для такого сообщения, то получите сообщение об ошибке «Status of message has been alredy received». Список таких статусов задается в классах отдельных провайдеров.

Использование дополнительных данных в шаблонах сообщений


В шаблонах сообщений может потребоваться использовать данные, которые компонент не подставляет в них (шаблоны сообщений). Для этого можно использовать дополнительную обработка с помощью сниппетов. Эти сниппеты можно указать в системных настройках sms_custom_manager и sms_custom_user в пространстве имён sendsms (для сообщений менеджеру и покупателям соответственно). В сниппет будут переданы следующие параметры:
  • order_id — ID заказа
  • message — сообщение после обработки компонентом

Возвращать сниппет должен сообщение, которое будет отправлено в SMS.

1.1.0-rc (17.05.2022)

  • Added SMSimple support
  • Fixed bugs with error messages in many providers
  • Fixed bugs in UI

1.0.5-beta (06.10.2020)

Added the ability to customize sent messages

1.0.4-beta (06.10.2020)

Added P1sms support

1.0.3-beta (24.07.2018)

Added default values for all placeholders in SMS

1.0.2-beta (18.04.2016)

Removed test log

1.0.1-beta (27.05.2015)

Fixed connection lexicon that has been removed.

Последние обсуждения в сообществе MODX.pro