Зарегестрировался, нашел скрипт но я там ничего не понял
Code
<?php
# СМС Доступ 2008
# Скрипт для ответа на запрос Биллинга
# Вывод ошибок нежелателен
ini_set('display_errors', 0);
error_reporting(0);
# Задаем ключ (идентификатор) проекта, который указан в разделе 'Список проектов' в вашем аккаунте
$project_md5 = "КЛЮЧ_ВАШЕГО_ПРОЕКТА";
# Проверяем наличие данных
if (!isset($_POST['_md5_hash']) || !isset($_POST['_session_code']) || !isset($_POST['_sms_id']) || !isset($_POST['_sms_number']) || !isset($_POST['_sms_operator']) || !isset($_POST['_sms_phone']) || !isset($_POST['_sms_message']) || !isset($_POST['_sms_price'])) return_result("err void", true);
if (!$_POST['_md5_hash'] || !$_POST['_session_code'] || !$_POST['_sms_id'] || !$_POST['_sms_number'] || !$_POST['_sms_operator'] || !$_POST['_sms_phone'] || !$_POST['_sms_message'] || !$_POST['_sms_price']) return_result("err false", true);
# Проверяем целостность данных
$_md5hash = md5($project_md5.$_POST['_session_code'].$_POST['_sms_id'].$_POST['_sms_number'].$_POST['_sms_operator'].$_POST['_sms_phone'].stripslashes($_POST['_sms_message']).$_POST['_sms_price']);
if ($_md5hash != $_POST['_md5_hash']) return_result("err hash", true);
/* Напоминаем, что в случае наличия параметра _is_debug производится ТЕСТИРОВАНИЕ проекта,
если Вы ведете внутренние учеты, зачисляете средства и так далее - учтите, эти запросы нами не оплачиваются! */
# Возвращаем результат и завершаем работу
return_result(
"Здесь должен быть Ваш ответ клиенту"
);
# Делаем все необходимые учеты, проверки и определяем ответ абоненту
/*
Входящие данные (даны исключительно для ознакомления и не являются действительными):
_is_debug = 1 // Параметр тестирования проекта, по-умолчанию не передается
_md5_hash = a123456789b123456789c123456789d1 // Ключ проверки целостности данных
_session_code = a123456789b123456789c123456789d1 // Ключ текущей сессии
_sms_id=1234567890 // Уникальный идентификатор смс сообщения
_sms_number=1234 // Короткий номер на который прислано смс сообщение
_sms_operator=Megafon // Название оператора, латиница, короткое
_sms_operator_full=Megafon_moscow // Название оператора, латиница, полное
_sms_phone=7912xxxx345 // Номер абонента приславшего смс сообщение
_sms_country=ru // Страна абонента приславшего смс сообщение
_sms_message=ttslovo // Полный текст сообщения
_sms_plain=dHRzbG92bw%3D%3D // Текст сообщения rawurlencoded base64_encoded в кодировке utf-8
_sms_price=12.34 // Ваша прибыль с данного смс сообщения в системе СМС Доступ в рублях
_sms_exchrate=25.00 // Текущий курс отношения рубля к доллару в системе СМС Доступ
_sms_trusted=3 // Опциональный параметр, с указанием доверия номеру абонента в виде цифры от 0 до 10
_abonent_price=2.87 // Параметр указывающий стоимость смс для абонента в валюте указанной в параметре _abonent_price_currency
_abonent_price_currency=RUR // Параметр указывает валюту в которой было произведено списание с абонента за отправленную смс
_sms_parts=1 // Опциональный параметр, указывающий на количество частей из которых состояло смс сообщение
В случае, если параметр _sms_parts присутствует и он больше единицы, то будет произведена тарификация соответственно количеству смс полученных от абонента.
Сумма в параметре _sms_price будет иметь значение полученное по формуле: кол-во_смс * стоимость_смс.
Параметр _abonent_price будет показывать стоимость 1 смс сообщения вне зависимости от количества полученных частей.
_sms_operator_id=1 // Уникальный идентификатор оператора в системе СМС Доступ
_spec_id=1 // Указание на источник запроса, используется в проверке уникальности, целое число, может быть 0
_sms_date=2009-01-23 12:34:56 // Дата регистрации СМС платформой
*/
# Обработка входящего сообщения.
# Для получения текста сообщения Вам потребуется произвести следующие операции:
/*
$message_text = rawurldecode($_POST['_sms_plain']); // Убрать URL-кодирование
$message_text = base64_decode($message_text); // Перевести данные из MIME base64
$message_text = iconv("utf-8", "cp1251", $message_text); // Поменять кодировку с utf-8 на cp1251
$message_text = stripslashes($message_text); // Удалить возможные слэш символы
*/
# Для большего удобства так же передается параметр _sms_message в котором все эти действия уже произведены,
# но если же сообщения приходящие Вам достаточно большие, включают в себя спец символы и русский язык, то лучше работать с параметром _sms_plain
# Ваша проверка данных и учет в системе
# ! В случае если получен параметр _is_debug, то учет в системе делать не следует. Был произведен тест скрипта на работоспособность.
# ! вернуть ответ в случае наличия параметра _is_debug необходимо в следующем формате <SMSDOSTUP>OK</SMSDOSTUP>
# Выдаем ответ для передачи клиенту
# ! Учтите обязательность наличия открывающегося <SMSDOSTUP> и закрывающегося </SMSDOSTUP> тегов
# Содержимое внутри тегов и будет передано клиенту, в случае неверного формата ответа, смс не будет засчитана
# При ответе используйте кодировку Windows-1251
# Функция передачи данных
function return_result($message, $is_error = false) {
if ($is_error) exit("<SMSDERR>".stripslashes($message)."</SMSDERR>");
exit("<SMSDOSTUP>".stripslashes($message)."</SMSDOSTUP>");
}
?>
Что для каждого оператора новый нужно писать?