Shard cleanup part 1
This commit is contained in:
parent
b39def528d
commit
75e7e29b0a
|
@ -23,12 +23,7 @@ namespace Maki.Gateway
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Websocket container
|
/// Websocket container
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private WebSocket webSocket;
|
private WebSocket WebSocket;
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Active gateway version
|
|
||||||
/// </summary>
|
|
||||||
private int gatewayVersion = Discord.GATEWAY_VERSION;
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Interval at which heartbeats are sent
|
/// Interval at which heartbeats are sent
|
||||||
|
@ -167,7 +162,7 @@ namespace Maki.Gateway
|
||||||
if (!e.IsText)
|
if (!e.IsText)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
//Console.WriteLine(e.Data.Replace(client.Token, new string('*', client.Token.Length)));
|
Console.WriteLine(e.Data.Replace(client.Token, new string('*', client.Token.Length)));
|
||||||
OnSocketMessage?.Invoke(this, e.Data);
|
OnSocketMessage?.Invoke(this, e.Data);
|
||||||
GatewayPayload payload = JsonConvert.DeserializeObject<GatewayPayload>(e.Data);
|
GatewayPayload payload = JsonConvert.DeserializeObject<GatewayPayload>(e.Data);
|
||||||
|
|
||||||
|
@ -352,7 +347,6 @@ namespace Maki.Gateway
|
||||||
#region State
|
#region State
|
||||||
case GatewayEvent.READY:
|
case GatewayEvent.READY:
|
||||||
GatewayReady ready = payload.DataAs<GatewayReady>();
|
GatewayReady ready = payload.DataAs<GatewayReady>();
|
||||||
gatewayVersion = ready.Version;
|
|
||||||
session = ready.Session;
|
session = ready.Session;
|
||||||
OnReady?.Invoke(this, ready);
|
OnReady?.Invoke(this, ready);
|
||||||
break;
|
break;
|
||||||
|
@ -393,11 +387,11 @@ namespace Maki.Gateway
|
||||||
Token = client.Token,
|
Token = client.Token,
|
||||||
Compress = false,
|
Compress = false,
|
||||||
LargeThreshold = 250,
|
LargeThreshold = 250,
|
||||||
Shard = new int[2] { Id, client.ShardClient.ShardCount },
|
Shard = new int[] { Id, client.ShardClient.ShardCount },
|
||||||
Properties = new GatewayIdentificationProperties {
|
Properties = new GatewayIdentificationProperties {
|
||||||
OperatingSystem = @"windows",
|
OperatingSystem = "windows",
|
||||||
Browser = @"Maki",
|
Browser = "Maki",
|
||||||
Device = @"Maki",
|
Device = "Maki",
|
||||||
Referrer = string.Empty,
|
Referrer = string.Empty,
|
||||||
ReferringDomain = string.Empty,
|
ReferringDomain = string.Empty,
|
||||||
}
|
}
|
||||||
|
@ -441,17 +435,17 @@ namespace Maki.Gateway
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public void Connect()
|
public void Connect()
|
||||||
{
|
{
|
||||||
webSocket = new WebSocket($"{client.Gateway}?v={gatewayVersion}&encoding=json");
|
WebSocket = new WebSocket($"{client.Gateway}?v={Discord.GATEWAY_VERSION}&encoding=json");
|
||||||
|
|
||||||
// make wss not log anything on its own
|
// make wss not log anything on its own
|
||||||
webSocket.Log.Output = (LogData logData, string path) => { };
|
WebSocket.Log.Output = (LogData logData, string path) => { };
|
||||||
|
|
||||||
webSocket.OnOpen += WebSocket_OnOpen;
|
WebSocket.OnOpen += WebSocket_OnOpen;
|
||||||
webSocket.OnClose += WebSocket_OnClose;
|
WebSocket.OnClose += WebSocket_OnClose;
|
||||||
webSocket.OnError += WebSocket_OnError;
|
WebSocket.OnError += WebSocket_OnError;
|
||||||
webSocket.OnMessage += WebSocket_OnMessage;
|
WebSocket.OnMessage += WebSocket_OnMessage;
|
||||||
|
|
||||||
webSocket.Connect();
|
WebSocket.Connect();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -461,8 +455,8 @@ namespace Maki.Gateway
|
||||||
{
|
{
|
||||||
heartbeatHandler.Stop();
|
heartbeatHandler.Stop();
|
||||||
|
|
||||||
if (webSocket.ReadyState != WebSocketState.Closed)
|
if (WebSocket.ReadyState != WebSocketState.Closed)
|
||||||
webSocket?.Close(CloseStatusCode.Normal);
|
WebSocket?.Close(CloseStatusCode.Normal);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -472,20 +466,11 @@ namespace Maki.Gateway
|
||||||
/// <param name="data">Data to serialise and send</param>
|
/// <param name="data">Data to serialise and send</param>
|
||||||
public void Send<T>(T data)
|
public void Send<T>(T data)
|
||||||
{
|
{
|
||||||
/*Console.WriteLine(
|
string json = JsonConvert.SerializeObject(data, typeof(T), new JsonSerializerSettings());
|
||||||
JsonConvert.SerializeObject(
|
|
||||||
data,
|
|
||||||
typeof(T),
|
|
||||||
new JsonSerializerSettings()
|
|
||||||
).Replace(client.Token, new string('*', client.Token.Length)));*/
|
|
||||||
|
|
||||||
webSocket.Send(
|
Console.WriteLine(json.Replace(client.Token, new string('*', client.Token.Length)));
|
||||||
JsonConvert.SerializeObject(
|
|
||||||
data,
|
WebSocket.Send(json);
|
||||||
typeof(T),
|
|
||||||
new JsonSerializerSettings()
|
|
||||||
)
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
Reference in a new issue