Foros del Web » Programando para Internet » PHP »

Envio SMS

Estas en el tema de Envio SMS en el foro de PHP en Foros del Web. Hola a tod@s!! Estoy realizando un script con los siguientes pasos: 1.- Usuario envía SMS. 2.- Proveedor recibe el mensaje y hace una peticion a ...
  #1 (permalink)  
Antiguo 18/12/2007, 10:18
 
Fecha de Ingreso: febrero-2005
Mensajes: 17
Antigüedad: 19 años, 9 meses
Puntos: 0
Exclamación Envio SMS

Hola a tod@s!!

Estoy realizando un script con los siguientes pasos:
1.- Usuario envía SMS.
2.- Proveedor recibe el mensaje y hace una peticion a URL del cliente.
3.- El cliente responde con OK a esta peticion.
4.- El cliente genera un http request a la URL.
5.- El proveedor recibe la petición y entrega el mensaje.

Lo tengo terminado, pero el paso 3 no me funciona. He intentado echo 'OK'; , pero el proveedor no recibe nada ¿Cómo puedo responder al proveedor con la cadena simple 'OK', antes de hacer el http request?


Gracias!!!
  #2 (permalink)  
Antiguo 18/12/2007, 11:32
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Re: Envio SMS

Deberías de contactar a tu proveedor para que te indique como es que tienes que hacer ese OK. Así generas tu script correctamente.

Saludos.
  #3 (permalink)  
Antiguo 18/12/2007, 13:17
 
Fecha de Ingreso: febrero-2005
Mensajes: 17
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: Envio SMS

Hola GatorV, gracias por tu respuesta. Ya he hablado con ellos y me han dicho que la respuesta con el OK es en texto plano. Pero aún así no me funciona si pongo el echo 'OK'; No se si deberia separar esto del resto del script donde genero el mensaje de respuesta y hago el http request, pero creo que tampoco funcionaría.
  #4 (permalink)  
Antiguo 18/12/2007, 14:53
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Re: Envio SMS

Publica tu codigo, debes de estar probablemente enviando otra cosa antes de tu OK o el formato es diferente, ¿haz preguntado como necesitan el tipo de documento?.

Saludos.
  #5 (permalink)  
Antiguo 19/12/2007, 02:45
 
Fecha de Ingreso: febrero-2005
Mensajes: 17
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: Envio SMS

El formato del OK me han dicho que en texto plano, sin cabeceras ni nada. Este es mi script:

<?php

/* Respondemos al proveedor con OK */
echo 'OK';

$ticket = $_POST['ticket']
$identificador = $_POST['texto'];
$numeromovil = $_POST['numero'];

$texto_sms = "Esto es una prueba";

/* Respuesta HTTP al proveedor con el texto del mensaje */
require_once "HTTP/Request.php";
$req =& new HTTP_Request("http://wpr.es/gatewaylistener");
$req->setMethod(HTTP_REQUEST_METHOD_POST);
$req->addPostData('ticket', $ticket);
$req->addPostData('mobile', $numeromovil);
$req->addPostData('message', $texto_sms);
$req->addPostData('type', 'SMS');
$req->sendRequest();

?>

Muchas gracias!!!
  #6 (permalink)  
Antiguo 19/12/2007, 09:30
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Re: Envio SMS

Prueba agregar esta linea al inicio:
Código PHP:
header"Content-type: text/plain" ); 
Eso le indica a la respuesta que es un texto plano y no html (cuando tu lo mandas sin cabeceras Apache y PHP por defecto envian la cabecera como text/html y eso le agrega unas cadenas de texto invisibles.

Saludos.
  #7 (permalink)  
Antiguo 19/12/2007, 16:25
Avatar de webdesignsite  
Fecha de Ingreso: enero-2007
Mensajes: 155
Antigüedad: 17 años, 9 meses
Puntos: 1
Pregunta Re: Envio SMS

Parese interesante el script, podrias colocarlo de forma completo al mismo.


gracias.
__________________
WebDesignSite
Diseño Web - Altas Buscadores Gratis - Intercambio de Banners - Foros de soporte
http://webdesignsite.bolhost.com/
  #8 (permalink)  
Antiguo 19/12/2007, 20:00
Usuario no validado
 
Fecha de Ingreso: diciembre-2001
Ubicación: MERIDA
Mensajes: 498
Antigüedad: 22 años, 10 meses
Puntos: 2
Re: Envio SMS

Cita:
Iniciado por webdesignsite Ver Mensaje
Parese interesante el script, podrias colocarlo de forma completo al mismo.


gracias.

Me uno a tu interrogante =)

Gracias
  #9 (permalink)  
Antiguo 20/12/2007, 05:19
 
Fecha de Ingreso: febrero-2005
Mensajes: 17
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: Envio SMS

Lo que me decis creo que tiene un problema. El proveedor está esperando a que le envie el OK, hasta que no lo reciba no aceptará la respuesta con el texto del mensaje. Si pongo todo en el mismo script, no enviará el OK hasta que termine de componer el mensaje, que tardará un poco, puesto que tiene que hacer varias consultas a una base de datos. El proveedor me ha comentado que de no recibir el OK en un intervalo de tiempo corto, volverá a enviar la solicitud. ¿Cómo puedo hacer para enviar primero el OK y luego componer el mensaje, en el mismo script, ya que en la petición que me hace el proveedor los datos los recibo en un POST?

Gracias por vuestras aportaciones!!!
  #10 (permalink)  
Antiguo 20/12/2007, 09:13
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Re: Envio SMS

Solo controla el flujo:
Código PHP:
header"Content-type: text/plain" );
echo 
"OK";

// Procesas y todo
echo "tu resultado"
Saludos.
  #11 (permalink)  
Antiguo 15/01/2008, 06:40
 
Fecha de Ingreso: noviembre-2004
Mensajes: 37
Antigüedad: 20 años
Puntos: 0
Re: Envio SMS

hola, yo estoy intentando una cosa similar, recibo de un servicio de SMS los mensajes, pero tengo que dar una respuesta HTTP OK 200 y lo intento de esta forma

header('Content-Type: text/plain');
print "OK";

pero no hay forma de que el servidor de sms me acepte la respuesta HTTP y no para de reenviarme los sms me esta quebrando la cabeza grandemente. a ver si me podeis echar una mano.
  #12 (permalink)  
Antiguo 15/01/2008, 09:04
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Re: Envio SMS

Usa una respuesta header:
Código PHP:
header("HTTP/1.0 200 OK"); 
Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:57.