Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   Conexión a internet (https://www.clubdelphi.com/foros/showthread.php?t=87177)

MaxiDucoli 24-11-2014 21:32:28

Conexión a internet
 
Hola. Tengo una duda.
Quiero hacer una aplicación que lo único que haga es enviar un mensaje desde mi PC haci otra PC, pero que esta esté en cualquier parte del mundo. Tipo Chat, pero no necesito recibir respuesta ni nada.
Solo enviar el mensaje. Lo que no sé es como hacerlo funcionar sin que no sea en mi PC interna.
O sea, no me ingenio y no sé realmente, como encontrar la otra PC en internet.
Alguien me puede dar alguna idea?
O sea;

Yo estoy en Argentina, pero tengo que enviarle un mensaje urgente a alguien que tiene mi aplicación cliente en Japón. Cómo sé qué dirección tiene esa persona en Japón sin preguntarle y solo rastreando mi aplicación Server con mi cliente?

Se entiende? Ojalá puedan ayudarme.

Saludos!!

egostar 24-11-2014 21:50:12

Cita:

Empezado por MaxiDucoli (Mensaje 485477)
Hola. Tengo una duda.
Quiero hacer una aplicación que lo único que haga es enviar un mensaje desde mi PC haci otra PC, pero que esta esté en cualquier parte del mundo. Tipo Chat, pero no necesito recibir respuesta ni nada.
Solo enviar el mensaje. Lo que no sé es como hacerlo funcionar sin que no sea en mi PC interna.
O sea, no me ingenio y no sé realmente, como encontrar la otra PC en internet.
Alguien me puede dar alguna idea?
O sea;

Yo estoy en Argentina, pero tengo que enviarle un mensaje urgente a alguien que tiene mi aplicación cliente en Japón. Cómo sé qué dirección tiene esa persona en Japón sin preguntarle y solo rastreando mi aplicación Server con mi cliente?

Se entiende? Ojalá puedan ayudarme.

Saludos!!


Y no será más fácil enviarle un correo electrónico o un whatsapp o de plano una llamada telefónica ????? :rolleyes:

Saludos

MaxiDucoli 24-11-2014 21:51:14

Cita:

Empezado por egostar (Mensaje 485480)
Y no será más fácil enviarle un correo electrónico o un whatsapp o de plano una llamada telefónica ????? :rolleyes:

Saludos

No. La gracia es no abrir programas. Que le salte el mensajito mio y nada mas.

Luis M. 25-11-2014 00:03:59

Hola.
Una idea puede ser que tu aplicación se conecte cada x tiempo a un servidor.
Si encuentra un fichero x que lea su contenido, el cual contendrá el mensaje
que quieres enviar.
Un saludo.

orodriguezca 25-11-2014 01:58:08

No puedes buscar tu cliente por todo el mundo, eso no es funcional. De hecho tu cliente podría estar apagado. Te sugiero la siguiente estrategia básica:

- La aplicación que quiere enviar el mensaje tiene que actuar de servidor, de preferencia un servidor TCP.

- El cliente, cuando inicia, establece una conexión con la aplicación servidor TCP y le envía un número de puerto de escucha (un puerto UDP). El Cliente se desconecta del servidor y entonces asume el rol de mini-servidor UDP.

- El servidor TCP, es decir, la aplicación que quiere enviar el mensaje, registra en una base de datos o en un archivo de texto o en memoria o donde sea la dirección IP y el puerto UDP que envío el cliente cuando estableció conexión.

- Ahora la aplicación puede enviar el mensaje a el cliente porque conoce la dirección IP y el puerto UDP de escucha del cliente.


Por supuesto esta seudo solución es muy simple y bastante optimista pero estoy seguro que funciona. Para hacerlo algo más realista habría que considerar que nuestro cliente puede conectarse desde diferentes IPs, que podríamos tener varios clientes simultáneos, que queremos enviar el mismo mensaje a todos los clientes, que queremos enviar un mensaje a un cliente específico, etc, etc.

MaxiDucoli 25-11-2014 04:36:37

Cita:

Empezado por orodriguezca (Mensaje 485502)
No puedes buscar tu cliente por todo el mundo, eso no es funcional. De hecho tu cliente podría estar apagado. Te sugiero la siguiente estrategia básica:

- La aplicación que quiere enviar el mensaje tiene que actuar de servidor, de preferencia un servidor TCP.

- El cliente, cuando inicia, establece una conexión con la aplicación servidor TCP y le envía un número de puerto de escucha (un puerto UDP). El Cliente se desconecta del servidor y entonces asume el rol de mini-servidor UDP.

- El servidor TCP, es decir, la aplicación que quiere enviar el mensaje, registra en una base de datos o en un archivo de texto o en memoria o donde sea la dirección IP y el puerto UDP que envío el cliente cuando estableció conexión.

- Ahora la aplicación puede enviar el mensaje a el cliente porque conoce la dirección IP y el puerto UDP de escucha del cliente.


Por supuesto esta seudo solución es muy simple y bastante optimista pero estoy seguro que funciona. Para hacerlo algo más realista habría que considerar que nuestro cliente puede conectarse desde diferentes IPs, que podríamos tener varios clientes simultáneos, que queremos enviar el mismo mensaje a todos los clientes, que queremos enviar un mensaje a un cliente específico, etc, etc.

Ahí está mi dilema.
No sé nada de nada de este tema.
Hay alguna manera de poner en la aplicación servidor un número fijo o algún nombre como para identificarla siempre?
En vez de la ip, que no la voy a saber, ponerle no sé. Escucha.com o cosa así?

Ñuño Martínez 25-11-2014 11:02:58

Cita:

Empezado por MaxiDucoli (Mensaje 485508)
Ahí está mi dilema.
No sé nada de nada de este tema.
Hay alguna manera de poner en la aplicación servidor un número fijo o algún nombre como para identificarla siempre?
En vez de la ip, que no la voy a saber, ponerle no sé. Escucha.com o cosa así?

A eso se le llama "dominio de Internet". Hay empresas que se encargan de reservarlos por precios más o menos módicos. Aun así, sigues necesitando saber la IP donde quieres "enganchar" el dominio y configurar el ordenador para que admita dicho dominio.

Neftali [Germán.Estévez] 25-11-2014 12:42:48

A mi entender la forma más sencilla de hacerlo (ya lo han comentado) es que la otra máquina tenga un programa corriendo que cada x tiempo consulte y pueda mostrar un mensaje.

Si la otra máquina NO tiene algún programa corriendo, NO vas a poder hacerle llegar nigún mensaje.

¿Es eso posible (con lo explicado no me ha quedado claro)?
Si la respuesta es que sí, ya puedes realizar la comunicación de míltiples formas (FTP, cuentas correo,...)

pacopenin 26-11-2014 10:20:48

Como dice Neftali si en el ordenador que debe recibir el mensaje no hay un programa "escuchando" la llegada de ese mensaje no vas a poder hacer nada.
Hace unos años, para un proyecto a medida para una empresa me pidieron un chat interno y recuerdo que encontré entre los ejemplos que traía delphi 6 (era el que usaba entonces) un chat que funcionaba. Solamente retoqué alguna pantalla y traduje los label y cumplía su función. Está en la carpeta Demos\Internet\Chat. Creo que estará en todas las versiones.

MaxiDucoli 30-11-2014 16:53:00

Acá encontré algo que se que sirve, veo que sirve y lo hicieron para que sirva.
El que no sirve soy yo...
jajajaja!!

No puedo hacer conexión entre una PC en una casa y la mía en mi casa por ejemplo.

Alguno puede ayudarme por favor?

http://www.3delite.hu/Image%20Recogn...rary%201.0.zip

ecfisa 30-11-2014 19:47:21

Hola MaxiDucoli.
Cita:

Empezado por MaxiDucoli (Mensaje 485875)
Acá encontré algo que se que sirve, veo que sirve y lo hicieron para que sirva.
...
http://www.3delite.hu/Image%20Recogn...rary%201.0.zip

Debes haberte confundido al poner el enlace, no veo manera en que la librería Image Recognition pueda ayudarte a solucionar el planteo de tu primer mensaje...
Cita:

...
Image Recognition Library is a component (.dll) for use in Win32 (2K/XP/Vista/7) and Win64 software.
Makes it easy to add image recognition functionality to your application, that is compare two pictures if they are the same or similar or find a smaller picture in a bigger picture with difference tolerance.

Features:
- Exact, relative ARGB and AHSL and "stretch" search modes with alpha channel support
- Pre-process images with 6 different resamplers
- Multi-threaded processing
- Multiple match support
- Full unicode support
- Platforms: x86 and x64
- Delphi and C++ API included
...
Saludos :)

MaxiDucoli 01-12-2014 22:30:53

Cita:

Empezado por ecfisa (Mensaje 485883)
Hola MaxiDucoli.

Debes haberte confundido al poner el enlace, no veo manera en que la librería Image Recognition pueda ayudarte a solucionar el planteo de tu primer mensaje...


Saludos :)


Ya con eso no queda duda de que el que no sirve soy yo.,.. :p


Acá está el verdadero link.


http://www.3delite.hu/TCP%20Server-C...%20Library.zip

MaxiDucoli 07-12-2014 16:17:52

Con ese componente que encontré solo puedo hacer los envios por LocalHost y no a través de IP pública.
Si alguno le echó un vistazo, puede decirme si eso es posible?
Muchas gracias.


La franja horaria es GMT +2. Ahora son las 03:05:55.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi