private async void btnConectar_Click(object sender, EventArgs e) { try { btnConectar.Enabled = false; string mensaje = string.Empty; if (!CamposValidos()) { btnConectar.Enabled = true; return; } bool conexionExitosa = conn.Connect(ref mensaje, Fun.SERVER_IP, Fun.SERVER_PUERTO); if (!conexionExitosa) { while (!conexionExitosa && Fun.MsgWarningYesNo(this, "No se ha podido establecer una conexión, ¿reintentarlo?") == DialogResult.Yes) { conexionExitosa = conn.Connect(ref mensaje, Fun.SERVER_IP, Fun.SERVER_PUERTO); } btnConectar.Enabled = true; return; } Usuario usuario = new Usuario() { Id = 0, Nick = string.Empty, Correo = txtCorreo.Text, Password = txtContrasena.Text }; Response res = await conn.SendWait("login_validuser", usuario); if (!Fun.IsValid(this, res)) { btnConectar.Enabled = true; return; } conn.Usuario = JsonConvert.DeserializeObject <Usuario>(Convert.ToString(res.Value)); FrmMasengger frmMasengger = new FrmMasengger(this); frmMasengger.Show(); Hide(); btnConectar.Enabled = true; } catch (Exception ex) { Fun.MsgErrorException(this, ex); btnConectar.Enabled = true; } }
private async void btnRegistrarse_Click(object sender, EventArgs e) { try { btnRegistrarse.Enabled = false; if (!CamposValidos()) { btnRegistrarse.Enabled = true; return; } string mensaje = string.Empty; if (!CamposValidos()) { btnRegistrarse.Enabled = true; return; } bool conexionExitosa = conn.Connect(ref mensaje, Fun.SERVER_IP, Fun.SERVER_PUERTO); if (!conexionExitosa) { while (!conexionExitosa && Fun.MsgWarningYesNo(this, "No se ha podido establecer una conexión, ¿reintentarlo?") == DialogResult.Yes) { conexionExitosa = conn.Connect(ref mensaje, Fun.SERVER_IP, Fun.SERVER_PUERTO); } btnRegistrarse.Enabled = true; return; } Usuario usuario = new Usuario() { Id = 0, Nick = txtUsuario.Text, Correo = txtCorreo.Text, Password = txtContrasena.Text }; Response res = await conn.SendWait("register_create", usuario); if (!Fun.IsValid(this, res)) { btnRegistrarse.Enabled = true; return; } Fun.SendMail(txtCorreo.Text, $"Masengger - Bienvenid@ {usuario.Nick} ♥", "Te damos la bienvenida a Masengger! si recibiste este correo tu cuenta ha sido confirmada."); MessageBox.Show(this, $"Cuenta registrada con exito", "Información", MessageBoxButtons.OK, MessageBoxIcon.Information); Close(); } catch (Exception ex) { Fun.MsgError(this, ex.Message); btnRegistrarse.Enabled = true; } }
/// <summary> /// Se inicia la tarea que constantemente recibe las respuestas de las peticiones del servidor que envian /// de por la funcion StartSendRequets() /// </summary> public void StartListenResponses() { if (canceltknSrcListenResponses == null || canceltknSrcListenResponses.IsCancellationRequested) { canceltknSrcListenResponses = new CancellationTokenSource(); } tkListenResponses = Task.Run(async() => { while (!canceltknSrcListenResponses.IsCancellationRequested) { try { if (conn.TcpClient.Connected) { Response res = await conn.Wait(); if (!Fun.IsValid(this, res)) { continue; } switch (res.Key) { case "user_list": { FillUsers(res); break; } case "user_connected_list": { SetUsersConnected(res); break; } case "mensaje_nuevo": { break; } case "mensaje_archivo_nuevo": { break; } case "file_get": { GetFile(res); break; } case "mensajes_lista": { ucChat.FillMessages(res); break; } case "video_get": { SetFrame(res); break; } default: break; } } } catch (Exception ex) { } } return; }, canceltknSrcListenResponses.Token); }