СМС оповещения JoomShopping + SMS
Цель интегрировать СМС оповещения администратора в свой интернет-магазин, работающий на бесплатной связке Joomla + JoomShopping. Задача была следующая – чтобы сразу после заказа администратору магазина сигнализировать о новом заказе.
Итак, что для этого нужно сделать:
1. Качаем наш PHP-класс, реализующий транспортный протокол для отправки СМС-сообщений. (для работы нашего PHP-класса требуется PHP 5 и расширение curl)
2. Создаем в корне вашего сайта папку smsapi
3. Распаковываем содержимое загруженного архива в только что созданную папку smsapi
4. Открываем файл config.php и проводим необходимые настройки: HTTPS_LOGIN - ваш логин для работы через транспорт, HTTPS_PASSWORD – ваш пароль (обычно совпадают с теми, что вы указали при регистрации на нашем сайте. Можно изменить их в настройках личного кабинета). HTTPS_CHARSET – если скрипты на вашем сайте сохранены в кодировке utf-8, не меняем значение HTTPS_CHARSET, если же они сохранены в кодировке Windows-1251, ставим cp1251. Если ваш сервер не поддерживает HTTPS-запросы, поставьте значение флажка USE_HTTPS = 0.
5. В файле /components/com_jshopping/controllers/checkout.php находим //send mail admin и на следующей строчке прописываем код:
//Транспорт для отправки SMS
require_once($_SERVER['DOCUMENT_ROOT'] ."/smsapi/transport.php");
$api = new Transport();
//Отправляем СМС администрации ресурса
if ($admin_send_order){
$params = array("text" =>"Заказ #".$order->order_id." от ".$order->l_name." "
.$order->f_name." тел: ".$order->mobil_phone." на сумму ".$order->order_total);$phones = array("89111234567"); //Ваш номер телефона
$send = $api->send($params,$phones);
}
Все сохраняем и пробуем!
В результате получаем SMS с текстом:
Заказ #1 от Иванова Ивана тел: +7 911 123-4567 на сумму 1300.00
В JoomShopping Version 3.6.1 и выше файл для настройки смс оповещения checkout.php находится
/components/com_jshopping/models/checkout.php
Там же можно и настроить отправку СМС покупателю, если конечно указан мобильный телефон. Для этого в файле checkout.php находим //send mail client и на следующей строчке прописываем код:
//Транспорт для отправки SMS покупателю
require_once($_SERVER['DOCUMENT_ROOT'] ."/smsapi/transport.php");
$api = new Transport();//Отправляем СМС покупателю
if ($admin_send_order){
$params = array("text" =>"Ваш тескт");
$phones = array($order->mobil_phone); //Номер мобильного телефона покупателя
$send = $api->send($params,$phones);
}
Если нужно что бы при смене статуса заказа покупателю приходило уведомление, тогда в файле /administrator/components/com_jshopping/controllers/orders.php ищем:
//message client if ($notify){ $subject = sprintf(_JSHOP_ORDER_STATUS_CHANGE_SUBJECT, $order->order_number); JUtility::sendMail($mailfrom, $fromname, $order->email, $subject, $message, 0);
И ниже вставляем:
/* SMS TO CLIENT ==============================================*/ //Транспорт для отправки SMS require_once($_SERVER['DOCUMENT_ROOT'] ."/smsapi/transport.php"); $api = new Transport(); $params = array("text" =>"Статус заказа № ".$order->order_number." - ".$new_status->$name.". ".$comments." "); $phones = array("+".$order->mobil_phone.""); //Ваш номер телефона $send = $api->send($params,$phones); /* ==================================================*/
Также для организации СМС информирования администратора интернет магазина и Ваших клиентов, вы можете воспользоваться нашим Email обработчиком. Пример представлен здесь