Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-03-2009
Avatar de BlackDaemon
BlackDaemon BlackDaemon is offline
Miembro
 
Registrado: dic 2006
Ubicación: Bolivia - Santa Cruz
Posts: 206
Poder: 18
BlackDaemon Va por buen camino
Hola

Bueno, según he visto envían algo así:

-----------------------------2625256275629%0D%0AContent-Disposition%3A+form-data%3B+name=%22enviar%22%0D%0A%0D%0AEnviar%0D%0A-----------------------------2625256275629%0D%0AContent-Disposition%3A+form-data%3B+name&%22numero%22%0D%0A%0D%0Anumero%0D%0A-----------------------------2625256275629%0D%0AContent-Disposition%3A+form-data%3B+name=%22mensaje%22%0D%0A%0D%0Aaqui_el_mensaje%0D%0A-----------------------------2625256275629%0D%0AContent-Disposition%3A+form-data%3B+name&%22sep%22%0D%0A%0D%0A+++%0D%0A-----------------------------2625256275629%0D%0AContent-Disposition%3A+form-data%3B+name=%22remitente%22%0D%0A%0D%0aquielremitente%0D%0A-----------------------------2625256275629--%0D%0A


lo hace aquí:

POST http://sms.whsites.net/control.php HTTP/1.1
Host: sms.whsites.net
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; es-ES; rv:1.9.0.7) Gecko/2009021910 Firefox/3.0.7 Paros/3.2.13
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: es-es,es;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Proxy-Connection: keep-alive
Referer: http://sms.whsites.net/phone.php
Content-Type: multipart/form-data; boundary=---------------------------2625256275629
Content-Length: 554

Entonces quedaría enviar por POST algo así

