Перейти к содержанию
Официальный форум поддержки Simpla

Модуль SMS оповещения


Рекомендуемые сообщения

Warning: Cannot modify header information - headers already sent by (output started at /home/u17214/simpla.iloveprinter.ru/www/api/smssend.php:1) in /home/u17214/simpla.iloveprinter.ru/www/view/CartView.php on line 127

Warning: Cannot modify header information - headers already sent by (output started at /home/u17214/simpla.iloveprinter.ru/www/api/smssend.php:1) in /home/u17214/simpla.iloveprinter.ru/www/index.php on line 33

 

И у меня пишет тоже самое

Ссылка на сообщение
Поделиться на другие сайты
  • Ответов 238
  • Дата создания
  • Последний ответ

Лучшие авторы в теме

Лучшие авторы в теме

Популярные посты

Предлагаю вашему вниманию бесплатный модуль SMS оповещения от провайдера sms.ru (ссылка реферальная, за переход буду благодарен)   Для установки вам понадобиться:   Шаг 1   Создать файл smssend.php в

Изображения в теме

Очень радует то, что на СМС.ру смски на номер указанный при регистрации - бесплатные!

Небольшой облом... бесплатно, если:

а) до 60 в день

б) зармер отправления не должен привышать 1 смс (до 70 символов кирилицей или до 160 латиницей)

Но это тоже не плохо, о том как экономить мой пост ниже

 

Спосибо большое, все сделал, немного доработал и получилось так:

 

post-1241-0-15775900-1372588064_thumb.jpg

Ссылка на сообщение
Поделиться на другие сайты

А еще можно сэкономить на отправке сообщения для себя любимого (тобишь администратору сайту, менеджеру, в общем тому, кто следит за заказами). Делаем так:

 

$sms_msg = 'Заказ на сумму '.$order->total_price.' р. от '.$order->name;
if (mb_strlen($sms_msg, 'UTF-8') > 70) $sms_msg = mb_substr($sms_msg, 0, 67, 'UTF-8').'...';
$this->smssend->send($this->settings->notify_from_sms, $sms_msg);	

Естественно это из CartView.php

SMS.ru позволяет слать на свой номер (указанный при регистрации) смски бесплатно, НО бесплатно до 60 шт. в день и размер смс не должен привышать 1-ну смску. Следовательно мы:

1. Формируем текст СМС

2. Проверяем его длинну, и если она больше 70 символов (ограничение для смс кириллицей) то урезаем его до 67 символов и добавляем "..." для понимания того, что смс была урезана.

3. Далее шлем это смс

Я подобрал, по моему мнению, самый оптимальный текст. Мы имеем информацию о факте нового заказа, о сумме и что останется - это инфа о клиенте.

 

Если вам необходимо смс уведомление только для себя, то смс.ру можно юзать почти бесплатно :) (ну если у вас заказов менее 60 в день, ну а если уж больше, то можно и не читать этот пост - экономия это низко для вас =))))

Ссылка на сообщение
Поделиться на другие сайты
Gloobus

дак это же бесплатно для одного номера вроде?? или как:?? можно слать до 60 смс на любые номера?))

Ссылка на сообщение
Поделиться на другие сайты

Gloobus

дак это же бесплатно для одного номера вроде?? или как:?? можно слать до 60 смс на любые номера?))

Для одного! Для того, на который вы зарегистрировались! Актуально для мелкого магазина, где ты сам себе директор и продавец и менеджер и разработчик :) У смс.ру сейчас есть группы, рассылка по группам вроде как бесплатная, попробуйти их заюзать, если получится.

Ссылка на сообщение
Поделиться на другие сайты
  • 3 недели спустя...

Текст SMS сообщения какой? Или поле для ввода? Нужно обработчик в файл OrderAdmin.php вносить на POST запрос и добавить форму

Добрый день. Вопрос таков. Как сделать например поле и отправку смс на номер который внесут в это поле. Текст {$product->name|escape}. Пробывал через onclick - не получается  .

<input type="button" value="Отправить" name="ss" onclick="<?php $simpla->smssend->send(телефон,'сообщение'); ?>"></input><br>
Ссылка на сообщение
Поделиться на другие сайты
  • 3 недели спустя...

Спасибо Sheeft!

Отличная наводка!

 

Помогите с усовершенствованием - как сделать, чтобы через 1 час если заказ ещё не оплачен, высылалось бы новое СМС (типа "Ждём оплаты")

Ссылка на сообщение
Поделиться на другие сайты
  • 3 недели спустя...

Сделал, работает! +1 реф

 

Помогите в админке на странице OrdersAdmin рядом с полем примечание сделать еще одно поле. После ввода информации и нажатия СОХРАНИТЬ происходила отправка смс сообщения этому клиенту с этой введеной информацией. 

 

Спасибо!

Ссылка на сообщение
Поделиться на другие сайты

js обработку клика на эту кнопку повесь - и через ajax отправь sms

 

