Caso deseje receber os avisos de recepção em tempo real se deverá especificar a variável “dlr-url” com o URL do cliente onde deverá ser notificado o estado do envio.
O funcionamento consiste em especificar em cada solicitação HTTP, o URL onde se deseja realizar uma solicitação do nosso servidor ao receber uma notificação por parte da operadora. Para isto, o cliente deve dispor de um servidor HTTP capaz de receber estas notificações.
Nosso servidor enviará as variáveis pelo método GET da forma desejada pelo cliente, para isto no URL que nos envie deverá constar o nome da variável seguido de um caractere de escape que conterá o valor, os caracteres de escape têm a forma do caractere “%” seguido de uma letra. Este seria um exemplo de URL:
http://my.server.com/notifica.php?remitente=%p&tel=%P&estado=%d
Estes são os caracteres de escape definidos:
%i
Identificador de NRS entregue quando se realizou o envio.
%d
Valor do aviso de recepção.
%p
Remetente do SMS
%P
Número do telefone do receptor da mensagem SMS.
%t
Data de envio da mensagem com formato "YYYY-MM-DD HH:MM", p. ex. "1999-09-21 14:18"
O valor %d é o que nos retornará o estado final do envio, os valores possíveis são:
- 1 A mensagem foi entregue ao destinatário.
- 2 A mensagem não pôde ser entregue ao destinatário.
- 4 A mensagem foi entregue ao SMSC, esta é uma notificação intermediária, não um resultado final.
- 16 Não foi possível entregar à operadora final.
Exemplo de envio de SMS.
Para explicar melhor o processo, a seguir se dará um exemplo de como seria o envio de um SMS e o recebimento de seu aviso de recepção.
Em primeiro lugar enviamos o SMS com a variável dlr-url, indicando o URL onde queremos receber a notificação da entrega, adicionaremos a este URL nosso identificador de envio para que possamos indentificá-lo inequivocamente ao recebê-lo. O URL final para a notificação seria:
https://gateway.nrsgateway.comn/send.php?username=tu_user&password=tu_login&to=3465467445+34627455334+34627545454&text=Prueba+de+envio&from=TEST&coding=0&dlr-mask=8&dlr-url=http%3A%2F%2Fmi.server.com%2Fnotifica.php%3Fidenvio%3D7584remitente%3D%25p%26tel%3D%25P%26estado%3D%25d
Assumindo que todas mensagens possam ser entregues, receberemos no script notifica.php três solicitações com o estado= 1, remetente= TEST, ID envio= 7584 e o número do telefone correspondente.