64 lines
1.6 KiB
C#
64 lines
1.6 KiB
C#
using System.Net;
|
|
using System.Net.Sockets;
|
|
using System.Text;
|
|
using EFBTracker.Tracking;
|
|
using EFBTracker.Mongo;
|
|
|
|
string email;
|
|
|
|
while (true)
|
|
{
|
|
try
|
|
{
|
|
Console.Write("Please enter your AutoRouter E-Mail: ");
|
|
email = Console.ReadLine().Trim().ToLower();
|
|
|
|
if (email.Count(x => (x == '@')) == 1)
|
|
{
|
|
break;
|
|
}
|
|
|
|
Console.Clear();
|
|
Console.WriteLine("Please enter a valid email!");
|
|
}
|
|
catch (System.Exception ex)
|
|
{
|
|
|
|
}
|
|
}
|
|
|
|
int listenPort = 49003;
|
|
|
|
using(UdpClient listener = new UdpClient(listenPort))
|
|
{
|
|
try
|
|
{
|
|
IPEndPoint listenEndPoint = new IPEndPoint(2130706433, listenPort);
|
|
while(true)
|
|
{
|
|
Console.WriteLine("Awaiting Simulator conenction...");
|
|
|
|
byte[] receivedData = listener.Receive(ref listenEndPoint);
|
|
|
|
Console.Clear();
|
|
Console.Write($"Currently logged in as {email} \n \n");
|
|
Console.Write("Receiving broadcast message from {0} \n", listenEndPoint.ToString());
|
|
Console.Write("Decoded data is: \n");
|
|
|
|
Packet[]? data = Packet.ReadPackets(receivedData);
|
|
|
|
if (data != null)
|
|
{
|
|
SimPosition position = new SimPosition(data);
|
|
await Mongo.UploadSimPosition(email, position);
|
|
Console.Write($"Latitude: {position.Latitude} Longitude: {position.Longitude} Altitude: {position.Altitude} \n");
|
|
}
|
|
}
|
|
}
|
|
catch (System.Exception ex)
|
|
{
|
|
Console.WriteLine(ex.Message);
|
|
Console.ReadLine();
|
|
}
|
|
}
|