Spanish Hola estaba practicando con la aplicación WalkieTalkie y quería hacer socket por 3G

deneus

Member
Licensed User
Longtime User
Hola estaba practicando con la aplicación WalkieTalkie y quería hacer socket por 3G y no por IP local, he realizado estos cambios pero no hace soket:

Alguien sabe los cambios que hay que hacer?

Aplicación:
https://www.b4x.com/android/forum/attachments/walkie-talkie-zip.18141/

Public Sub UpdateUI
'this sub is responsible for updating the UI based on the state which is stored in the service
Dim wifi = True, bt = True, discover = True As Boolean
If admin.IsEnabled = False Then
bt = False
discover = False
End If
lblIP.Text = Connector.MyIP
lblWifiStatus.Text = Connector.WifiStatus
lblBTStatus.Text = Connector.BTStatus
If Connector.WifiConnected Then lblWifiStatus.TextColor = Colors.Green Else lblWifiStatus.TextColor = Colors.Red
If Connector.BTConnected Then lblBTStatus.TextColor = Colors.Green Else lblBTStatus.TextColor = Colors.Red
If spnrPairedDevices.Size = 0 Then bt = False
If Connector.BTConnected OR Connector.WifiConnected Then
wifi = False
bt = False
discover = False
End If

If wifi AND Regex.IsMatch("[^.]+\.[^.]+\.[^.]+\.[^.]+", edtIP.Text) = False Then
wifi = False
End If

Connector.MyIP=HayInternet

If Connector.MyIP.Length = 0 OR Connector.MyIP = "127.0.0.1" Then
wifi = False
End If
If searchInProgress Then bt = False
btnConnectBT.Enabled = bt
'btnConnectWifi.Enabled = wifi
btnBTSearch.Enabled = discover
btnMakeDiscoverable.Enabled = discover
lblPTT.Visible = Connector.BTConnected OR Connector.WifiConnected
End Sub

Sub HayInternet
Dim server As ServerSocket 'Add a reference to the network library
server.Initialize(0, "")
'If server.GetMyIP = "127.0.0.1" Then 'this is the local host address
'no connection
Return server.GetMyIP
'End If
Return True
End Sub
 

hibrid0

Active Member
Licensed User
Longtime User
Se me ocurre que puede requerir un Servidor que comunique los celulares. En el codigo que tienes viene un servidor. Puede que te funcione con B4J.

Lo normal que he visto de como funcionan las Aplicaciones cuando requieren acceso a internet y comunicarse:

Equipo1----->>>>Servidor en Internet-<<<<<<-------Equipo2

Esto es porque en una red local por lo general no estas conectado realmente a Internet, lo esta el Modem (E incluso algunos ISP tiene su propia red WAN) y este genera una Red Local (NAT), con Ips de acceso local.
Si requieres hacerlo sin usar un servidor también se puede, pero se requiere abrir puertos a ambos lados de la conexion y en cada cliente. Asi que es muy poco viable.

Lo normal es usar un servidor en el medio.
El servidor recibe los datos de los 2 y los reenvia al propietario. Asi hace Teamviewer, Whatsapp, Line y demas servicios similares. Muy pocos usan algo diferente.
 
Top