Готовый php скрипт для отправки СМС
С помощью API можно отправлять как одиночные СМС-сообщения, так и осуществлять СМС-рассылку из PHP-скриптов со своих сайтов или CRM-систем.
Используя СМС-шлюз больше нет необходимости утверждать, согласовывать или предварительно создавать в личном кабинете имя отправителя при каждой новой рассылке. Данную функцию удобно использовать в проектах, в которых требуется динамическая смена имени отправителя.
Шаг 1- Регистрация на СМС сервисе
После регистрации в нашем личном кабинете на Вашу электронную почту будет направлен пароль, который необходимо будет использовать в API или создайте себе API KEY в личном кабинете ("Настройки" -> "API и Интеграция"), чтобы не передавать логин и пароль в открытом виде.
Шаг 2 - Скачать библиотеку отправки СМС (PHP-скрипт) и файл примера отправки СМС на PHP
Отправка СМС на PHP осуществляется с помощью нашей библиотеки sms-prosto.ru (смс php), которую Вы можете скачать на нашем сайте, разархивировать архив и сохранить в той же директории, что и сам скрипт.
Шаг 3 - Создать PHP-скрипт отправки СМС на своем сайте
Создайте свой PHP-скрипт отправки СМС-сообщений (пример ниже). Созданный скрипт должен располагаться в одной директории с нашей библиотекой.
Пример отправки SMS PHP:
| 
				 1
			 
				 2
			 
				 3
			 
				 4
			 
				 5
			 
				 6
			 
				 7
			 
				 8
			 
				 9
			 
				 10
			 
				 11
			 
				 12
			 
				 13
			 
				 14
			 
				 15
			 
				 16
			 
				 17
			 
				 18
			 
				 19
			 
				 20
			 
				 21
			 
				 22
			 
				 23
			 
				 24
			 
				 25
			 
				 26
			 
				 27
			 
				 28
			 
				 29
			 
				 30
			 
				 31
			 
				 32
			 
				 33
			 
				 34
			 
				 35
			 
				 36
			 
				 37
			 
				 38
			 
				 39
			 
				 40
			 
				 41
			 
				 42
			 
				 43
			 
				 44
			 
				 45
			 
				 46
			 
				 47
			 
				 48
			 
				 49
			 
				 50
			 
				 51
			 
				 52
			 
				 53
			 
				 54
			 
				 55
			 
				 56
			 
				 57
			 
				 58
			 
				 59
			 
				 60
			 
				 61
			 
				 62
			 
				 63
			 
				 64
			 
				 65
			 
				 66
			 
				 67
			 
				 68
			 
				 69
			 
				 70
			 
				 71
			 | <?php// Пример 1 - отправляем sms сообщение, // совмещая аутентификацию с отправкой сообщения.// в этом примере для аутентификации на сервере используется API KEY// API KEY можно запросить в личном кабинете в разделе "НАСТРОЙКИ" -> "API и Интеграция"// (доступно после активации SMS-шлюза)//--------------------------------------------------------------------require_once "sms-prosto_ru.php";$key = "r5dfgh4341jBH14g";$phone = "7xxxYYYyyzz";// при отправке SMS используется метода push_msg$result = smsapi_push_msg_nologin_key($key, $phone, "Hello world =)!", array("sender_name"=>"user"));var_dump($result);// В результате выполнения запроса Вы получите массив $result, который будет содержать следующие параметры:array(4) {  [0]=>  int(0) // Код ошибки (0 - выполнено успешно, СМС отправлена)  [1]=>  int(1) // Количество частей СМС  [2]=>  string(4) "1.29"// Стоимость  [3]=>  int(8213301) // ID SMS на стороне SMS-шлюза}// Пример 2 - отправляем SMS сообщение, // совмещая аутентификацию с отправкой сообщения.// в этом примере для аутентификации на сервере используется ЛОГИН и ПАРОЛЬ от cервиса//--------------------------------------------------------------------require_once "sms-prosto_ru.php";$email = "user@example.com";$password = "K0kM";$phone = "7xxxYYYyyzz";// при отправке SMS используется метода push_msg$result = smsapi_push_msg_nologin($email, $password, $phone, "Hello world =)!", array("sender_name"=>"user"));var_dump($result);// В результате выполнения запроса Вы получите массив $result, который будет содержать следующие параметры:array(4) {  [0]=>  int(0) // Код ошибки (0 - выполнено успешно, СМС отправлена)  [1]=>  int(1) // Количество частей СМС  [2]=>  string(4) "1.29"// Стоимость  [3]=>  int(8213301) // ID SMS на стороне SMS-шлюза}?> | 
Получение статусов ранее отправленных SMS на PHP:
| 
				 1
			 
				 2
			 
				 3
			 
				 4
			 
				 5
			 
				 6
			 
				 7
			 
				 8
			 
				 9
			 
				 10
			 
				 11
			 
				 12
			 
				 13
			 
				 14
			 
				 15
			 
				 16
			 
				 17
			 
				 18
			 
				 19
			 
				 20
			 
				 21
			 
				 22
			 
				 23
			 
				 24
			 
				 25
			 
				 26
			 
				 27
			 
				 28
			 
				 29
			 
				 30
			 
				 31
			 
				 32
			 
				 33
			 
				 34
			 
				 35
			 
				 36
			 
				 37
			 
				 38
			 
				 39
			 
				 40
			 
				 41
			 
				 42
			 
				 43
			 
				 44
			 
				 45
			 
				 46
			 
				 47
			 
				 48
			 
				 49
			 
				 50
			 
				 51
			 | <?php// Получить статус СМС сообщения можно 2 способами:// 1 - Самостоятельно запросить статус методом get_msg_report// 2 - Прописать в личном кабинете, в разделе "НАСТРОЙКА" - "API и интеграция" URL своего сайта// на который SMS шлюз будет самостоятельно передавать статусы сообщений по мере их получения// от оператора связи//--------------------------------------------------------------------// 1-й способ мы не будем описывать, Вы можете самостоятельно посмотреть все необходимые параметры // в Документации (ссылка ниже)//// 2-й способ более интересный// Вы прописываете в ЛК URL на который необходимо прислать статус, далее наша платформа будет// делать GET запросы к этому URL со следующими параметрами// Предлагаемый вариант скрипта, который получает статусы@$sms_id = $_GET["id_sms"]; // ID SMS@$state = $_GET["state"]; //ID статуса сообщения// 1-доставлено, 2-не доставлено, 4-в очереди на SMSC оператора, 8-доставлено в SMSC оператору, 16-отклонено оператором@$last_update = $_GET["last_update"]; // Время доставки смс сообщения абоненту // (время определяется по часовому поясу// операторского СМС шлюза и может отличаться// от часового пояса Москвы)// (передается в формате UNIX_TIME)@$state_date = $_GET["state_date"]; // Время поступления статуса от оператора связи// (время определяется по часовому поясу операторского СМС шлюза и может // отличаться от часового пояса Москвы)// (передается в формате UNIX_TIME) @$phone = $_GET["phone"]; // Номер Абонента// Получив эти данные, Вы можете сохранить их себе в БД.// Мы рекомендуем делать UPDATE данных в БД (а не INSERT), посколько мы постоянно // совершенствуем платформу SMS-шлюза и планируется функция// повторной отправки СМС. Т.е., допустим СМС не была доставлена абоненту, // пришел статус НЕ доставлено. Через 5 минут платформа отправляет // сообщение повторно. Т.е. по этому же сообщению может поступить// статус ДОСТАВЛЕНО. Необходимо это учитывать.?> |