Перейти к содержанию
sasha181

[Поддержка] СМС шлюз (25 коп с первой смс) smscab.ru

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

СМС шлюз (25 коп с первой смс) smscab.ru


СМС шлюз (25 коп с первой смс) smscab.ru


Самый обычный смс гейт с возможностью подставить любое имя отправителя (11 символов латиницей)

25 коп. с первой смс без всяких выкупов пакетов.

Есть также расширенная бесплатная версия данного шлюза

Имейте в виду, персональные настройки для подключения шлюза находятся на странице API http://cabinet.smscab.ru/bulk/api/#smpp

Оттуда Вам понадобятся значение Пароль на SMS шлюз (поле password), не путайте с паролем при регистрации.

Логин - номер телефона при регистрации.


  • Добавил
  • Добавлено
    01.02.2013
  • Категория
  • Системные требования
  • Сайт разработчика
  • Старая цена
  • Метод активации
  • Ioncube Loader
  • OpenCart
  • ocStore
  • OpenCart.Pro, ocShop

 

  • +1 1

Поделиться сообщением


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

Подскажите как настроить в админке параметры для данного модуля?

Поделиться сообщением


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

респект автору, шлюз работает, настроил все за 15 мин

имейте в виду, персональные настройки для подключения шлюза находятся на странице API http://cabinet.smscab.ru/bulk/api/

оттуда Вам понадобятся значение Пароль на SMS шлюз:, не путайте с паролем при регистрации

логин - номер телефона при регистрации

смс-ки приходят моментально, только кнопку нажал офрмить заказ и сразу у тебя

остается открытым вопрос, как продублировать месседж клиенту ????

  • +1 1

Поделиться сообщением


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

Разобрался спасибо) поддерживаю gree, очень нужно

Поделиться сообщением


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

Подскажите, на Вашем скриншоте нарисовано :

{PHONE}

{CLIENTFIRSTNAME}

{CLIENTLASTNAME}VASH ZAKAZ {ID}

{FULLITEMS} NA SUMMY {SUM}RUB.

{DATE}{TIME}PRINYAT.

, плагин {FULLITEMS} - товар который заказали поддерживает или нет?

Поделиться сообщением


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

Если честно, скрин просто скопировал с соседней темы, т.к. не было времени искать что-то особое. Не заметил правда, что он несёт смысловую нагрузку. Скрин сменил, но и выложил новую версию, которая уже умеет слать копию клиенту. Доп. поля будут чуть позже. Давайте пока протестим выложенную бетку с отправкой смс клиенту.

Поделиться сообщением


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

Все работает, но одно но. Почему то Админу на каждый номер шлется две одинаковые смски, а клиенту как положена одна. ocstore Version 1.5.3.1

Поделиться сообщением


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

Да админу приходит 2 одинаковых смс, клиентское смс 1 как нужно, других ошибок не наблюдается

Поделиться сообщением


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

а поле адрес и название товара появится ? )

Поделиться сообщением


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

  // Send Admins SMS if configure
  if ($this->config->get('config_sms_alert')) {
		    $ext = array(
			  'order_info' => $order_info,
			  'config_sms_alert_client' => $this->config->get('config_sms_alert_client')
		    );
   $options = array(
 'to'	   => $this->config->get('config_sms_to'),
 'copy'	 => $this->config->get('config_sms_copy'),
 'from'	 => $this->config->get('config_sms_from'),
 'username' => $this->config->get('config_sms_gate_username'),
 'password' => $this->config->get('config_sms_gate_password'),
 //'message'  => $order_info['telephone'],
 'message'  => str_replace(array('{ID}', '{DATE}', '{TIME}', '{SUM}', '{PHONE}'),
		 array($order_id, date('d.m.Y'), date('H:i'), floatval($order_info['total']), $order_info['telephone']),
		 $this->config->get('config_sms_message')),
 'ext'	  => $ext
   );
   $this->load->library('sms');
   $sms = new Sms($this->config->get('config_sms_gatename'), $options);
   $sms->send();
  }
}

} - лишняя вконце.

Жду письмо. Зарегистрировался.

