Авто уведомление на почту или смс на мобильный при приходе заказа Битрикс и проверка если заказ проверочный от Яндекс, Часто бывает что требуется получать смс о поступлении заказа, либо уведомление о проверке Яндекс маркет
Авто уведомление на почту или смс на мобильный при приходе заказа Битрикс и проверка если заказ проверочный от Яндекс, Часто бывает что требуется получать смс о поступлении заказа, либо уведомление о проверке Яндекс маркет, Авто уведомление на почту или смс на мобильный при приходе заказа Битрикс и проверка если заказ проверочный от Яндекс, Часто бывает что требуется получать смс о поступлении заказа, либо уведомление о проверке Яндекс маркет
Авто уведомление на почту или смс на мобильный при приходе заказа Битрикс и проверка если заказ проверочный от Яндекс, Часто бывает что требуется получать смс о поступлении заказа, либо уведомление о проверке Яндекс маркет
Уведомление по смс, или на почту при поступлении заказа простым кодом, конечно есть множество модулей которые чаще платные или просто без условно шлют вам смс.
В нашем случае мы можем проверять что именно за заказ и слать уведомления только в случае если заказ проверочный от яндекса
обычно яндекс присылает чтото такое в комментариях:
Это контрольный заказ Яндекс.Маркета: мы проверяем, вовремя ли вы отвечаете на заказы. Чтобы пройти проверку, в течение часа пришлите на inga.pertrova@yandex.ru код fhEy9i weC228sV, но удалите из него пробел, добавьте комментарий, например «Код проверки», и укажите тему письма. Если заказ поступил в нерабочее время, отправьте письмо, когда магазин откроется — в течение первого рабочего часа. Подробности: https://yandex.ru/support/partnermarket/quality/critical-mistakes.html#order__check-code
можно было бы конечно сразу автоматически или с задержкой слать код проверки, но мы оставим это для совсем ленивых.
открываем init.php
добавляем функцию yandex_check для обработки которая будет слать смс и писать вам на почту в случае если в комментарии заказа указано что заказ проверочный.
Код
Код
function Yandex_check($zakaz)
{
$mail="vashapochta@mail.ru"; // ваша почта
$subject ="Проблема с заказом №".$zakaz ; // тема письма
$texto='Внимание заказ №'.$zakaz.' проверочный, срочно проверить и обработать в течении часа!';
$order = \Bitrix\Sale\Order::load($zakaz); // объект заказа
$order->getFields(); // получение полей заказа
$desc=$order->getField("USER_DESCRIPTION"); // получение комментария
if (stristr ( $desc , "пройти проверку")) {
// если находим слова "пройти проверку" то считаем что заказ сделал яндекс и выполняем два действия
//отправляем почту на ваш_емейл"майл.ру
if( mail($mail, $subject, $texto ) )
{
echo 'Успешно отправлено!'; }
else{
echo 'Отправка не удалась!';
}
// если вы зарегистрированы на sms.ru то можете сразу и смс отправлять.
Код
require_once '/home/bitrix/www/include/sms.ru.php'; // проверьте путь и скачайте последнюю версию с sms.ru
$smsru = new SMSRU(' сюда вставьте ключ из SMS.ru'); // Ваш уникальный программный ключ, который можно получить на главной странице
$data = new stdClass();
$data->to = '7911388838,730030300'; // через запятую перечень телефонов для отправки.
$data->text = $texto; // Текст сообщения в СМС
// $data->from = ''; // Если у вас уже одобрен буквенный отправитель, его можно указать здесь, в противном случае будет использоваться ваш отправитель по умолчанию
// $data->time = time() + 7*60*60; // Отложить отправку на 7 часов
// $data->translit = 1; // Перевести все русские символы в латиницу (позволяет сэкономить на длине СМС)
//для начала можно попробовать тест, но для реальной отправки надо будет закомментировать строку ниже
$data->test = 1; // Позволяет выполнить запрос в тестовом режиме без реальной отправки сообщения
// $data->partner_id = '1'; // Можно указать ваш ID партнера, если вы интегрируете код в чужую систему
$sms = $smsru->send_one($data); // Отправка сообщения и возврат данных в переменную
//дальше можно удалить нужно только для debug
if ($sms->status == "OK") { // Запрос выполнен успешно
echo "Сообщение отправлено успешно. ";
echo "ID сообщения: $sms->sms_id. ";
echo "Ваш новый баланс: $sms->balance";
} else {
echo "Сообщение не отправлено. ";
echo "Код ошибки: $sms->status_code. ";
echo "Текст ошибки: $sms->status_text.";
}
}
}
Осталась мелочь, добавить обработчик получающий ID заказа в момент его создания и запускающий нашу функцию:
Следует убедится что у вас уже нет события ModifyOrderSaleMails