Commit c5eb77e5a48f9619bc67ef70f3f80df16d3b24bb

Authored by Dmytry Fedorchuk
1 parent d74f0496

SmsSender Component start

Showing 1 changed file with 52 additions and 0 deletions   Show diff stats
common/components/SmsSender.php 0 → 100644
  1 +<?php
  2 +namespace common\components;
  3 +
  4 +use Yii;
  5 +use yii\base\Component;
  6 +use yii\base\ErrorException;
  7 +use yii\helpers\Html;
  8 +use yii\web\Request;
  9 +
  10 +class SmsSender extends Component
  11 +{
  12 +
  13 + public $tel;
  14 + public $text;
  15 +
  16 + public function sendSMS($tel, $text)
  17 + {
  18 +
  19 + $text = iconv('windows-1251', 'utf-8', htmlspecialchars('Заметьте, что когда герой фильма подписывает договор с Сатаной, он не подписывает копию договора и не получает ее.'));
  20 + $description = iconv('windows-1251', 'utf-8', htmlspecialchars('Моя первая рассылка'));
  21 + $start_time = 'AUTO'; // отправить немедленно или ставим дату и время в формате YYYY-MM-DD HH:MM:SS
  22 + $end_time = 'AUTO'; // автоматически рассчитать системой или ставим дату и время в формате YYYY-MM-DD HH:MM:SS
  23 + $rate = 1; // скорость отправки сообщений (1 = 1 смс минута). Одиночные СМС сообщения отправляются всегда с максимальной скоростью.
  24 + $lifetime = 4; // срок жизни сообщения 4 часа
  25 +
  26 + $source = 'extremstyle'; // Alfaname
  27 + $recipient = $tel;
  28 + $user = '380674064008';
  29 + $password = 'smsartweb2012';
  30 +
  31 + $myXML = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n";
  32 + $myXML .= "<request>";
  33 + $myXML .= "<operation>SENDSMS</operation>";
  34 + $myXML .= ' <message start_time="' . $start_time . '" end_time="' . $end_time . '" lifetime="' . $lifetime . '" rate="' . $rate . '" desc="' . $description . '" source="' . $source . '">' . "\n";
  35 + $myXML .= " <body>" . $text . "</body>";
  36 + $myXML .= " <recipient>" . $recipient . "</recipient>";
  37 + $myXML .= "</message>";
  38 + $myXML .= "</request>";
  39 +
  40 + $ch = curl_init();
  41 + curl_setopt($ch, CURLOPT_USERPWD, $user . ':' . $password);
  42 + curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
  43 + curl_setopt($ch, CURLOPT_POST, 1);
  44 + curl_setopt($ch, CURLOPT_URL, 'http://sms-fly.com/api/api.php');
  45 + curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml", "Accept: text/xml"));
  46 + curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  47 + curl_setopt($ch, CURLOPT_POSTFIELDS, $myXML);
  48 + $response = curl_exec($ch);
  49 + curl_close($ch);
  50 +
  51 + }
  52 +}
... ...