Envio de SMS **SOLUCIONADO**

Post Reply
IVAN TRACHTA
Posts: 44
Joined: Fri Feb 03, 2006 6:42 pm
Location: FORMOSA - ARGENTINA

Envio de SMS **SOLUCIONADO**

Post by IVAN TRACHTA »

Buenas!

Tengo un cliente que ha contratado un servicio de envío de SMS a clientes.
El servicio incluye una página en donde se van cargando los # de teléfonos y el txt que se desea enviar y simplemente hace el trabajo.
Pero además tiene un modelo para integrar esto a un sistema propio.

Yo lo he probado y efectivamente funciona, envio desde mi sistema el comando x ej:

http://servicio.smsmasivos.com.ar/enviar_sms.asp?,;
api=1&;
test=1&;
usuario=xxxx&;
clave=cccc&;
tos=1144445555&;
texto=Mensaje

y el mensaje se envía sin problemas.

Sólo tengo 2 cuestiones..
1) obviamente al enviar esto me abre el navegador por defecto, no se si se puede manejar que lo haga en background o segundo plano.
2) me da una respuesta que es simplemente un texto pero dentro de la página que he abierto.. Por ej si todo fue bien, la respuesta es sólo "OK"

Cómo podría tomar o leer el contenido de una pagina web?

O sea lo ideal seria poder mandar el comando, y tomar la respuesta y que todo sea invisible al usuario del sistema mío. Y si no es invisible.. que se abra el navegador.. enviar los datos, tomar la respuesta y cerrar desde mi programa el mismo.

No se si se entiene, espero que si.

Un abrazo!
Last edited by IVAN TRACHTA on Fri Jan 27, 2017 10:43 pm, edited 1 time in total.
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Envio de SMS

Post by cnavarro »

Busca informacion sobre la function

//nRet := hb_ProcessRun( cCommand, cStdIn, @cStdOut, @cStdErr, lDetach )

e investiga despues el contenido de cStdOut
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
IVAN TRACHTA
Posts: 44
Joined: Fri Feb 03, 2006 6:42 pm
Location: FORMOSA - ARGENTINA

Re: Envio de SMS

Post by IVAN TRACHTA »

Gracias Cristóbal

Esa es una Función de Harbour, estará documentada?
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Envio de SMS

Post by cnavarro »

Por supuesto
Google es nuestro amigo :D
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
IVAN TRACHTA
Posts: 44
Joined: Fri Feb 03, 2006 6:42 pm
Location: FORMOSA - ARGENTINA

Re: Envio de SMS

Post by IVAN TRACHTA »

Gracias Cristóbal

He estado viendo pero no la puedo probar, creo que uso una versión de Harbour muy antigua (por esto de cosa que funciona no se toca.. creo que nunca me motivé a actualizarla).
Me da Unresolved External esa función.. o hay que enlazar alguna lib en particular?
User avatar
mag071
Posts: 139
Joined: Thu Feb 02, 2006 12:09 pm
Location: Venezuela
Contact:

Re: Envio de SMS

Post by mag071 »

Saludos desde Venezuela.-

Yo hago algo parecido con un servicio aqui en Venezuela

METHOD Enviarsms(cOrden,cTlf) CLASS TServicio
LOCAL cMensa:=""
LOCAL cHost,lRet:=.F.
LOCAL oHttp,cFuncion,oError,cTextohtml,cXml,xDato,nReg:=0,nI:=0

if empty(cTlf)
msgstop("No hay celular para enviar mensaje","verifique la ficha")
Return Self
Endif

cMensa:="Informa%20=%20Se%20ha%20cargado%20la%20orden%20de%20servicio%20"+Alltrim(Oemtoansi(cOrden))+"%20"+;
"de%20fecha%20"+dtoc(date())+"%20"+;
"informaremos%20por%20esta%20via%20los%20avances%20de%20su%20servicio.%20Gracias%20por%20su"+"%20"+;
"confianza."

oHttp:=CreateObject("winhttp.winhttprequest.5.1")
oHttp:SetTimeouts(30000,30000,30000,30000)

cHost:="http://041x.com/secure/insert.php?uname ... x&pass=xyz"
cFuncion:="&num=0"+Alltrim(cTlf)+"&msg="+cMensa

oHttp:Open("GET",Alltrim(cHost)+cFuncion,.f.)
Try
oHttp:Send()
Catch oError
MsgInfo("NO HAY CONEXION CON EL SERVIDOR CENTRAL ","INTENTE DE NUEVO ")
Return .F. //Aqui retornar false...
End

cTextoHTML:=oHttp:ResponseText()
cXML:=cTextoHTML
xDato:=GetStringFromXMl('[',']', cXML )
IF UPPER(xDato)<>"OK"
MSGSTOP("ERROR EN ENVIO DEL MENSAJE DE TEXTO","INFORME ESTE MENSAJE POR FAVOR")
Return lRet
ENDIF

Return Self

Function GetStringFromXMl( cInicio, cFinal, cString )
Local nInicio:=At( cInicio, cString ) + Len( cInicio )
Local nFinal :=At( cFinal, cString ) - nInicio
Return Alltrim( Substr( cString, nInicio, nFinal ) )
Mario Antonio González Osal
Venezuela
m a g 0 7 1 @ g m a i l. c o m
IVAN TRACHTA
Posts: 44
Joined: Fri Feb 03, 2006 6:42 pm
Location: FORMOSA - ARGENTINA

Re: Envio de SMS

Post by IVAN TRACHTA »

Hola Mario

Creo que algo así es lo que estoy buscando.
Podrías adjuntarme la definición de la clase TServicio? y qué librerías enlazas para que esto funcione?
Para definir el objeto oHTTP ?

Gracias!!
IVAN TRACHTA
Posts: 44
Joined: Fri Feb 03, 2006 6:42 pm
Location: FORMOSA - ARGENTINA

Re: Envio de SMS

Post by IVAN TRACHTA »

Con la ayuda de otro colega de otro foro encontre la solución. Facilísimo y simple.
Lo que buscaba. Funciona aparentemente sólo con Internet Explorer, pero es tan transparente al usuario que no importa.

Lo publico aca para que quede la solución, capaz le sirva a alguien:

FUNCTION ConsultaWeb(cUrl)
LOCAL cError,oExplorer
LOCAL cResult

oExplorer := TOleAuto():New("InternetExplorer.Application")
oExplorer:Navigate(cUrl)
oExplorer:Visible:=.F. // IE invisible

// Las siguientes 4 lineas son para pausar la carga de una pagina, omitelas si no te son necesarias
//WaitSeconds(5) // deshabilito, no hace falta
WHILE oExplorer:Busy
HB_IDLESLEEP(1)
ENDDO

// Guardamos en texto del resultado de la web
cResult:=oExplorer:Document:Body:InnerText
oExplorer:End()


IF "OK"$cResult
ALERT("El envio del SMS fue un exito")
ENDIF

RETURN cResult
User avatar
TOTOVIOTTI
Posts: 334
Joined: Fri Feb 05, 2010 11:30 am
Location: San Francisco - Córdoba - Argentina

Re: Envio de SMS

Post by TOTOVIOTTI »

Hola Ivan...
me interesa lo que publicas...
Serías tan amable de adjuntar un ejemplo completo del envío de SMS?
No entiendo como enlazas la función ConsultaWeb con el envío de los mensajes...
Gracias!
Roberto
Univ@c I.S.I.
Desarrolladores de Software
http://www.elcolegioencasa.edu.ar
jbrita
Posts: 425
Joined: Mon Jan 16, 2006 3:42 pm

Re: Envio de SMS **SOLUCIONADO**

Post by jbrita »

Ivan me interesa, puedes compartir el codigo completo
gracias
Post Reply