Example #1
0
 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());
 }
Example #2
0
        public Mensaje(byte[] datosbytes)
        {
            BinaryFormatter bf = new BinaryFormatter();
            MemoryStream ms = new MemoryStream(datosbytes);

            Mensaje d = (Mensaje)bf.Deserialize(ms);
            recibido = d;
            ms.Close();
        }
Example #3
0
        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;
                }
            }
        }
Example #4
0
        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());
                }

            }
        }
Example #5
0
        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();
        }
Example #6
0
        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; }
                }
        }
Example #7
0
 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());
     }
 }
Example #8
0
 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);
     }
 }
Example #9
0
 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);
     }
 }
Example #10
0
 private void FG_FormClosed(object sender, FormClosedEventArgs e)
 {
     Mensaje m = new Mensaje();
     m.tipoo = Mensaje.tipo.cerrar;
     conectado.Send(m.toBytes());
     hilo = false;
 }
Example #11
0
        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();
        }
Example #12
0
 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());
 }
Example #13
0
        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 = "";

            }
        }
Example #14
0
        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");

            }
        }
Example #15
0
        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)
                {

                }
            }
        }