elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Entrar al Canal Oficial Telegram de elhacker.net


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  MSCOMM - Manejar el celular desde la PC
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: MSCOMM - Manejar el celular desde la PC  (Leído 14,134 veces)
extreme69

Desconectado Desconectado

Mensajes: 178


Be BlackHat but don't forget your principles.


Ver Perfil
MSCOMM - Manejar el celular desde la PC
« en: 1 Marzo 2011, 07:59 am »

Hace 2 días que estoy intentando que esto me funcione...

No encontré absolutamente nada en el foro sobre este control.

Código:
| |-+  Resultados de la búsqueda
Páginas: [1]
No se encontraron resultados
Páginas: [1]

Si encontré unos ... 1200 ejemplos distintos... pero obviamente me falta algo porque no logro hacer que me funcione.

Paso a explicar... estoy intentando manejar el celular desde la pc, ¿para que? bueno, mando muchos sms por día y me queda más cómodo escribirlos en un teclado de pc que en el celular.

Así que estoy intentando hacer un programa que me permita desde el pc enviar sms (con el celular conectado por usb).

Bueno, mis primeras pruebas fueron 100% exitosas, utilicé hyperterminal para conectarme al COM correspondiente y luego jugué con comandos AT hasta lograr enviar el SMS con éxito.

Pongo los comandos y describo cada línea:

Código:
AT 'son comandos AT
OK
AT+CMGF=1 'manejar el mensaje en formato texto
OK
AT+CMGW="+666" 'mandar sms a este numero
> Testeo de texto largo para probar bla bla bla bla bla bla bla bla bla. 'contenido del sms a enviar
+CMGW: 14398

OK
AT+CMSS=14398
+CMSS: 20

OK

Ahora lo quiero hacer en VB6... y me encuentro con importantes inconvenientes.

Primero que nada creé una función con un "sleep" improvisado... el código sería algo así:

Código:
Sub Espera(Segundos As Single)
  Dim ComienzoSeg As Single
  Dim FinSeg As Single
  ComienzoSeg = Timer
  FinSeg = ComienzoSeg + Segundos
  Do While FinSeg > Timer
      DoEvents
      If ComienzoSeg > Timer Then
          FinSeg = FinSeg - 24 * 60 * 60
      End If
  Loop
End Sub

Luego agregué el control MSComm y un botón con el siguiente código:

Código:
MSComm1.InputLen = 0
MSComm1.CommPort = "3" ' Com3 Port
Espera (1)
MSComm1.Settings = "57600,n,8,1"
Espera (1)
MSComm1.PortOpen = True
Espera (1)
MSComm1.Output = "AT" & Chr(10)
Espera (1)
MSComm1.Output = "AT+CMGF=1" & Chr(10)
Espera (1)
MSComm1.Output = "AT+CMGW=" & "+666" & Chr$(13) & Chr(13) & Chr(10)
Espera (1)
MSComm1.Output = "Contenido sms aca" & Chr(26)

Pero esto NO me funciona... aunque está igual de seteado que el hyperterminal...

Por otro lado, si pretendo enviar sms desde un programa, debo saber el "index" del mensaje a enviar, en el caso del hyperterminal como lo hago a mano ví que el index del mensaje a enviar era "14398", para luego utilizar CMSS=14398 para enviar el sms, pero si lo hago con el soft ¿como hago que determine este número para luego usarlo en CMSS?

Podría usar MSComm.Input = RichTextBox1.Text y mid para sacar el contenido, pero no funciona tampoco, obviamente estoy haciendo algo mal.

¿Un poco de luz?  ;-)


En línea

BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.158


I'Love...!¡.


Ver Perfil WWW
Re: MSCOMM - Manejar el celular desde la PC
« Respuesta #1 en: 1 Marzo 2011, 11:05 am »

.
No estas respectando la sintasis de los comandos AT, Prueba con esto:

Alternativa al OCX.
Clase para los puertos Com hecha por Coco/Cocus.

