function send_sms() { global $sms; // В тело функции необходимо вставить код отправки смс на выбранный шлюз. // В коде можно использовать следующие переменные: // $sms["phone"] - номер абонента; // $sms["text"] - текст сообщения; // $sms["sender"] - подпись или номер отправителя. // Внимание! Переопределять или дополнять переменную $sms другими ключами не допускается! // Функция должна возвратить (через оператор return) результат "OK" в случае удачной отправки ИЛИ сообщение в формате "ERROR:Текст ошибки". if (strlen(trim($sms['phone'])) == 0) { return 'ERROR:Телефон не заполнен'; }; if (strlen(trim($sms['sender'])) == 0) { return 'ERROR:Отправитель не заполнен'; }; if (strlen(trim($sms['text'])) == 0) { return 'ERROR:Текст сообщения не заполнен'; }; $uagent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)"; $url = 'https://userarea.sms-assistent.by/api/v1/xml'; $postdata = ' '.$sms['text'].' '; $ch = curl_init( $url ); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_USERAGENT, $uagent); // useragent curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_ENCODING, 'gzip,deflate'); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata); curl_setopt($ch, CURLOPT_TIMEOUT, 1200); $header[0] = "Accept: text/xml,application/xml,application/xhtml+xml,"; $header[0] .= "text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5"; $header[] = "Content-Type: text/xml"; $header[] = "Cache-Control: max-age=0"; $header[] = "Connection: keep-alive"; $header[] = "Keep-Alive: 300"; $header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7"; $header[] = "Accept-Language: en-us,en;q=0.5"; $header[] = "Pragma: "; // browsers keep this blank. curl_setopt($ch, CURLOPT_HTTPHEADER, $header); $content = curl_exec( $ch ); $err = curl_errno( $ch ); $errmsg = curl_error( $ch ); $header = curl_getinfo( $ch ); curl_close( $ch ); $header['errno'] = $err; $header['errmsg'] = $errmsg; $header['content'] = $content; $xml = simplexml_load_string($content); if (isset($xml->error)) { switch ($xml->error[0]) { case '-1' : return 'ERROR:Код ошибки "-1" . Недостаточно средств'; case '-2' : return 'ERROR:Код ошибки "-2" . Неправильный логин или пароль (ошибка при аутентификации)'; case '-3' : return 'ERROR:Код ошибки "-3" . Отсутствует текст сообщения'; case '-4' : return 'ERROR:Код ошибки "-4" . Некорректное значение номера получателя'; case '-5' : return 'ERROR:Код ошибки "-5" . Некорректное значение отправителя сообщения'; case '-6' : return 'ERROR:Код ошибки "-6" . Отсутствует логин'; case '-7' : return 'ERROR:Код ошибки "-7" . Отсутствует пароль'; case '-10': return 'ERROR:Код ошибки "-10". Сервис временно недоступен'; case '-11': return 'ERROR:Код ошибки "-11". Некорректное значение ID сообщения'; case '-12': return 'ERROR:Код ошибки "-12". Другая ошибка'; case '-13': return 'ERROR:Код ошибки "-13". Заблокировано'; }; }; return 'OK'; // return "ERROR:Не заполнена функция отправки СМС"; // это заглушка,сообщающая о том что сейчас здесь кода функции нет; замените ее на возврат результата }