Допустимые тэги из кода не сложно посмотреть:

{ID}

{DATE}

{TIME}

{SUM}

{PHONE}

Поделиться сообщением


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

Да админу приходит 2 одинаковых смс, клиентское смс 1 как нужно, других ошибок не наблюдается

Странно. Такого быть не должно теоретически. Выложите пожалуйста содержимое 2-х файлов (или пришлите в ЛС), чтобы проверить, как отработал vqmod

catalog/model/checkout/order.php

и

vqmod/vqcache/vq2-catalog_model_checkout_order.php

Поделиться сообщением


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

} - лишняя вконце.

Может у Вас 2 vqmod патча наложились? У меня этой скобки нету. В архивах для скачивания тоже.

Поделиться сообщением


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

а поле адрес и название товара появится ? )

Адрес пока смотрю нужен только Вам.

Обновил до версии 0.3. Пока не разберёмся с дублем администратору, также в стадии теста.

Там как раз добавил {CLIENTFIRSTNAME} , {CLIENTLASTNAME} и {FULLITEMS}

Тестируйте.

Поделиться сообщением


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

Адрес пока смотрю нужен только Вам.

Обновил до версии 0.3. Пока не разберёмся с дублем администратору, также в стадии теста.

Там как раз добавил {CLIENTFIRSTNAME} , {CLIENTLASTNAME} и {FULLITEMS}

Тестируйте.

НУ представьте, как было бы удобно если б в смс входило : адрес, перечень купленного товара, номер телефона и имя клиента, больше я думаю ничего не нужно =) тогда можно было б сходу ехать к клиенту с товаром, не заходя в админку магазина или на почту.

Поделиться сообщением


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

Может у Вас 2 vqmod патча наложились? У меня этой скобки нету. В архивах для скачивания тоже.

Не ) у меня не установлен vq. Все коды я руками рою.

Поделиться сообщением


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

Может у Вас 2 vqmod патча наложились? У меня этой скобки нету. В архивах для скачивания тоже.

Прошу прощения, но у меня, возможно, наипростейший вопрос: надо самый первый вариант Вашего модуля заставить отправлять смс не админу, а покупателю!

РЕШИЛ :)

order.php

   	 // Send Admins SMS if configure
		if ($this->config->get('config_sms_alert')) {
	   	 $ext = array(
			  'order_info' => $order_info,
			);
			$options = array(
				'to'	   => $this->config->get('config_sms_to'),
				'copy'	 => $this->config->get('config_sms_copy'),
				'from'	 => $this->config->get('config_sms_from'),
				'username' => $this->config->get('config_sms_gate_username'),
				'password' => $this->config->get('config_sms_gate_password'),
				'message'  => str_replace(array('{ID}', '{DATE}', '{TIME}', '{SUM}', '{PHONE}'),
										  array($order_id, date('d.m.Y'), date('H:i'), floatval($order_info['total']), $order_info['telephone']),
										  $this->config->get('config_sms_message')),
				'ext'	  => $ext
			);

			$this->load->library('sms');

			$sms = new Sms($this->config->get('config_sms_gatename'), $options);
			$sms->send();
		}

smscab.php

<?php
final class SmsCab extends SmsGate {
public function send() {
	$results = array();
	$this->copy .= ','.$this->ext['order_info']['telephone'];
	$data = array(
		"login" => $this->username,
		"password" => $this->password,
		"space_force" => 1,
		"space" => $this->from,
		"subno" => "%2B".$this->validatePhone($this->to),
		"text" => urlencode($this->message)
	);
	$results[] = $this->process($data);
	if ($this->copy) {
		$phones = explode(',', str_replace("\n", ',', $this->copy));
		foreach($phones as $phone) {
			if(trim($phone) != "") {
				$data['subno'] = "%2B".trim($phone);
				$results[] = $this->process($data);						
			}
		}
	}
	return $results;
}
private function process($data) {
	$get = '';
	foreach($data as $key=>$val) {
		$get .= "$key=$val&";
	}
	$url = 'http://cabinet.smscab.ru/smsout.php?'.$get;
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_URL, $url);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt($ch, CURLOPT_FAILONERROR, 1);
	$result = curl_exec($ch);
	curl_close($ch);
	return $result;
}

