Русский RUS  English ENG

смс:ключ

смс:ключ

Не уверены, какую услугу выбрать? Обратитесь к странице сравнения наших услуг!

Также обратите внимание на готовые скрипты.

Техническое описание

Предоставляемая нами услуга смс:ключ является, с точки зрения технологии, лишь способом ограничить возможность посещения того или иного сетевого ресурса пользователем. Для обхода ограничения используются индивидуально генерируемые пароли доступа; каждый такой пароль может иметь время действия и/или лимит количества использований, на усмотрение клиента. Прекращение доступа для лимитированных таким образом паролей происходит, когда выполнилось хотя бы одно условие - либо истекло время, либо превышен лимит использований. Обратите внимание также на то, что изменение настроек Вашего смс:ключа скажется только на тех пользователях, которые получили пароль после сделанного Вами изменения.

Характерными особенностями смс:ключа являются:

  • легкость и быстрота установки (типовая интеграция занимает пять-десять минут);
  • простота адаптации к требованиям пользователя (возможно не только изменение внешнего вида, но и частичная/полная замена формы запроса - без потери функциональности).

Пример работы

Пример работы скрипта можно увидеть здесь. В случае, если в настройках сервиса Вы указали специфику ресурса "для взрослых", то результат будет несколько отличаться, как показано здесь.

Технология Flash

Несмотря на то, что мы не предоставляем отдельной версии смс:ключа для использования на сайтах, построенных целиком на технологии Flash, Вы можете легко проверять пароли ключей при помощи следующего ActionScript-кода:

var key : String = new String("идентификатор ключа");
var pair : String = new String("пользовательский пароль");
var loadVars : LoadVars = new LoadVars();
loadVars.onLoad = function(success : Boolean) {
    if(success && loadVars.toString() == "true") {
        // пароль подтвержден
    } else {
        // пароль не подтвержден
    }
}
loadVars.load("http://
xxxx.key.smscoin.com/key/?s_key=" + key
    + "&s_pair=" + pair);

Обратите внимание: слова идентификатор ключа нужно заменить на идентификатор Вашего смс:ключа, пользовательский пароль - на переданный пользователем пароль, а после комментарев пароль подтвержден и пароль не подтвержден должны идти обработчики обоих ситуаций, соответственно - переход к закрытой части сайта и сообщение об ошибке/предложение ввести пароль повторно.

Модификации кода

Установка языка по умолчанию

По умолчанию все наши сервисы используют русский язык; в том случае, если часть Ваших пользователей не является русскоязычной, или Вы по каким-то другим причинам решили сменить используемый язык сервиса, просто измените адрес запроса в приведенном выше коде с

http://xxxx.key.smscoin.com/key/

на

http://xxxx.key.smscoin.com/language/english/key/

(вместо english можно указать любой поддерживаемый язык).

Пример работы можно увидеть здесь.

Для мобильных браузеров

смс:ключ теперь доступен также и посетителям WAP-сайтов - для того, чтобы вместо HTML генерировалась WML-разметка, Вам нужно только изменить в приведенном выше коде адрес запроса с

http://xxxx.key.smscoin.com/key/

на

http://xxxx.key.smscoin.com/key_wml/

Пример можно посмотреть здесь.

Версия без оформления

Данная модификация предназначена для более тесной интеграции со структурой и дизайном Вашего ресурса. Если скрипту передавать в качестве параметра s_pure=1 (xxxx.key.smscoin.com/key/?s_pure=1), то в результате работы выводится только актуальная HTML-разметка формы запроса; внешний вид формы, таким образом, легко видоизменить при помощи CSS. Пример работы скрипта находится здесь. CSS, используемую по умолчанию, можно скачать здесь.

Обратите внимание, что кодировкой по умолчанию для версии ключа без оформления является windows-1251. Задать кодировку можно при помощи параметра s_enc (например, ?s_enc=koi8-r).

Если директива allow_url_fopen отключена

Некоторые хостинги отключают возможность отправки GET-запроса удаленному скрипту при помощи функции file(). Специально для таких случаев существует альтернативный код ключа, доступный в этом архиве

Вывод своего интерфейса

Используя смс:ключ, вы можете не только видоизменять стандартную форму ввода, но и выводить полностью свою версию интерфейса. Для вывода формы ввода пароля замените строку die(implode("", $response)); на следующий код:

die('<form action="http://'.$_SERVER["SERVER_NAME"]
.$_SERVER["REQUEST_URI"].'" method="get">
<input name="s_pair" type="text" value="" />
<input type="submit" value="Открыть" /></form>');

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

Чтобы вывести инструкции об отправке смс, вам потребуется список тарифов вашего смс:ключа. Вы можете получить эти данные по адресу вида

http://xxxx.key.smscoin.com/xml/key/идентификатор ключа/

Где xxxx - идентификатор группы (см. код PHP, генерируемый панелью управления для вашего смс:ключа). Упомянутый XML-файл содержит также информацию о номерах, на которые пользователи должны отправлять сообщения (поле number), и префиксах, необходимых для обработки сообщений нашей системой (поле prefix); в разных странах, соответственно, действуют разные номера и префиксы. Для того, чтобы сообщение было ассоциировано с Вашим сервисом, оно должно иметь вид

префикс идентификатор ключа

и быть отправлено на действующий в рамках страны номер, верный для выбранного Вами тарифа.

Если какая-либо страна не фигурирует в упомянутой выше тарифной сетке, значит, в данной стране отсутствует выбранный Вами при настройке тариф и она таким образом исключена из обработки; сообщения, отправленные пользователями, проживающими на территории этой страны, будут проигнорированы.

Пример кода, работающего с тарифной сеткой в формате XML, можно скачать здесь

Имеет смысл отметить, что все приведенные выше модификации совместимы между собой, т.е. вы можете использовать альтернативный код ключа, указав при этом кодировку и т.д.

Удаленное размещение ключа

В стандартной версии смс:ключа всю работу по выдаче и отслеживанию паролей выполняет наш сервер, упрощая таким образом установку и настройку услуги, но одновременно лишая ее некоторой гибкости. Учитывая популярность услуги смс:ключ среди наших клиентов, мы решили пересмотреть некоторые аспекты ее использования. Так появилась версия с удаленным размещением, преимущества которой перед стандартным смс:ключом таковы:
- все пароли хранятся и обрабатываются на Вашей стороне, давая таким образом возможность локально управлять сессиями пользователей;
- Вы можете управлять как внешним видом, так и в определенных пределах принципом работы услуги;
- услуга максимально устойчива к разного рода атакам на наши сервера, перебоям работы сети и т. д.

Внимание: для использования этой версии ключа категорически необходимо понимание общих принципов работы скриптов, исполняемых на стороне сервера.

Подробнее об этой вариации использования смс:ключа можно узнать здесь.

Часто задаваемые вопросы

Невозможно выбрать страну, список стран пуст

Проверьте файл .htaccess, вероятно, он содержит правила, обрезающие передаваемые скрипту параметры; также проверьте, что тариф, выбранный в настройках ключа, доступен по меньшей мере в одной стране. В частности, такая ошибка возникает, если в настройках выставлена опция "всегда использовать максимальный тариф", а в поле "не более" стоит $0.

Кодировка страницы неправильная, что делать?

Перед строкой die(implode(...)) в коде скрипта добавьте следующую строку:
header('Content-Type: text/html; charset=utf-8');

Вместо формы ввода пароля я вижу код PHP

Убедитесь, что имя файла с кодом ключа оканчивается на .php. Также удостоверьтесь, что ваш хостинг поддерживает PHP (это можно узнать в службе поддержки хостинга).