SergServer
Esta clase puede ser instanciada o también puede ser padre de herencia para otras clases, esta clase es la encargada de crear la conexión como servidor dentro de la red local.
Atributos
Accesibilidad
Nombre
Tipo
Descripción
public
settings
Esta variable almacena los parametros necesarios para el arranque y correcto funcionamiento del servidor
readonly
isServerRunning
bool
Indica si el servidor está corriendo o no
Funciones
StartServerAsync()
Esta función se llama para inicializar el servidor localhost.
Emit()
Esta función sirve para enviar a los clientes datos.
Parámetro
Tipo
Descripción
name
string
Este parámetro corresponde al nombre de la acción a la cual debe llamar
data
string
Este parámetro corresponde a los datos personalizados que deberá envía a los clientes
data
object
Este parámetro hace referencia a una instancia de datos la cual será serializada antes de enviar
Variantes de la función para su uso
// Solo llama a una accion de manera remota
Emit(string name)
// Llama a la acción de manera remota con datos
Emit(string name, string data)
// Llama a la acción remota con un objeto serializado en JSON como dato
Emit(string name, object data)
Ejemplo:
void ChangePosition(){
// pasar solo texto
string dataPos = $"x:{transform.position.x}|y:{transform.position.y}|z:{transform.position.z}";
server.Emit("change-position", dataPos);
// pasamos el dato como un objeto de tipo PlayerPosition, el cual se serializará de manera interna
PlayerPosition pos = transform.position;
server.Emit("change-position", pos);
}
On()
Esta función alista la escucha de una acción por parte de los clientes, por ejemplo, en caso de que los clientes cambien la posicion y envien la acción, esta función se encarga de recibirla.
Parámetro
Tipo
Descripción
name
string
Este parámetro corresponde al nombre de la acción que debe escuchar o recibir (debe ser idéntico al que se haya puesto en el Emit del cliente)
protected void On(string name, SergIOCallback callback);
Ejemplo:
void PrepareListeners(){
// Uso mediante Lambda
server.On("change-position", (data) => {
Console.WriteLine(data);
});
server.On("change-position", ChangePosition);
}
void ChangePosition(string data){
Console.WriteLine(data);
}
Stop()
Esta función detiene el servidor y cierra todas las conexiones con los clientes conectados.
Ejemplo:
void StopServer(){
server.Stop();
}
Last updated
Was this helpful?