function validatePhone($phone) {
	$phone = preg_replace('/\D+/', '', $phone);
//		$phone = preg_replace('/^(7|8)/', '7', $phone);
	return $phone;
}
}
?>

Поделиться сообщением


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

Прошу прощения, но у меня, возможно, наипростейший вопрос: надо самый первый вариант Вашего модуля заставить отправлять смс не админу, а покупателю!

РЕШИЛ :)

order.php

   	 // Send Admins SMS if configure
		if ($this->config->get('config_sms_alert')) {
	   	 $ext = array(
			  'order_info' => $order_info,
			);
			$options = array(
				'to'	   => $this->config->get('config_sms_to'),
				'copy'	 => $this->config->get('config_sms_copy'),
				'from'	 => $this->config->get('config_sms_from'),
				'username' => $this->config->get('config_sms_gate_username'),
				'password' => $this->config->get('config_sms_gate_password'),
				'message'  => str_replace(array('{ID}', '{DATE}', '{TIME}', '{SUM}', '{PHONE}'),
										  array($order_id, date('d.m.Y'), date('H:i'), floatval($order_info['total']), $order_info['telephone']),
										  $this->config->get('config_sms_message')),
				'ext'	  => $ext
			);

			$this->load->library('sms');

			$sms = new Sms($this->config->get('config_sms_gatename'), $options);
			$sms->send();
		}

smscab.php

<?php
final class SmsCab extends SmsGate {
public function send() {
	$results = array();
	$this->copy .= ','.$this->ext['order_info']['telephone'];
	$data = array(
		"login" => $this->username,
		"password" => $this->password,
		"space_force" => 1,
		"space" => $this->from,
		"subno" => "%2B".$this->validatePhone($this->to),
		"text" => urlencode($this->message)
	);
	$results[] = $this->process($data);
	if ($this->copy) {
		$phones = explode(',', str_replace("\n", ',', $this->copy));
		foreach($phones as $phone) {
			if(trim($phone) != "") {
				$data['subno'] = "%2B".trim($phone);
				$results[] = $this->process($data);						
			}
		}
	}
	return $results;
}
private function process($data) {
	$get = '';
	foreach($data as $key=>$val) {
		$get .= "$key=$val&";
	}
	$url = 'http://cabinet.smscab.ru/smsout.php?'.$get;
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_URL, $url);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt($ch, CURLOPT_FAILONERROR, 1);
	$result = curl_exec($ch);
	curl_close($ch);
	return $result;
}

function validatePhone($phone) {
	$phone = preg_replace('/\D+/', '', $phone);
//		$phone = preg_replace('/^(7|8)/', '7', $phone);
	return $phone;
}
}
?>

Вы всё верно сделали, но поверьте, vqmod весьма оправданное дополнение. Иначе Вы так устанете переносить изменения когда-нибудь от версии к версии.

Поделиться сообщением


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

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

Спасибо!

Поделиться сообщением


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

попробовал третью версию, оформленияе заказа не происходит до конца из за файла xml, ( vqmod у меня есть) . файл удалил магазин снова работает .

Поделиться сообщением


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

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

Поделиться сообщением


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

Я руками заворачивал, без vq мода, отправляет как надо. Xml файл слеплен не правильно. Автор разберется. Там, по моему один массив дублируется.

Поделиться сообщением


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

Выложил версию 0.3.2

Исправлены ошибки с дублированием. Причина была действительно в допущенной ошибке в xml файле. Исправлено.

Исправлены другие ошибки в версии 0.2 , 0.3 и 0.3.1

Протестировал на opencat 1.5.4 - полёт нормальный

Думаю, на этом с ошибками покончено ))

  • +1 3

Поделиться сообщением


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

Спасибо, после обновления всё прекрасно работает. И маленькая идея - настройка письма для админа есть а почему не сделать и настройку присылаемого письма покупателю, то есть два разных письма, достаточно удобно если нет необходимости покупателю сообщать его же номер телефона) Ещё раз спасибо.

Поделиться сообщением


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.