<?php
/**
* Classe para enviar sms pela API da Ericsson Labs.
* @package ericsson_sms
* @Adicionado Ciumator Namorator (inciume os namorados de suas miguxas) por Victor Sued
* @author Marcelo Octane [F/X] http://www.orkut.com.br/Main#Profile?uid=695686904613663829
* @version 1.1
* @license http://www.octanefx.com/
* cadastro da api https://labs.ericsson.com/apis/sms-send-and-receive/
*/
require("class.XMLHttpRequest.php");
class ericsson_sms {
public $status_code;
private $_api_key;
private $_url = 'http://sms.labs.ericsson.net/';
/**
* Seta a variavel $api_key.
*
* @parametroetro string $api_key (sua key).
* @return null.
*/
function __construct($api_key) {
$this->_api_key = $api_key;
}
/**
* Envia mensagem de texto.
*
* @parametro string $receiver quem vai receber o sms +55000000000.
* @parametro string $message Mensagem a ser enviada, limite de 160 caracteres.
* @parametro string $type Opcional, [ regular ou flash ].
* @return bool.
*/
function send($receiver, $message, $type = 'regular') {
if(empty($message)) return FALSE; // esqueceu da mensagem emo?
// limpa a mensagem retirando tags, espaços em branco em excesso, quebras de linha e outras impurezas.
$message = (strip_tags($message));
$message = str_replace("<br>","",$message); $message = str_replace("<br>","",$message);
// verifica se a mensagem tem mais de 160 caracteres.
if (strlen($message) > 160) {
// retira o excesso de texto
$message = substr( $message,0,160 );
# remove alguma palavra incompleta do final
$message = substr( $message,0,-(strlen(strrchr($message,' '))) );
}
// seta a url da API
$url = $this->_url . 'send';
//monta o post_data
$post_data = http_build_query(
array(
'key' => $this->_api_key,
'to' => $receiver,
'message' => $message,
'type' => $type
)
);
$xml = new XMLHttpRequest(); // cria o objeto
$xml->open("POST",$url,true); // prepara o objeto
$xml->send($post_data); // faz a requisição
$this->status_code = $xml->status; // seta o http status code
return ($xml->status==200) ? TRUE : FALSE; // se a requisição foi bem sucedida, retorna true, ou ...
}
/**
* Destroi todas as variaveis para liberar memoria.
* @return null.
*/
function __destruct() {
$this->status_code = NULL;
$this->_api_key = NULL;
$this->_url = NULL;
}
}
//Frases rondomicas
$frase = Array(
0 => 'Vivo no mundo da lua, la eh mais facil pensar em voce.',
1 => 'Pelas ruas que passei, e pessoas que encontrei,vc foi uma delas que jamais esquecerei',
2 => 'Uma linda viagem eh ir do nariz ao queixo bem devagarinho e parar no meio do caminho',
3 => 'Preciso esquecer que te adoro... para lembrar que te amo',
4 => 'Muitos sao os que amam, pouquissimos sao os que sabem amar.',
5 => 'O amor verdadeiro so cria, nunca destroi',
6 => 'Hoje eu sou louco de vez, um pouco porque eu ja era, um pouco porque vc me fez',
7 => 'Como posso dizer que o amor e cego se tem amei por um olhar.',
8 => 'Como e bom estar apaixonado, estar assim tao extasiado... De amor... por vc!',
9 => 'Espero que nunca se esqueca de se lembrar de mim, pois eu nunca me esquecerei de me lembrar de vc!',
10 => 'Das riquezas que encontrei no mundo so quero uma pedra preciosa: vc.',
);
$ericsson_sms = new ericsson_sms('AQUI SUA API KEY');
rand(0,count($frase)-1);
if ($ericsson_sms->send('+55DD00000000', "$frase[$x]")) {
echo "Success!";
} else {
switch ($ericsson_sms->status_code) {
case 503:
echo "SERVIÇO INDISPONIVEL: Serviço temporariamente indisponível; tente novamente mais tarde.";
break;
case 403:
echo "FORBIDDEN: Você excedeu o numero diário de requisições.";
break;
case 400:
echo "BAD REQUEST: Um ou mais parâmetros estão faltando ou mal formatados.";
break;
}
}
?>