Código
  1.  
  2. Option Explicit
  3.  
  4. Private WithEvents obj_clscom           As clsCom
  5.  
  6. '
  7. '   /////////////////////////////////////////////////////////////
  8. '   // Autor:   BlackZeroX ( Ortega Avila Miguel Angel )       //
  9. '   //                                                         //
  10. '   // Web:     http://InfrAngeluX.Sytes.Net/                  //
  11. '   //                                                         //
  12. '   //    |-> Pueden Distribuir Este codigo siempre y cuando   //
  13. '   // no se eliminen los creditos originales de este codigo   //
  14. '   // No importando que sea modificado/editado o engrandecido //
  15. '   // o achicado, si es en base a este codigo                 //
  16. '   /////////////////////////////////////////////////////////////
  17. '   // http://infrangelux.sytes.net/Blog/index.php?option=com_content&view=article&id=6:artwait&catid=2:catprocmanager&Itemid=8
  18. '   /////////////////////////////////////////////////////////////
  19.  
  20. Private Declare Function WaitMessage Lib "user32" () As Long
  21.  
  22. Enum eTime
  23.    Horas = 3600
  24.    Minutos = 60
  25.    Segundos = 1
  26. End Enum
  27.  
  28. Public Sub Wait(ByVal vToWait&, Optional ByVal ThisWait As eTime = Segundos, Optional ByVal UseAllProc As Boolean = False)
  29. Dim vDateE      As Date
  30.    vDateE = DateAdd("s", vToWait& * (ThisWait + 0), Time)
  31.    Do While vDateE > Time
  32.        Call WaitMessage
  33.        If Not UseAllProc Then DoEvents
  34.    Loop
  35. End Sub
  36. Private Sub Form_Load()
  37.    Set obj_clscom = New clsCom
  38.    With obj_clscom
  39.        .ComPort = 4
  40.        .ComSettings = "57600,N,8,1"    ' 57600 bps, sin paridad, 8 bits de data, 1 bit de stop
  41.        .TimerDelay = 1000              ' 1000ms = 1 Segundo para chequear si entro data
  42.        .TimerEnabled = True
  43.        If .InitCom Then
  44.            Call .WriteCom("AT" & vbCr)
  45. ' wait()
  46.            Call .WriteCom("AT+CMGF=1" & vbCr)
  47. ' wait()
  48.            Call .WriteCom("AT+CMGS=" & Chr(34) & "0445526651140" & Chr(34) & vbCr) ' // Segun el protocolo lo que nos retorna es +CMGS: <Num. Identificador>
  49. ' wait()
  50.            Call .WriteCom("Espero una jalada en mi cel, aun que ya no tengo credito xP" & Chr(26))    ' 26 = Ctrl+Z ( Segun el protocolo AT )
  51.        End If
  52.    End With
  53. End Sub
  54.  
  55. Private Sub Form_Unload(Cancel As Integer)
  56.    Set obj_clscom = Nothing
  57. End Sub
  58.  
  59. Private Sub obj_clscom_DataReceived(ByVal strData As String)
  60.    Debug.Print strData
  61.    If InStr(1, strData, "+CMGS:") > 0 Then
  62.        If InStr(1, strData, "OK") > 0 Then
  63.            Dim str_Ret()       As String
  64.            str_Ret() = Split(Replace(Replace(strData, vbCr, ""), "OK", ""), " ")
  65.            Call obj_clscom.WriteCom("AT+CMSS=" & Val(str_Ret(1)) & vbCr)
  66.        End If
  67.    End If
  68. End Sub
  69.  
  70.  

Temibles Lunas!¡.


« Última modificación: 1 Marzo 2011, 11:57 am por BlackZeroX▓▓▒▒░░ » En línea

The Dark Shadow is my passion.
-- KiLiaN --


Desconectado Desconectado

Mensajes: 1.163


Ju Já!!


Ver Perfil
Re: MSCOMM - Manejar el celular desde la PC
« Respuesta #2 en: 1 Marzo 2011, 11:28 am »

Citar
Temibles Lunas!¡.

y porque ahora temibles?? xD
En línea

BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.158


I'Love...!¡.


Ver Perfil WWW
Re: MSCOMM - Manejar el celular desde la PC
« Respuesta #3 en: 1 Marzo 2011, 11:56 am »

.

OJO el codigo que puse es funcional al 100%

Tan solo con el comando
Código:
AT+CMGS
Enviara el SMS

No conozco, ni me figura en mis libros el comando:
Código:
AT+CMSS
Pero lo agregue a como creo que va.

Temibles Lunas!¡.
« Última modificación: 1 Marzo 2011, 12:01 pm por BlackZeroX▓▓▒▒░░ » En línea

The Dark Shadow is my passion.
extreme69

Desconectado Desconectado

Mensajes: 178


Be BlackHat but don't forget your principles.


