UTNianos

Versión completa: Ayuda con socket! (Para proyecto)
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Hola gente, como andan?

Bueno estoy necesitando crear un servidor y un clicente de modo tal de que desde el cliente yo pueda enviar una archivo con una lista con cierta informacion. Quien me da una mano?

Aca dejo el codigo que hicimos en clase (un chat bidireccional).

Cliente: http://www.copiatelo.com/index.php?show=m2d7cfac2

Servidor: http://www.copiatelo.com/index.php?show=m1dcb677

Header: http://www.copiatelo.com/index.php?show=m41f766e

Funciones: http://www.copiatelo.com/index.php?show=m25bff136

Quien me da una mano?

Saludos!
¿Cuál es el problema que estás teniendo?

Si tenés un cliente y un servidor andando, para pasar una lista (o cualquier otra estructura) vas a necesitar el concepto de serialización.

Si no tenés eso andando aún, contá un poco más qué intentás hacer, qué problema estás encontrando, qué intentaste, cómo se te ocurre que podrías solucionarlo... Con eso te vamos a poder dar una mano sin resolverte el problema de una ni estar dos horas tratando de entender en dónde estás trabado =)

Salute!
el archivo que queres enviar es un binario o de texto???
(21-11-2013 22:21)Desert69 escribió: [ -> ]¿Cuál es el problema que estás teniendo?

Si tenés un cliente y un servidor andando, para pasar una lista (o cualquier otra estructura) vas a necesitar el concepto de serialización.

Si no tenés eso andando aún, contá un poco más qué intentás hacer, qué problema estás encontrando, qué intentaste, cómo se te ocurre que podrías solucionarlo... Con eso te vamos a poder dar una mano sin resolverte el problema de una ni estar dos horas tratando de entender en dónde estás trabado =)

Salute!

Te voy a ser 100% sincero: Socket lo vimos en menos de media clase y no entendí NADA de NADA. Ese ejemplo ni siquiera lo hice yo, sino que lo envió la profe por mail (que fue en lo que se baso en su explicación del tema tan, pero TAN lamentable y por sobre todas las cosas, vaga). Por lo que lamento decirte mi tan respetado y queridisimo amigo Desert69 que no entiendo 2 lineas seguidas del código que subí (no tan literal, algo entiendo pero es muy poco). Y por que lo queremos emplear en nuestro proyecto, te preguntaras? Por la sencilla razón de que si no lo hacemos, no aprobamos. Así de corta es la bocha.

Santi Aguito el archivo tiene que ser de texto. El proyecto consiste en la detección de un objeto en pantalla. Cuando este objeto se detecta, se enlista en una lista (la cual luego pasa a ser un archivo) información como la hora en que empezó la detección de dicho objeto y la hora en que se dejo de detectar; por cada vez que se detecta el objeto y se deja de detectar se crea un nodo. También hay información de la imagen (porque también hacemos una captura cuando el objeto se detecta), como el nombre de dicha captura, su formato, depth, altura y anchura y otros datos que no vienen al caso. La idea es que luego que cortemos la detección, enviar este archivo (la lista) por socket al servidor y luego en otro archivo enviar las capturas. Eso es lo que quiero hacer.

Quien me da un brazo entero? jaja tomenselo con humor por favor!
Bajate la guía Beej, seguro esta en este foro si no está en la página de las materias de electrónica entra a digitales III abajo de todo dice guía beej sockets.
Yo hice proyecto con eso también y aprendí con eso... Son 50 carillas con toda la furia y esta muy bien explicado sobre un ejemplo que va haciendo...
En 2 días lo sacas.
Pero la guia de Beej esta basada en las librerias de fulfaro?
Yo por 5 lucas te hago la parte de socket.

Si necesitas todo el proyecto podemos arreglar un numero.
(22-11-2013 00:50)Gonsha escribió: [ -> ]Pero la guia de Beej esta basada en las librerias de fulfaro?

No che, pero una librería es un código en un .c

Osea todo lo de la guía lo tenes en el .c de furfaro.
Yo trabaje todo a cero como correspondía y no use nada de la cátedra...

Pero te paso la posta:

Liberías de furfaro: abrir_socket(), enviar_paquete(), recibir_paquete(), cerrar_socket(), (?)

Como programas:
en server:
Abrir conexion,
Esperar,
Recibir
cerrar
en cliente:
abrir
conectar
enviar
cerrar


