private void lnkNombreArchivo_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { archivo a = new archivo(null, nombreArchivo); Mensaje m = new Mensaje(); m.archi = a; m.tipoo = Mensaje.tipo.solicitudArchivo; archivoS.Send(m.toBytes()); }
public Mensaje(byte[] datosbytes) { BinaryFormatter bf = new BinaryFormatter(); MemoryStream ms = new MemoryStream(datosbytes); Mensaje d = (Mensaje)bf.Deserialize(ms); recibido = d; ms.Close(); }
private void btn_enviar_Click(object sender, EventArgs e) { if (Publicacion.Text != "") { if (!file) { DataSourcePOI dsp = new DataSourcePOI(); DataTable dtt = dsp.insertPublicacion(Publicacion.Text, idGrupo, id); if (dtt.Rows[0][0].ToString() != "null") { DataTable dt = dsp.getPublicacion(idGrupo); for (int bc = 0; bc < dt.Rows.Count; bc++) { c_desplegar c = new c_desplegar(dt.Rows[bc][4] + "", dt.Rows[bc][1] + "", int.Parse(dtt.Rows[0][0].ToString()), idGrupo, id, file, dt.Rows[bc][5].ToString(), socketPublicacion); } Publicacion.Text = ""; flp.Controls.Clear(); FG fg = new FG(); fg.publicaciones(id, idGrupo, socketPublicacion, flp); } } else { Mensaje mensaje = new Mensaje(); mensaje.archi = a; mensaje.tipoo = Mensaje.tipo.publicacionarchivo; DataSourcePOI dsp = new DataSourcePOI(); DataTable dtt = dsp.insertPublicacionArchivo(Publicacion.Text, idGrupo, id, a.j); if (dtt.Rows[0][0].ToString() != "null") { DataTable dt = dsp.getPublicacion(idGrupo); for (int bc = 0; bc < dt.Rows.Count; bc++) { c_desplegar c = new c_desplegar(dt.Rows[bc][4] + "", dt.Rows[bc][1] + "", int.Parse(dtt.Rows[0][0].ToString()), idGrupo, id, file, dt.Rows[bc][5].ToString(), socketPublicacion); } Publicacion.Text = ""; flp.Controls.Clear(); FG fg = new FG(); fg.publicaciones(id, idGrupo, socketPublicacion, flp); } socketPublicacion.Send(mensaje.toBytes()); file = false; } } }
private void bt_In_Click(object sender, EventArgs e) { if (txt_correo.Text != "" && txt_contra.Text != "") { try { Mensaje d = new Mensaje(); d.nombre = tb_correo.Text; d.contrasenia = tb_contra.Text; d.ip = Data.funciones.obtenerip(); d.tipoo = Mensaje.tipo.login; byte[] entrando = new byte[cliente.SendBufferSize]; cliente.Connect(ip, 1806); //La cadena de string la convertimos en un arreglo de bytes para enviarla cliente.Send(d.toBytes()); cliente.Receive(entrando); Mensaje n = new Mensaje(entrando); if (n.iduser > 0) { FG main = new FG(cliente, n.iduser, tb_correo.Text, n.idGrupo); main.Show(); Hide(); } else { cliente.Disconnect(true); Application.Restart(); } } catch (Exception ex) { Console.WriteLine("Error conectando al cliente: " + ex.ToString()); } } }
public void escucharcliente() { new Thread(() => { int readbytes; while (true) { Thread.Sleep(10); byte[] reciveBuffer = new byte[cliente.SendBufferSize]; readbytes =cliente.Receive(reciveBuffer); if (readbytes > 0) { Mensaje d = new Mensaje(reciveBuffer); switch (d.tipoo) { case Mensaje.tipo.mensaje: /* */ break; case Mensaje.tipo.mensajeprivado: break; case Mensaje.tipo.zumbido: break; } } } }).Start(); }
public static void ON() { Thread.Sleep(10); Console.WriteLine("Proceso iniciado"); int readbytes; while (server) { try { svr.Listen(0); Socket cliente = svr.Accept(); byte[] entrando = new byte[cliente.SendBufferSize]; Console.WriteLine("Servidor esperando"); readbytes = cliente.Receive(entrando); Console.WriteLine("Cliente conectado"); if (readbytes > 0) { Data.Mensaje d = new Data.Mensaje(entrando); if (d.tipoo == Data.Mensaje.tipo.login) { string nombre = d.nombre; string contra = d.contrasenia; string ipuser = d.ip.ToString(); DataSourcePOIData dspoi = new DataSourcePOIData(); DataTable dt = dspoi.iniciarSesion(nombre, contra); int result = int.Parse(dt.Rows[0][0].ToString()); int idgroup = int.Parse(dt.Rows[0][1].ToString()); if (result > 0) { conectado c = new conectado(cliente); c.nombre = nombre; c.id = result; c.estado = "Conectado"; lista.Add(c); d.iduser = result; d.idGrupo = idgroup; cliente.Send(d.toBytes()); } } } } catch { server = false; } } }
private void rb_desconectado_CheckedChanged(object sender, EventArgs e) { if (rb_desconectado.Checked == true) { Mensaje m = new Mensaje(); m.tipoo = Mensaje.tipo.estado; m.mensaje = "Desconectado"; conectado.Send(m.toBytes()); } }
private void newChatPrivado(Mensaje d,int u) { Chat s = new Chat(conectado, email,u,id,idGrupo); if (flp_chats.Controls.Count < 3) { Ventanas.Add(s); flp_chats.Controls.Add(s); s.MensajeEntrando(d); } }
private void newChat(Mensaje d) { s = new Chat(idGrupo,id,conectado, email); s.btn_cerrar.Click += new EventHandler(clickcerrar); if (flp_chats.Controls.Count < 3) { Ventanas.Add(s); flp_chats.Controls.Add(s); s.MensajeEntrando(d); } }
private void FG_FormClosed(object sender, FormClosedEventArgs e) { Mensaje m = new Mensaje(); m.tipoo = Mensaje.tipo.cerrar; conectado.Send(m.toBytes()); hilo = false; }
public void escuchar() { int readbytes; while (hilo) { Thread.Sleep(10); byte[] reciveBuffer = new byte[conectado.SendBufferSize]; readbytes = conectado.Receive(reciveBuffer); if (readbytes > 0) { Mensaje d = new Mensaje(reciveBuffer); switch (d.tipoo) { case Mensaje.tipo.mensaje: bool exist = false; foreach(Chat cha in Ventanas) { if (cha.idgrupo == d.idGrupo) { cha.MensajeEntrando(d); exist = true; } } if (!exist) { try { entrante dd = new entrante(newChat); this.Invoke(dd, new object[] { d }); } catch { MessageBox.Show("Error al Crear Nuevo Chat, Intentelo Nuevamente"); } } break; case Mensaje.tipo.mensajeprivado: bool existechat = false; int usar; if (d.iduser == id) { usar = d.idDestino; } else { usar = d.iduser; } foreach (Chat chat in Ventanas) { if (chat.id == usar) { chat.MensajeEntrando(d); existechat = true; } } if (!existechat) { try { entrantep dd = new entrantep(newChatPrivado); this.Invoke(dd, new object[] { d,usar }); } catch { MessageBox.Show("Error al Crear Nuevo Chat, Intentelo Nuevamente"); } } break; case Mensaje.tipo.zumbido: Mensaje zumba = new Mensaje(); zumba.tipoo = Mensaje.tipo.zumbido; zumba.mensaje = "Zumbido"; bool existz = false; if (d.idDestino == 0) { foreach (Chat cha in Ventanas) { if (cha.idgrupo == d.idGrupo) { cha.MensajeEntrando(zumba); existz = true; zumbidoactivar(); } } if (!existz) { try { entrante dd = new entrante(newChat); this.Invoke(dd, new object[] { zumba }); zumbidoactivar(); } catch { MessageBox.Show("Error al Crear zumb Chat, Intentelo Nuevamente"); } } break; } else { bool existechatz = false; foreach (Chat chat in Ventanas) { if (chat.id == d.iduser) { chat.MensajeEntrando(zumba); existechat = true; zumbidoactivar(); } } if (!existechatz) { try { entrantep dd = new entrantep(newChatPrivado); this.Invoke(dd, new object[] { zumba, d.iduser }); zumbidoactivar(); } catch { MessageBox.Show("Error al Crear Nuevo Chat, Intentelo Nuevamente"); } } } break; case Mensaje.tipo.archivo: if (d.idDestino == 0){ bool exista = false; foreach(Chat f in Ventanas) { if (f.idgrupo == d.idGrupo) { f.MensajeEntrando(d); exista = true; } } if (!exista) { try { entrante dd = new entrante(newChat); this.Invoke(dd, new object[] { d }); } catch { MessageBox.Show("Error al Crear Nuevo Chat, Intentelo Nuevamente"); } } } else { bool existechatz = false; foreach (Chat chat in Ventanas) { if (chat.id == d.iduser) { chat.MensajeEntrando(d); existechat = true; } } if (!existechatz) { try { entrantep dd = new entrantep(newChatPrivado); this.Invoke(dd, new object[] { d, d.iduser }); } catch { MessageBox.Show("Error al Crear Nuevo Chat, Intentelo Nuevamente"); } } } break; case Mensaje.tipo.cerrar: hilo = false; break; case Data.Mensaje.tipo.solicitudArchivo: d.archi.ByteArrayToFile(); MessageBox.Show("Mensaje Recibido " + d.archi.j); break; } } } actua.Shutdown(SocketShutdown.Both); Application.Exit(); }
private void Zumbido_Click(object sender, EventArgs e) { Mensaje m = new Mensaje(); m.tipoo = Mensaje.tipo.zumbido; m.mensaje = "Zumbido"; m.idDestino = id; m.iduser = idu; m.idGrupo = idgrupo; local.Send(m.toBytes()); }
private void btn_enviar_Click(object sender, EventArgs e) { if (txt_enviar.Text != "") { Mensaje h = new Mensaje(); if (id > 0) { h.tipoo = Mensaje.tipo.mensajeprivado; } else { h.tipoo = Mensaje.tipo.mensaje; } h.idDestino = id; h.iduser = idu; h.mensaje = correo + ": " + txt_enviar.Text; h.idGrupo = idgrupo; local.Send(h.toBytes()); txt_enviar.Text = ""; } }
private void agregararchivo_Click(object sender, EventArgs e) { if (openFileDialog1.ShowDialog() == DialogResult.OK) { byte[] array = File.ReadAllBytes((openFileDialog1.FileName)); archivo a = new archivo(array, openFileDialog1.SafeFileName); MessageBox.Show("Archivo Listo para enviar " + a.j); Mensaje m = new Mensaje(); m.archi = a; m.tipoo = Mensaje.tipo.archivo; m.idDestino = id; m.idGrupo = idgrupo; m.iduser = idu; local.Send(m.toBytes()); MessageBox.Show("Archivo Enviado", "Exito"); } }
public void MensajeEntrando(Mensaje m) { if (m.tipoo == Mensaje.tipo.mensaje|| m.tipoo == Mensaje.tipo.mensajeprivado||m.tipoo==Mensaje.tipo.zumbido) { try { SetTextCallback dd = new SetTextCallback(escribirmsj); this.Invoke(dd, new object[] { m.mensaje }); } catch (Exception x) { MessageBox.Show("Error al Escribir mensaje in chat, Intentelo Nuevamente"); } } if (m.tipoo == Mensaje.tipo.archivo) { try { m.archi.ByteArrayToFile(); SetTextCallback dd = new SetTextCallback(escribirmsj); this.Invoke(dd, new object[] { "Archivo Recibido "+m.archi.j }); } catch (Exception ex) { } } }