$('.your_button').click(function(){

message = $('.your_field').val();

phone = ...

$.ajax(

url: your_script.php,

data: {phone: phone, text: message},

...

});

 

а в скрипте собственно и сообщение отправите (на всякий пожарный можете еще токен какой запихать)

Ссылка на сообщение
Поделиться на другие сайты

js обработку клика на эту кнопку повесь - и через ajax отправь sms

 

$('.your_button').click(function(){

message = $('.your_field').val();

phone = ...

$.ajax(

url: your_script.php,

data: {phone: phone, text: message},

...

});

 

а в скрипте собственно и сообщение отправите (на всякий пожарный можете еще токен какой запихать)

 

Ниче не понял... :(

Ссылка на сообщение
Поделиться на другие сайты

Ниче не понял... :(

Посмотри как реализована AJAX корзина и сделай по аналогии.

Смотри в файлах: ajax/cart.php, design/default/js/ajax_cart.js, design/default/html/main.tpl.

Ссылка на сообщение
Поделиться на другие сайты

Noxter, спасибо!

Но мне кажется тут другая реализация нужна. Попробую подробно описать что нужно..

Нужно в админке на странице заказа рядом с полем "Примечание" добавить новое поле "Идентификатор почтового отправления (трекномер)" Или же использовать поле примечание с этой целью. Добавленная информация, а именно код почтового отправления должен сохраняться и храниться в этом поле всегда. После того как поле заполнено и нажатии кнопки "Сохранить" происходила отправка СМС сообщения на номер клиента с информацией из этого поля.

Ссылка на сообщение
Поделиться на другие сайты
  • 2 недели спустя...

Подключил, смс администратору приходит. Но перестал направлять на страницу заказа /ordrer

Ни каких изменений кроме предложенных не вносил

Что это может быть?

 

Происходит сразу после действия отправки сообщения администратору. убираю эту строку с кодом отправки - и все нормально.

Хотя сообщение отправляется нормально..

 

Warning: Cannot modify header information - headers already sent by (output started at /home/u17214/simpla.iloveprinter.ru/www/api/smssend.php:1) in /home/u17214/simpla.iloveprinter.ru/www/view/CartView.php on line 127

 

Warning: Cannot modify header information - headers already sent by (output started at /home/u17214/simpla.iloveprinter.ru/www/api/smssend.php:1) in /home/u17214/simpla.iloveprinter.ru/www/index.php on line 33

Вот та же самая фигня... Надо сказать, что в версии симплы 2.2.1 этот модуль работал прекрасно, но после обновления до 2.2.3 перестал. Кто-нить решил проблему?

Ссылка на сообщение
Поделиться на другие сайты

Похоже, у Вашего файла api/smssend.php неверная кодировка. Надо UTF-8 (без BOM).

Если это Вы мне, то кодировка файла правильная.

Ссылка на сообщение
Поделиться на другие сайты

В сообщении об ошибке четко видно, что причина в smssend.php в начальной строке. Если кодировка правильная, то, видимо, в содержании файла...

 

Как ни странно, всё было правильно... NOTE++ показал, что кодировка была UTF-8 без BOM... Переконвертировал в 1251, потом обратно и заработало. Мистика. Или руки не из того места...

Ссылка на сообщение
Поделиться на другие сайты

Кодировка верная. все-равно происходит ошибка при отправке в cartView. 

Не могу понять причины.

Ссылка на сообщение
Поделиться на другие сайты

>В сообщении об ошибке четко видно, что причина в smssend.php в начальной строке. Если кодировка правильная, то, видимо, в содержании файла...

Кодировка  UTF-8 без BOM 

Какая то фигня.

?вот файл. 

 

 

<?php


require_once('Simpla.php');


class SMSSend extends Simpla
{
    public function send($phone,$sms)
    {
    
        $ch = curl_init("http://sms.ru/sms/send");
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
        curl_setopt($ch, CURLOPT_TIMEOUT, 30);
        curl_setopt($ch, CURLOPT_POSTFIELDS, array(


        "api_id"        =>    "************",
        "to"            =>    $phone,
        "text"        =>    iconv("windows-1251","utf-8",$sms)
));
$body = curl_exec($ch);
curl_close($ch); 


return false;


    }
}
 

 

Ссылка на сообщение
Поделиться на другие сайты

Все, разобрался! 

 

В фйле Simpla.php добавил строку 'smssend'    => 'smssend', - smssend было с маленькой буквы. Надо с большой. 

Вот так  'smssend'    => 'Smssend'

 

Ура Ура Ура

Ссылка на сообщение
Поделиться на другие сайты
  • 4 недели спустя...

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

Ссылка на сообщение
Поделиться на другие сайты

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

 

Пользуюсь сервисом bytehand.com, там в личном кабинете есть нечто вроде "Подписи отправителя" где можно задать название от кого будет рассылка.

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...

×
×
  • Создать...