No se, yo te aporto con el comentario de la guía beej, si haces todo a 0 no te van a decir que esta mal, es para vagos.
(22-11-2013 00:54)brunodiaz escribió: [ -> ]Yo por 5 lucas te hago la parte de socket.

Si necesitas todo el proyecto podemos arreglar un numero.

Dale enviame un pm jajajajaa

(22-11-2013 01:00)Feer escribió: [ -> ]
(22-11-2013 00:50)Gonsha escribió: [ -> ]Pero la guia de Beej esta basada en las librerias de fulfaro?

No che, pero una librería es un código en un .c

Osea todo lo de la guía lo tenes en el .c de furfaro.
Yo trabaje todo a cero como correspondía y no use nada de la cátedra...

Pero te paso la posta:

Liberías de furfaro: abrir_socket(), enviar_paquete(), recibir_paquete(), cerrar_socket(), (?)

Como programas:
en server:
Abrir conexion,
Esperar,
Recibir
cerrar
en cliente:
abrir
conectar
enviar
cerrar


No se, yo te aporto con el comentario de la guía beej, si haces todo a 0 no te van a decir que esta mal, es para vagos.

Que son esas funciones?
La PPT que te pasé trata directamente sobre sockets. Personalmente no la considero una de las mejores presentaciones que tenemos en Operativos, pero mejor que nada puede ser.

Mucho más no tengo para aportar, je...
La guía beej la subió adriano, búscala

Off-topic:

Yo vaticino que el thread de alguna manera va a terminar con Gonsha diciendo que los que trataron de ayudarlo no entienden nada de la vida y son todos tarados y él encontró una solución mejor en tres líneas de programación y que Beej es un estúpido que no sabe nada que seguramente no le alcanza con $4000 para irse a vivir solo.
Van las guias de Beej. Con esto sacas todo!
(22-11-2013 00:13)Gonsha escribió: [ -> ]
(21-11-2013 22:21)Desert69 escribió: [ -> ]¿Cuál es el problema que estás teniendo?

Si tenés un cliente y un servidor andando, para pasar una lista (o cualquier otra estructura) vas a necesitar el concepto de serialización.

Si no tenés eso andando aún, contá un poco más qué intentás hacer, qué problema estás encontrando, qué intentaste, cómo se te ocurre que podrías solucionarlo... Con eso te vamos a poder dar una mano sin resolverte el problema de una ni estar dos horas tratando de entender en dónde estás trabado =)

Salute!

Te voy a ser 100% sincero: Socket lo vimos en menos de media clase y no entendí NADA de NADA. Ese ejemplo ni siquiera lo hice yo, sino que lo envió la profe por mail (que fue en lo que se baso en su explicación del tema tan, pero TAN lamentable y por sobre todas las cosas, vaga). Por lo que lamento decirte mi tan respetado y queridisimo amigo Desert69 que no entiendo 2 lineas seguidas del código que subí (no tan literal, algo entiendo pero es muy poco). Y por que lo queremos emplear en nuestro proyecto, te preguntaras? Por la sencilla razón de que si no lo hacemos, no aprobamos. Así de corta es la bocha.

Santi Aguito el archivo tiene que ser de texto. El proyecto consiste en la detección de un objeto en pantalla. Cuando este objeto se detecta, se enlista en una lista (la cual luego pasa a ser un archivo) información como la hora en que empezó la detección de dicho objeto y la hora en que se dejo de detectar; por cada vez que se detecta el objeto y se deja de detectar se crea un nodo. También hay información de la imagen (porque también hacemos una captura cuando el objeto se detecta), como el nombre de dicha captura, su formato, depth, altura y anchura y otros datos que no vienen al caso. La idea es que luego que cortemos la detección, enviar este archivo (la lista) por socket al servidor y luego en otro archivo enviar las capturas. Eso es lo que quiero hacer.

Quien me da un brazo entero? jaja tomenselo con humor por favor!

Maquina, lo que queres hacer vos es muy parecido al proyecto que implementamos con mi grupo, igual falta terminarlo. Transmitimos video desde un servidor a un cliente por UDP, cuando detectamos movimiento en alguna de las camaras procedemos a una filmacion que puede ser levantada desde el cliente y tambien creamos un .log con la fecha y hora del evento. Ahora la parte de video falta terminarla, pero si sacamos fotos y las enviamos por el socket.
Mandame un mp y veo con que puedo darte una mano.

Aclaro, me equivoque y cite el comentario equivocado, tenia que hacerlo con el de Gonsha jajaj
Santi, conserva muy bien eso, ese es, en esencia, el proyecto final de TD3
URLs de referencia