Ver Perfil
Re: MSCOMM - Manejar el celular desde la PC
« Respuesta #4 en: 1 Marzo 2011, 17:37 pm »

BlackZeroX, ¿como decirlo sin sonar gay?

Sos un tierno  :-*

Tuve que cambiar algunos comandos AT pero funcionó EXCELENTE  ;-)
En línea

Psyke1
Wiki

Desconectado Desconectado

Mensajes: 1.089



Ver Perfil WWW
Re: MSCOMM - Manejar el celular desde la PC
« Respuesta #5 en: 1 Marzo 2011, 18:18 pm »

BlackZeroX, ¿como decirlo sin sonar gay?

Sos un tierno  :-*

Tuve que cambiar algunos comandos AT pero funcionó EXCELENTE  ;-)
gay :xD

DoEvents! :P
En línea

extreme69

Desconectado Desconectado

Mensajes: 178


Be BlackHat but don't forget your principles.


Ver Perfil
Re: MSCOMM - Manejar el celular desde la PC
« Respuesta #6 en: 1 Marzo 2011, 19:40 pm »

gay :xD

DoEvents! :P

Uy! ese me conoce  :-[

De paso por si alguien más está intentando hacer lo mismo que yo explico la diferencia entre CMGW y CMGS es que con CMGW el mensaje se guarda en el storage area de "mensajes salientes" y hasta que no usás CMSS=Numero_Index no se envía el mensaje.

Yo venía utilizando CMGW + CMSS y tenía un grave problema que era como obtener las respuestas para obtener el numero index del mensaje a enviar, ahora con el CMGS quedó solucionado.

Esos libros mágicos de BlackZeroX son increíbles... debe tener una biblioteca de 9000m2...  :o

Ahora noto una gran diferencia más en el CMSS... estoy haciendo las pruebas enviandome un sms a mi mismo, el mensaje llega, y lo puedo leer, PERO NO QUEDA GUARDADO EN NINGUN LADO jajajaja, es increíble... se puede leer 1 única vez, y no queda ningún rastro del mensaje luego de salir del mensaje, simplemente desaparece.

En línea

BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.158


I'Love...!¡.


Ver Perfil WWW
Re: MSCOMM - Manejar el celular desde la PC
« Respuesta #7 en: 1 Marzo 2011, 20:26 pm »

.
Tu como crees que le enviaba mensajes a la Mr. Frogs sin que tuviera evidencias de quien le envio el mensajito xP.

Con:
Código:
AT+CMGW
lo guardas

Dulces Lunas!¡.
En línea

The Dark Shadow is my passion.
extreme69

Desconectado Desconectado

Mensajes: 178


Be BlackHat but don't forget your principles.


Ver Perfil
Re: MSCOMM - Manejar el celular desde la PC
« Respuesta #8 en: 1 Marzo 2011, 20:34 pm »

Jajaja, si, si, ya ví, pero lo raro... es que se entiende que no kede en la bandeja de salida porque no se está guardando el mensaje... pero ¡¿en la de entrada tampoco?!
En línea

79137913


Desconectado Desconectado

Mensajes: 1.169


4 Esquinas


Ver Perfil WWW
Re: MSCOMM - Manejar el celular desde la PC
« Respuesta #9 en: 1 Marzo 2011, 22:33 pm »

HOLA!!!

No se si me estoy metiendo mal, pero los mensajes que conozco que no se guardan en ninguna casilla son las notificaciones de red.

GRACIAS POR LEER!!!
En línea

"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

 79137913                          *Shadow Scouts Team*
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Manejar Pc desde Telefono
Programación Visual Basic
caro.13 0 2,064 Último mensaje 22 Julio 2005, 23:01 pm
por caro.13
MANEJAR SEVICIOS DESDE VB
Programación Visual Basic
Kizar 0 1,293 Último mensaje 25 Mayo 2006, 17:53 pm
por Kizar
Manejar datos desde internet con VB 6.0
Programación Visual Basic
pungados 6 6,254 Último mensaje 12 Julio 2009, 20:59 pm
por BlackZeroX
Manejar SMF desde Java
Java
undercode2 1 2,650 Último mensaje 30 Julio 2011, 03:11 am
por Leyer
Enviando SMS desde el celular ?
.NET (C#, VB.NET, ASP)
TrashAmbishion 0 1,810 Último mensaje 7 Marzo 2013, 20:20 pm
por TrashAmbishion
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines