tunnel created?

This commit is contained in:
shinichi
2020-09-16 14:18:56 +02:00
parent 359484baa3
commit 119f6384b6
2 changed files with 35 additions and 14 deletions

View File

@@ -33,10 +33,11 @@ namespace RH_Engine
Newtonsoft.Json.Linq.JArray data = jsonData.data; Newtonsoft.Json.Linq.JArray data = jsonData.data;
foreach (dynamic d in data) foreach (dynamic d in data)
{ {
foreach(PC pc in PCs) foreach (PC pc in PCs)
{ {
if (d.clientinfo.host == pc.host && d.clientinfo.user == pc.user) if (d.clientinfo.host == pc.host && d.clientinfo.user == pc.user)
{ {
Console.WriteLine("connecting to {0}, on {1} with id {2}", pc.user, pc.host, d.id);
return d.id; return d.id;
} }
} }
@@ -45,6 +46,16 @@ namespace RH_Engine
return null; return null;
} }
public static string GetTunnelID(string json)
{
dynamic jsonData = JsonConvert.DeserializeObject(json);
if (jsonData.data.status == "ok")
{
return jsonData.data.id;
}
return null;
}
} }
} }

View File

@@ -10,7 +10,7 @@ namespace RH_Engine
internal class Program internal class Program
{ {
private static PC[] PCs = { private static PC[] PCs = {
new PC("DESKTOP-M2CIH87", "Fabian"), new PC("DESKTOP-M2CIH87", "F@bian"),
new PC("T470S", "Shinichi"), new PC("T470S", "Shinichi"),
new PC("NA", "Sem"), new PC("NA", "Sem"),
new PC("NA", "Wouter"), new PC("NA", "Wouter"),
@@ -34,7 +34,7 @@ namespace RH_Engine
stream.Write(res); stream.Write(res);
Console.WriteLine("sent message " + message); //Console.WriteLine("sent message " + message);
} }
public static string ReadPrefMessage(NetworkStream stream) public static string ReadPrefMessage(NetworkStream stream)
@@ -50,7 +50,6 @@ namespace RH_Engine
byte[] buffer = new byte[length]; byte[] buffer = new byte[length];
int totalRead = 0; int totalRead = 0;
//read bytes until stream indicates there are no more
do do
{ {
int read = stream.Read(buffer, totalRead, buffer.Length - totalRead); int read = stream.Read(buffer, totalRead, buffer.Length - totalRead);
@@ -63,16 +62,26 @@ namespace RH_Engine
private static void CreateConnection(NetworkStream stream) private static void CreateConnection(NetworkStream stream)
{ {
//WriteTextMessage(stream, "{\r\n\"id\" : \"session/list\"\r\n}");
//string msg = ReadPrefMessage(stream);
//Console.WriteLine(msg);
//string id = JSONParser.GetSessionID(msg, PCs);
//Console.WriteLine(id);
WriteTextMessage(stream, "{\r\n\"id\" : \"session/list\"\r\n}"); WriteTextMessage(stream, "{\r\n\"id\" : \"session/list\"\r\n}");
string result = ReadPrefMessage(stream); string id = JSONParser.GetSessionID(ReadPrefMessage(stream), PCs);
Console.WriteLine(result);
//JSONParser.Parse(result); string tunnelCreate = "{\"id\" : \"tunnel/create\", \"data\" : {\"session\" : \"" + id + "\"}}";
WriteTextMessage(stream, tunnelCreate);
string tunnelResponse = ReadPrefMessage(stream);
Console.WriteLine(tunnelResponse);
string tunnelID = JSONParser.GetTunnelID(tunnelResponse);
Console.WriteLine("tunnelID is: " + tunnelID);
string sceneReset = "{\"id\" : \"tunnel/send\", \"data\" : {\"dest\" : \"" + tunnelID + "\",\"data\" :{\"id\" : \"scene/reset\",\"data\" : { }}}}}";
//string sceneReset = "{\"id\" : \"scene/reset\"}";
WriteTextMessage(stream, sceneReset);
Console.WriteLine(ReadPrefMessage(stream));
} }
} }
@@ -88,3 +97,4 @@ namespace RH_Engine
public string user { get; } public string user { get; }
} }
} }