Jump to content
Sign in to follow this  
sasha181

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

Recommended Posts

СМС шлюз (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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

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

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

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

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

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

  • +1 1

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

{PHONE}

{CLIENTFIRSTNAME}

{CLIENTLASTNAME}VASH ZAKAZ {ID}

{FULLITEMS} NA SUMMY {SUM}RUB.

{DATE}{TIME}PRINYAT.

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

  // 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}

Share this post


Link to post
Share on other sites

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

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

catalog/model/checkout/order.php

и

vqmod/vqcache/vq2-catalog_model_checkout_order.php

Share this post


Link to post
Share on other sites

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

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

Share this post


Link to post
Share on other sites

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

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

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

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

Тестируйте.

Share this post


Link to post
Share on other sites

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

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

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

Тестируйте.

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

Share this post


Link to post
Share on other sites

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

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

Share this post


Link to post
Share on other sites

Может у Вас 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;
}
}
?>

Share this post


Link to post
Share on other sites

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

РЕШИЛ :)

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 весьма оправданное дополнение. Иначе Вы так устанете переносить изменения когда-нибудь от версии к версии.

Share this post


Link to post
Share on other sites

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

Спасибо!

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

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

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

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

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

  • +1 3

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.