¿Cómo puedo hacer una llamada VoIP punto a punto a través de Wi-Fi?

Estoy buscando una manera de hacer una llamada VoIP punto a punto entre dos dispositivos Android sin tener ningún servidor intermedio (servidor SIP) o una conexión a Internet. Solo tengo un punto de acceso (o múltiples puntos de acceso conectados a través de LAN) y quiero hacer llamadas VoIP solo a través de Wi-Fi. es posible?

He reformulado un poco su pregunta, ya que las recomendaciones de aplicaciones generalmente están fuera de tema (son esencialmente recomendaciones de compras). Sin embargo, si existe una aplicación que admita esta funcionalidad, será una respuesta tan válida a esta pregunta reformulada como a la original.
zix> ¿Encontraste una manera de hacer esto?

Respuestas (2)

Puede usar CSipSimple para agregar una cuenta SIP local en ambos teléfonos sin necesidad de un proxy (o servidor) SIP intermedio.

Agregue una cuenta 'Local' general. Solo tiene que proporcionar un nombre de usuario SIP para ello.

Cuando se hace eso en ambos teléfonos, puede llamar al otro teléfono:

  • Tienes que saber la dirección IP o el nombre dns del otro teléfono
  • Necesita saber el nombre de usuario SIP recién configurado del otro teléfono
  • Marque 'SIPusername@IP-address' para llamar al otro teléfono
  • Debe cambiar del teclado numérico que se muestra inicialmente a la ventana de entrada extendida 'SIP uri'

Haga clic en el punto verde marcado en la imagen de la izquierda para navegar a la actividad de entrada SIP :

ingrese la descripción de la imagen aquíingrese la descripción de la imagen aquí

Acabo de probar el modo "Local" de CSipSimple con la función "Punto de acceso Wi-Fi". Falla debido a la idea de "sin red => no escuchará 5060" ...
¿Estás conectado a alguna red wifi? Ese es el único requisito previo (el OP ya declaró tener un punto de acceso)
El dispositivo actúa como AP Wi-Fi en sí mismo. Un dispositivo es AP, otro dispositivo es su cliente. En el dispositivo cliente todo está bien, pero en el dispositivo AP es "sin red".
La función AP de Android es solo para anclaje, es decir, solo puede usarla para exponer la conexión a Internet 3G a otros teléfonos. La comunicación entre el cliente y el dispositivo AP está protegida por cortafuegos. Debe configurar un wifi ad-hoc para obtener conectividad de dispositivo a dispositivo. Simplemente use un modo ad-hoc o un AP real en su lugar.
Pero también es bueno conectar dos dispositivos cuando están "lejos de la civilización". Pueden trabajar en red, pero uno de ellos "piensa" que no hay red. Especialmente extraño para el modo "Local" de CSipSimple, que está diseñado para funcionar sin servidor.
aunque tiene sentido. la red AP normalmente es un callejón sin salida ya que solo hay clientes a los que usted proporciona Internet. desde un punto de vista programático, lo más probable es que esté marcado como desconectado. Digamos que quieres descargar algo e intentaría ese callejón sin salida. fallar. la única conexión inet activa y real es 3g, que no le gusta al modo local. use ad hoc o una pequeña aplicación portátil
"usar ad hoc" => El modo ad hoc configurado en la consola Linux del dispositivo rooteado tampoco es "una red real" para las aplicaciones. "o un pequeño ap portátil" => ¿Solo para solucionar esta lógica "demasiado inteligente"? Quiero configurar las cosas para que funcionen como "wifi walkie-tolkie".
tal vez perder el tiempo con 'ip route', darle a la red wifi una ip + una def. puerta de enlace o use una aplicación de terceros, anclaje wifi barnacle. Solo mis pensamientos, no tengo experiencia con este tipo de problema. Necesitaría probar más para poder dar un mejor consejo, lo siento. +: el OP ya declaró que tiene un AP dedicado. quizás también sea posible: use un tercer teléfono como AP
El tercer teléfono funcionará. La "ruta ip" es algo del nivel de Linux, pero los problemas radican en el nivel de Android. No le gusta cuando la red no está siendo configurada por Android.

Use uSipServer + SipDroid (o cualquier cliente SIP) configurado en una dirección IP explícita.

Como un dispositivo tiene uSipServer, inició Wi-Fi AP (en el menú "Tethering") y SipDroid se conectó a test1@127.0.0.1. Otro dispositivo se conecta a Wi-Fi y usa la cuenta SIP test2@192.168.43.1 y llama a "test1".

Actualización: acabo de probar que esta configuración realmente funciona:

  1. Ponga el primer dispositivo en el modo "Punto de acceso portátil" (Configuración -> Conexiones inalámbricas y redes -> Anclaje a red y punto de acceso portátil -> Punto de acceso Wi-Fi portátil)
  2. Inicie uSipServer en el primer dispositivo
  3. Conecte el segundo dispositivo al AP creado por el primero (Configuración -> Conexiones inalámbricas y redes -> Configuración Wi-Fi -> Redes Wi-Fi -> "X10i" (o el nombre que sea)
  4. Inicie SipDroid en el segundo dispositivo, especificando, por ejemplo, "qqq" como usuario y "192.168.43.1" como servidor SIP. El indicador se vuelve verde.
  5. Inicie SipDroid en el primer dispositivo, especificando, por ejemplo, "eee" como usuario y "192.168.43.1" o "127.0.0.1" como servidor. El indicador permanece amarillo.
  6. Puede llamar desde el segundo dispositivo al primero, especificando "eee" en el campo de llamada inferior; puede llamar desde el primer dispositivo al segundo, especificando "qqq" en el campo de llamada inferior. No hay entidades externas (como puntos de acceso adicionales o proveedor celular) involucradas.

Probé con otros clientes SIP (como CSipSimple y Linphone), pero se niegan a trabajar en el primer dispositivo cuando no hay una red "normal" configurada. Y SipDroid (que afortunadamente es lo suficientemente tonto como para pasar por alto la "ausencia" de la red) no es compatible con el códec con todo lo demás que probé.

Tenga en cuenta que si hay otras conexiones de red presentes, SipDroid puede confundirlas y enviar la IP incorrecta a su par, lo que resulta en un teléfono "unidireccional". Realice la prueba solo con hotstop Wi-Fi/cliente Wi-Fi habilitado.