Отвечу по привычке на свой же вопрос. Вот что мне удалось нарыть:
1) http://sms.ru
Простой и удобный сервис для отправки/получения смс. Использование кода минимально.
Установка токена выглядит проще некуда:
$token=file_get_contents("http://sms.ru/auth/get_token");
Отправка смс тоже очень простая, требует лишь наличие api ключа:
$this->config['urlSMSService'] = 'http://sms.ru/sms/send?api_id=e9c9392d-dff3-d104-d584-1e603434dc1b&to=7';
$send = file_get_contents($this->config['urlSMSService'].$data['email']."&text=".urlencode(iconv("utf-8", "windows-1251","Ваш временный код для восстановления аккаунта: ".$pass)));
В переменную $send
можно получать коды ошибки, возможные при отправке.
2) http://www.smsfeedback.ru
Еще один сервис по отправке и получения смс. Объемы кода более внушительные, к примеру, функция отправки смс выглядит таким образом:
<?php
/*
* функция передачи сообщения
*/
function send($host, $port, $login, $password, $phone, $text, $sender = false, $wapurl = false )
{
$fp = fsockopen($host, $port, $errno, $errstr);
if (!$fp) {
return "errno: $errno \nerrstr: $errstr\n";
}
fwrite($fp, "GET /messages/v2/send/" .
"?phone=" . rawurlencode($phone) .
"&text=" . rawurlencode($text) .
($sender ? "&sender=" . rawurlencode($sender) : "") .
($wapurl ? "&wapurl=" . rawurlencode($wapurl) : "") .
" HTTP/1.0\n");
fwrite($fp, "Host: " . $host . "\r\n");
if ($login != "") {
fwrite($fp, "Authorization: Basic " .
base64_encode($login. ":" . $password) . "\n");
}
fwrite($fp, "\n");
$response = "";
while(!feof($fp)) {
$response .= fread($fp, 1);
}
fclose($fp);
list($other, $responseBody) = explode("\r\n\r\n", $response, 2);
return $responseBody;
}
/*
* использование функции передачи сообщения
*/
echo send("api.smsfeedback.ru", 80, "login", "password",
"79031234567", "text here", "TEST-SMS");
?>
Необходимые данные для передачи: url-сервиса, порт, логин, пароль, номер телефона, ну и соответственно сам текст смс.
3) http://www.epochta.ru/products/sms/sms-api.php
Еще один сервис по рассылке смс, подробности я пока еще не узнавал. На практике не использовал. Подробное описание работы данного сервиса описаны тут.
4) http://ruseller.com/lessons.php?rub=37&id=940
Еще один хитрый способ отправки смс, через почту. Правда, код выглядит объемным и не очень красивым местами.
P.S. Если кто предложит еще смс-сервисы и способы отправки смс, напишите, так как я сделал явно не полный обзор возможных сервисов.