Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: LICHONGO en 16 Octubre 2007, 21:48 pm



Título: Central Telefonica. Se Puede?
Publicado por: LICHONGO en 16 Octubre 2007, 21:48 pm
Hola a todos, estoy haciendo una agenda telefonica y me hice la pregunta de que si era posible realizar llamadas con una aplicacion en visual basic 6.0 estuve buscando material y no he encontrado casi nada, si alguien tiene un material que me pueda servir se lo agradeceria que me lo pasara.

muchas gracias


Título: Re: Central Telefonica. Se Puede?
Publicado por: sch3m4 en 16 Octubre 2007, 21:53 pm
Si tienes acceso a internet por modem, puedes usar el control mscomm. A penas lo he usado, pero seguro que encuentras algo en google.


Título: Re: Central Telefonica. Se Puede?
Publicado por: LICHONGO en 16 Octubre 2007, 21:57 pm
Gracias por la ayuda, ese tema si lo encuentro vastante en internet el de hacer llamadas con un programa VOIP pero ese tipo de programa no es que quiero realizar yo quiero hacer una aplicacion sencilla que realize llamada entre estenciones telefonicas como una especie de central virtual... gracias


Título: Re: Central Telefonica. Se Puede?
Publicado por: sch3m4 en 16 Octubre 2007, 22:07 pm
No te hablo de VoIp, sino de marcar el número de teléfono con el módem, como si fuera el teléfono (que es realmente lo que es).


Título: Re: Central Telefonica. Se Puede?
Publicado por: CeLaYa en 17 Octubre 2007, 03:43 am
a ver si esto te sirve

vas a necesitar poner en un form:

1 textbox que se llame txtPuerto
1 textbox que se llame txtNum
1 commandbutton que se llame cmdMarcar
1 commandbutton que se llame cmdColgar
2 optionButton (opTonos y opPulsos)
y el control MSComm
(parece receta de cocina jajajajajja)


Código:
Option Explicit
Dim objComunicar

Public Sub marcarNumeroTelefono(numero As String)
  Dim cadConexion As String
  Dim resultado As Integer
  Dim modem As String
   
  On Error GoTo cError
    MousePointer = 11
  Set objComunicar = CreateObject("MSCommLib.MSComm")
 
  'Enviamos la cadena ATDT que equivale a
  'descolgar el modem y marcar el número indicado por tonos
  'ATDP por pulsos
  If opTonos.Value = True Then
    cadConexion$ = "ATDT" + numero + ";" + Chr$(13)
  End If
  If opPulsos.Value = True Then
    cadConexion$ = "ATDP" + numero + ";" + Chr$(13)
  End If
 
  'Indicaremos el puerto COM a utilizar (donde esté conectado el módem)
  objComunicar.CommPort = CInt(txtPuerto.Text)
 
  'En la configuración le indicaremos
    '300 = 300 baudios (velocidad)
    'N = sin paridad
    '8 = 8 bits de datos
    '1 = bit de parada
  objComunicar.Settings = "300,N,8,1"
   
  If Not objComunicar.PortOpen Then objComunicar.PortOpen = True
   
  'Liberamos el búfer de salida
  objComunicar.InBufferCount = 0
   
  'Enviamos los comandos AT con el número al módem
  objComunicar.Output = cadConexion$
   
  'Esperamos a recibir "OK" desde el módem
  Do
    resultado = DoEvents()
    ' Si hay datos en el Buffer los leemos
    If objComunicar.InBufferCount Then
      modem$ = modem$ + objComunicar.Input
      'Comprobamos si los datos leídos son "OK"
      If InStr(modem$, "OK") Then
        'Podemos indicar al usuario que descuelgue el teléfono
        MsgBox "Descuelge su teléfono y pulse 'Aceptar' para cerrar" _
            + " el módem. Podrá continuar la llamada en su teléfono." _
            + Chr(13) + Chr(13) + "Recuerde que si pulsa 'Aceptar' " _
            + "sin descolgar su teléfono se cortará la llamada.", _
            vbInformation + vbOKOnly
        Exit Do
      End If
    End If
  Loop
   
  'Desconectamos el módem, para ello enviamos el comando "ATH"
  objComunicar.Output = "ATH" + Chr$(13)
  'Cerramos el puerto
  objComunicar.PortOpen = False
    MousePointer = 0
cSalir:
  Exit Sub
 
cError:
  MsgBox "Error en la marcación del número de teléfono: " & _
      Err.Number & " - " & Err.Description, vbExclamation
  GoTo cSalir
End Sub


Private Sub cmdColgar_Click()
  On Error GoTo cError
  'Desconectamos el módem, para ello enviamos el comando "ATH"
  objComunicar.Output = "ATH" + Chr$(13)
 
cSalir:
  Exit Sub
 
cError:
  MsgBox "Error en la marcación del número de teléfono: " & _
      Err.Number & " - " & Err.Description, vbExclamation
  GoTo cSalir
End Sub

Private Sub cmdMarcar_Click()
    marcarNumeroTelefono txtNum.Text
End Sub


Título: Re: Central Telefonica. Se Puede?
Publicado por: LICHONGO en 17 Octubre 2007, 13:49 pm
Muchas Gracias Celaya eso es precisamente lo que queria hacer pero lo que hace falta es recivir llamadas, no seria mucho pedir si tambien tienes ese codigo.