enviarSMS('http://sms.whsites.net/control.php? + todoloantetior);

con "todoloanterior" me refiero al primer chorizo que puse

luego te tendría que responder con algo, seguramente un html donde buscas algo que indique que se enviado correctamente o falló el envío


Saludos!

PD no estoy seguro de que sea así, no lo he probado por que no sé un número válido
Responder Con Cita
  #2  
Antiguo 12-03-2009
Avatar de BlackDaemon
BlackDaemon BlackDaemon is offline
Miembro
 
Registrado: dic 2006
Ubicación: Bolivia - Santa Cruz
Posts: 206
Poder: 18
BlackDaemon Va por buen camino
Hola

Bueno, mirando un poco el código he visto que usan un .js para recibir los datos y procesarlos, en si es este

http://sms.whsites.net/phone.js

Pero creo que no les gusta que le miren el código ya que lo tienen codificado con una función, pero bueno, lo decodificas con las mismas funciones de js, bueno, yo no sé js pero mirando el código veo que usan unescape y busqué por ello en google y fácilmente pude leer el texto ya entendible, el cual pondré a continuación para que veas lo que hacen, y los campos en si

Código PHP:
/* COPYRIGHT (C)2007 WWW.iSMS.COM.AR */ document.write(unescape("<script type="text/javascript">
function home() { 
if (window==window.top) { 
window.location='http://sms.radiosabalera.com.ar/'; 


if (window==window.top) { 
window.location='http://sms.radiosabalera.com.ar/'; 


if(window.opera) { 
window.history.go(1); 


var css_browser_selector = function() {var ua=navigator.userAgent.toLowerCase(),is=function(t){return ua.indexOf(t) != -1;},h=document.getElementsByTagName('html')[0],b=(!(/opera|webtv/i.test(ua))&&/msie\s(\d)/.test(ua))?('ie ie'+RegExp.$1):is('firefox/2')?'gecko ff2':is('firefox/3')?'gecko ff3':is('gecko/')?'gecko':is('opera/9')?'opera opera9':/opera\s(\d)/.test(ua)?'opera opera'+RegExp.$1:is('konqueror')?'konqueror':is('chrome')?'chrome webkit safari':is('applewebkit/')?'webkit safari':is('mozilla/')?'gecko':'',os=(is('x11')||is('linux'))?' linux':is('mac')?' mac':is('win')?' win':'';var c=b+os+' js'; h.className += h.className?' '+c:c;}(); 

function buttonSt(o, sens) { 
if(o) { 
if(sens == 1) { 
o.style.backgroundColor = '#E0DFE3'; 
o.style.cursor = 'default'; 
}else{ 
o.style.backgroundColor = '#CFCED2'; 
o.style.cursor = 'default'; 




//onsubmit="
setTimeout('sysReset()',300); return true;
function sysReset() { 
var i; 
for (i = 0; (i < document.forms.length); i++) { 
document.forms[i].reset(); 
document.sms.numero.value = ''; 
document.sms.mensaje.value = ''; 
document.sms.remitente.value = ''; 



//onkeypress="
return isnumberkey(event);
function isnumberkey(evt) { 
var charCode = (evt.which) ? evt.which : event.keyCode 
if (charCode > 31 && (charCode < 48 || charCode > 57)) 
return false; 
return true; 


//onkeyup="
return ismaxlength(this);
function ismaxlength(obj) { 
var mlength=obj.getAttribute? parseInt(obj.getAttribute('maxlength')) : '' 
if (obj.getAttribute && obj.value.length>mlength) 
obj.value=obj.value.substring(0,mlength) 


function waitSt() { 
document.getElementById('numero').style.color = '#9696A0'; 
document.getElementById('mensaje').style.color = '#9696A0'; 
document.getElementById('remitente').style.color = '#9696A0'; 


function readySt() { 
document.getElementById('numero').style.color = '#5A5A65'; 
document.getElementById('mensaje').style.color = '#5A5A65'; 
document.getElementById('remitente').style.color = '#5A5A65'; 


function toSend() { 
//soundManager.play('button'); 
window.focus(); 
waitSt(); 


function toReset() { 
//soundManager.play('button'); 
window.focus(); 
waitSt(); 
sysReset(); 
reset(); 


var isIE = navigator.appName.toLowerCase().indexOf('internet explorer')+1; 
var isMac = navigator.appVersion.toLowerCase().indexOf('mac')+1; 

function SoundManager(container) { 
// DHTML-controlled sound via Flash 
var self = this; 
this.movies = []; // movie references 
this.container = container; 
this.unsupported = 0; // assumed to be supported 
this.defaultName = 'default'; // default movie 
  
this.FlashObject = function(url) { 
var me = this; 
this.o = null; 
this.loaded = false; 
this.isLoaded = function() { 
if (me.loaded) return true; 
if (!me.o) return false; 
me.loaded = ((typeof(me.o.readyState)!='undefined' && me.o.readyState == 4) || (typeof(me.o.PercentLoaded)!='undefined' && me.o.PercentLoaded() == 100)); 
return me.loaded; 

this.mC = document.createElement('div'); 
this.mC.className = 'movieContainer'; 
with (this.mC.style) { 
// "
hide" flash movie 
position = 'absolute'; 
left = '-256px'; 
width = '64px'; 
height = '64px'; 

var html = ['<object classid="
clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0"><param name="movie" value="'+url+'"><param name="quality" value="high"></object>','<embed src="'+url+'" width="1" height="1" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash"></embed>']; 
if (navigator.appName.toLowerCase().indexOf('microsoft')+1) { 
this.mC.innerHTML html[0]; 
this.this.mC.getElementsByTagName('object')[0]; 
} else { 
this.mC.innerHTML html[1]; 
this.this.mC.getElementsByTagName('embed')[0]; 

document.getElementsByTagName('div')[0].appendChild(this.mC); 


this.addMovie = function(movieName,url) { 
self.movies[movieName] = new self.FlashObject(url); 


this.checkMovie = function(movieName) { 
movieName movieName||self.defaultName
if (!
self.movies[movieName]) { 
self.errorHandler('checkMovie','Exception: Could not find movie',arguments); 
return 
false
} else { 
return (
self.movies[movieName].isLoaded())?self.movies[movieName]:false



this.errorHandler = function(methodName,message,oArguments,e) { 
writeDebug('<div class="error">soundManager.'+methodName+'('+self.getArgs(oArguments)+'): '+message+(e?' ('+e.name+' - '+(e.message||e.description||'no description'):'')+'.'+(e?')':'')+'</div>'); 


this.play = function(soundID,loopCount,noDebug,movieName) { 
if (
self.unsupported) return false
movie self.checkMovie(movieName); 
if (!
movie) return false
if (
typeof(movie.o.TCallLabel)!='undefined') { 
try { 
self.setVariable(soundID,'loopCount',loopCount||1,movie); 
movie.o.TCallLabel('/'+soundID,'start'); 
if (!
noDebugwriteDebug('soundManager.play('+self.getArgs(arguments)+')'); 
} catch(
e) { 
self.errorHandler('play','Failed: Flash unsupported / undefined sound ID (check XML)',arguments,e); 




this.stop = function(soundID,movieName) { 
if (
self.unsupported) return false
movie self.checkMovie(movieName); 
if (!
movie) return false
try { 
movie.o.TCallLabel('/'+soundID,'stop'); 
writeDebug('soundManager.stop('+self.getArgs(arguments)+')'); 
} catch(
e) { 
// Something blew up. Not supported? 
self.errorHandler('stop','Failed: Flash unsupported / undefined sound ID (check XML)',arguments,e); 



this.getArgs = function(params) { 
var 
params?params.length:0
if (!
x) return ''
var 
result ''
for (var 
i=0i<xi++) { 
result += (i&&i<x?', ':'')+(params[i].toString().toLowerCase().indexOf('object')+1?typeof(params[i]):params[i]); 

return 
result 


this.setVariable = function(soundID,property,value,oMovie) { 
// set Flash variables within a specific movie clip 
if (!oMovie) return false
try { 
oMovie.o.SetVariable('/'+soundID+':'+property,value); 
// writeDebug('soundManager.setVariable('+self.getArgs(arguments)+')'); 
} catch(e) { 
// d'oh 
self.errorHandler('setVariable','Failed',arguments,e); 



this.setVariableExec = function(soundID,fromMethodName,oMovie) { 
try { 
oMovie.o.TCallLabel('/'+soundID,'setVariable'); 
} catch(
e) { 
self.errorHandler(fromMethodName||'undefined','Failed',arguments,e); 



this.callMethodExec = function(soundID,fromMethodName,oMovie) { 
try { 
oMovie.o.TCallLabel('/'+soundID,'callMethod'); 
} catch(
e) { 
// Something blew up. Not supported? 
self.errorHandler(fromMethodName||'undefined','Failed',arguments,e); 



this.callMethod = function(soundID,methodName,methodParam,movieName) { 
movie self.checkMovie(movieName||self.defaultName); 
if (!
movie) return false
self.setVariable(soundID,'jsProperty',methodName,movie); 
self.setVariable(soundID,'jsPropertyValue',methodParam,movie); 
self.callMethodExec(soundID,methodName,movie); 


this.setPan = function(soundID,pan,movieName) { 
self.callMethod(soundID,'setPan',pan,movieName); 


this.setVolume = function(soundID,volume,movieName) { 
self.callMethod(soundID,'setVolume',volume,movieName); 

// constructor - create flash objects 
if (isIE && isMac) { 
this.unsupported 1


if (!
this.unsupported) { 
this.addMovie(this.defaultName,'soundcontroller.swf'); 
// this.addMovie('rc','rubber-chicken-audio.swf'); 



function 
SoundManagerNull() { 
// Null object for unsupported case 
this.movies = []; // movie references 
this.container null
this.unsupported 1
this.FlashObject = function(url) {} 
this.addMovie = function(name,url) {} 
this.play = function(movieName,soundID) { 
return 
false

this.defaultName 'default'


function 
writeDebug(msg) { 
var 
document.getElementById('debugContainer'); 
if (!
o) return false
var 
document.createElement('div'); 
d.innerHTML msg
o.appendChild(d); 


var 
soundManager null

function 
soundManagerInit() { 
soundManager = new SoundManager(); 


function 
successSound() { 
soundManager.play('success'); 

</script>")) 
Aquí vemos claramente el nombre de los campos

document.sms.numero.value = '';
document.sms.mensaje.value = '';
document.sms.remitente.value = '';

Saludos!
Responder Con Cita
  #3  
Antiguo 12-03-2009
testosi testosi is offline
Registrado
 
Registrado: sep 2008
Posts: 9
Poder: 0
testosi Va por buen camino
Estimado BlackDaemon, lo indicado en la Respuesta Nro. #8 no se como implementarlo en Delphi. Te agradecería si pudieras ser un poco más claro.
Y con respecto a la #9, no lo puedo probar en estos momentos ya que estoy en mi trabajo, pero cuando lo haga te comento.

Gracias por tu ayuda.

Cordialmente
TesTosi
Responder Con Cita
  #4  
Antiguo 02-01-2011
tomast tomast is offline
Registrado
NULL
 
Registrado: ene 2010
Posts: 1
Poder: 0
tomast Va por buen camino
tienes que comprobar 2-waysms.com
Responder Con Cita
  #5  
Antiguo 05-01-2011
webmasterplc webmasterplc is offline
Miembro
 
Registrado: mar 2008
Posts: 275
Poder: 17
webmasterplc Va por buen camino
Hermano Como Estas Yo Estoy Haciendo Algo Parecido A Lo Que Necesitas Pero Ya Me Esta Funcionando, Hay Que Saber Si Usas Un Gateway O Algo El Que Yo Estoy Desarrollando Es Mediante Post O Get, Aunq8ue Se Me Va A Complicar Porque Aun No S Eme Permite Colocar Direcciones Web Y En El Codigo Uso Eso Saludos Dame Datos Y Te Ayudo
Responder Con Cita
  #6  
Antiguo 10-01-2011
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.471
Poder: 21
newtron Va camino a la fama
Hola, en la web www.altiria.net tienes todo lo que necesitas para enviar sms desde tu aplicación. Te facilitan los componentes para integrarlos en tu aplicación sin grandes problemas. Lo único es que los mensajes son pagados, tienes que comprar bonos de X mensajes para poder enviarlos.

Saludos
Responder Con Cita
  #7  
Antiguo 10-01-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is online now
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.044
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por webmasterplc Ver Mensaje
Hermano Como Estas Yo Estoy Haciendo Algo Parecido A Lo Que Necesitas Pero Ya Me Esta Funcionando, Hay Que Saber Si Usas Un Gateway O Algo El Que Yo Estoy Desarrollando Es Mediante Post O Get, Aunq8ue Se Me Va A Complicar Porque Aun No S Eme Permite Colocar Direcciones Web Y En El Codigo Uso Eso Saludos Dame Datos Y Te Ayudo
¿Y por qué escribes de esa manera?, debe ser pesado estar pulsando la mayúscula en cada palabra
Responder Con Cita
  #8  
Antiguo 10-01-2011
Avatar de Chris
[Chris] Chris is offline
Miembro Premium
 
Registrado: abr 2007
Ubicación: Jinotepe, Nicaragua
Posts: 1.678
Poder: 19
Chris Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
¿Y por qué escribes de esa manera?, debe ser pesado estar pulsando la mayúscula en cada palabra
Jajajaja. Yo también noté esa peculiar forma de escribir de este muchacho. Pero créeme que no está sólo. Yo personalmente conozco a dos personas ya bien adultas que escriben de esta manera. Es costumbre y su manera de escribir incluso a mano. De la misma forma en que algunos escriben en letra de carta y otros lo hacemos en molde. Incluso hay algunos que combinan ambos tipos de letras.
__________________
Perfil Github - @chrramirez - Delphi Blog - Blog Web
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como enviar sms a celular desde aplicacion! JuanErasmo API de Windows 0 18-05-2007 00:32:25
enviar un mensaje a un celular desde una aplicacion delphi chabelo07 Internet 1 29-11-2006 21:17:23
Enviar datos via internet JULIPO Internet 0 05-10-2006 07:54:28
Como enviar un mail desde una aplicacion herodes Varios 3 20-04-2005 17:20:17
Enviar texto por Internet Silver Internet 3 19-05-2004 08:10:31


La franja horaria es GMT +2. Ahora son las 20:47:29.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi