-
Notifications
You must be signed in to change notification settings - Fork 32
Client
Mathias Cloet edited this page Feb 6, 2020
·
1 revision
Creating a client
//Regular async client
SimpleSocketClient client = new SimpleSocketTcpClient();
//Ssl async client
//(Certificate will be a .pfx) file
SimpleSocketClient client = new SimpleSocketTcpSslClient("Path to Certificate","Password");
Starts the client
//Start the client
SimpleSocketClient client = new SimpleSocketTcpClient();
String ipServer = "127.0.0.1";
int portServer = 13000;
client.Startclient(ipServer,portServer);
Binding the events The events have to be bound just once per client.
//Events
_client.AuthSuccess += ClientOnAuthSuccess;
_client.AuthFailed += ClientOnAuthFailed;
_client.FileReceiver += ClientOnFileReceiver;
_client.FolderReceiver += ClientOnFolderReceiver;
_client.DisconnectedFromServer += Disconnected;
_client.MessageUpdateFileTransfer += ClientOnMessageUpdateFileTransfer;
_client.MessageUpdate += ClientOnMessageUpdate;
_client.ConnectedToServer += ConnectedToServer;
_client.ClientErrorThrown += ErrorThrown;
_client.MessageReceived += ServerMessageReceived;
_client.MessageSubmitted += ClientMessageSubmitted;
_client.MessageFailed += MessageFailed;
_client.CustomHeaderReceived += CustomHeader;
_client.ObjectReceived += ClientOnObjectReceived;
Methods used to send messages to server
//Send to server
public void SendMessage(string message, bool compress = false, bool encrypt = false, bool close = false);
public async Task SendMessageAsync(string message, bool compress = false, bool encrypt = false, bool close = false);
public void SendBytes(byte[] data, bool compress = false, bool encrypt = false, bool close = false);
public async Task SendBytesAsync(byte[] data, bool compress = false, bool encrypt = false, bool close = false);
public void SendMessageContract(IMessageContract contract, bool compress = false, bool encrypt = false,bool close = false);
public async Task SendMessageContractAsync(IMessageContract contract, bool compress = false, bool encrypt = false, bool close = false);
public void SendCustomHeader(string message, string header, bool compress = false, bool encrypt = false, bool close = false);
public void SendCustomHeader(byte[] data, byte[] header, bool compress = false, bool encrypt = false, bool close = false);
public async Task SendCustomHeaderAsync(string message, string header, bool compress = false, bool encrypt = false, bool close = false);
public async Task SendCustomHeaderAsync(byte[] data, byte[] header, bool compress = false, bool encrypt = false, bool close = false);
public async Task SendFileAsync(string fileLocation, string remoteSaveLocation, bool compress = true, bool encrypt = false, bool close = false);
public void SendFile(string fileLocation, string remoteSaveLocation, bool compress = true, bool encrypt = false, bool close = false);
public async Task SendFolderAsync(string folderLocation, string remoteSaveLocation,bool encrypt = false, bool close = false);
public void SendFolder(string folderLocation, string remoteSaveLocation,bool encrypt = false, bool close = false);
public async Task SendObjectAsync(object obj, bool compress = false, bool encrypt = false, bool close = false);
public void SendObject(object obj, bool compress = false, bool encrypt = false, bool close = false);