FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Servidor Web + Comunicaciones
Hola amigos....
Os cuento la aplicación que quiero hacer-modificar para ver si me podeis ayudar que estoy un poco pez en desarrollo para internet. Tengo una aplicación hecha con delphi6 que se encarga de automatizar un complejo turístico (comunicado via puerto serie con un plc de control). Me he encontrado con el problema que esta aplicación, aun operando por red perfectamente, desean hacerlo por internet. He estado viendo por ahi y no se exactamente que herramientas utilizar, aunque me gustaria seguir con delphi. He pensado en poner un servidor que aloje la página web y siga comunicando via puerto serie (no se si esto será posible) con el autómata de control. El programa en el servidor se encargaría de las comunicaciones locales y los clientes simplemente interactuarían con el servidor para el intercambio de información. Basicamente unas preguntas: 1.¿Se puede hacer así directamente?¿Si es asi... con que herramienta?PHP, ASP.... recordad que tiene que ser una herramienta que permita comunicaciones serie en la máquina servidor. o bien... 2. Mantener en el servidor el programa win32 (que se encargue de las comunicaciones serie) y diseñar una interfaz web en el mismo servidor que sirva de acceso a los clientes y yo, internamente, comunicar ambos programas (el que se encargue de las comunicaciones y el servidor web) para intercambiar información (en los 2 sentidos - peticiones del usuario y resultados al usuario-) Espero haberme explicado bien... acepto cualquier sugerencia o algo que se os ocurra, ya que voy un poco perdido. Si algo no ha quedado claro decidmelo y lo intentaria explicar mejor. Agradezco por anticipado cualquier tipo de ayuda o comentario un saludo, |
#2
|
||||
|
||||
Buenas..
A ver, yo también requerí varias veces de utilización de web/win y definitivamente lo mejor es mantener el servidor HTTP en el programa delphi y te diré por que: -No sabes ni php ni ASP por lo que mencionas así que tendrias que aprender. -Tienes que preucuparte de mantener un servidor HTTP además de tu programa. Al modo más guarro y rapido lo más simple es que te bajes el DreamWeaver, crees las páginas y despues las metas en un memo... y desde delphi cada vez que te hagan un GET al servidor HTTP pues grabas una version de ese memo en un fichero temporal con la info. a mostrar en los sitios de la web correctos y envias esa página... es muy guarro pero simple y nunca te fallará ni dará problemas de seguridad Ahora si quieres manejar usuarios sesiones y todo el royo.. aprende PHP y montas un apache... el problema es que necesitaras que delphi mantenga una base de datos actualizada con la información que necesites mostrar... puedes usar MYSQL o simplemente archivos de texto o archivos php que contengan la informción en variables de php y con un simple include las mostraras... si maneras hay mil... es pensar y se te ocurrirán infinitas... De momento: http://www.php.net/manual/es |
#3
|
|||
|
|||
Muchas gracias por tus consejos lag_0....
Bueno, tras mucho tiempo he retomado el tema, he leido el foro viendo las diferentes opciones, y , tras no convencerme delphi4php por la poca documentación que habia (de momento), he decidido tirar por el siguiente camino: Me he bajado el intraweb y estoy diseñando las páginas que serán mostradas al cliente. Por si no habia quedado claro en mi primer post, la aplicación que tengo en marcha se encarga de domotizar una vivienda. Tengo en el servidor un programa Win32 hecho en delphi 6 en el que el usuario enciende y apaga luces de su vivienda. Como el usuario deseaba hacerlo remotamente, le di la posibilidad de entrar con el Escritorio Remoto. Eso es lo que habia hasta el momento, pero me parece una solución poco elegante. Entre otras cosas porque sólo permite un usuario simultáneamente. La solución que he pensado idónea es mantener un programa en el servidor que se encargue de las comunicaciones (win32) y diseñar páginas web que se encarguen de la interfaz con el cliente, tal y como me comentaba el compañero lag_0. El programa win32 y el web deben de estar permanentemente intercambiando datos en ambas direcciones. - El win32 tiene que decirle en tiempo real al web en que estado se encuentra el interruptor de la luz (encendido o apagado) para segun el estado, mostrar una imagen u otra (jpg de interruptor encendido u apagado) y que el usuario vea el estado real. - El web tiene que decirle al win32 cuando el usaurio hace una pulsación en un botón determinado, que el interruptor debe cambiar de estado, si está encendido se apaga, y viceversa. El problema es que he leido como comunicar ambos "programas". El win32 y el html y no me aclaro mucho con los post y get, y os pido a quien me pueda echar una mano, una pequeña ayudita. De momento, en la parte del programa win32 he escrito el siguiente código, ayudado leyendo varios hilos, entre otros el de automatización web de al gonzalez:
Se que ahora en el código html deberia leer esa variable "estado1" y segun la variable mostrar una imagen (pulsador encendido) u otra (pulsador apagado) No obstante, no termino de encontrar ningún ejemplo donde se pueda hacer eso... Ruego a alguien que me eche una manita. ¿me recomendais que la parte del interfaz la haga en php? Estoy leyendo el manual que tan amablemente me enlazaba el compañero, y espero encontrar solución, pero he preferido postearlo aqui por si alguien estaba en un caso similar. Muchas gracias a todos. un saludo, |
#4
|
|||
|
|||
Intraweb
NO te compliques. Investiga y hazlo con Intraweb verás que es mas facil.
|
#5
|
||||
|
||||
Si lo que quieres es hacer una interface via web, ciertamente intraweb podria ser una buena opción ya que no vas a cambiar mucho el codigo de control que ya te fuinciona, unicamente modificaras la interface, otra opcion seria hacerlo en asp.net pero tendras que cambiar no solo la interface sino el codigo que usas para controlar. Ahora si el problema unicamente es controlarlo desde internet, sin importar la inteface, pues no le muevas nada a tu programa, y simplemente configurate una maquina como un servidor de terminal, ya sea terminal server o vnc server y accedes desde internet y controlas todo como siempre.
|
#6
|
|||
|
|||
Gracias a todos por contestar.
En terminal server ya lo tengo, es mi solución actual... el problema es que solo permite un usuario simultáneo, ya que mi programa utiliza un puerto serie para comunicarse, y éste no permite que se abran varias instancias del programa con el puerto serie "ocupado" en ambas. La solución que encontré fue crear una tabla de usuarios, en los que los clientes se conectaban, y si habia un usuario conectado, lo desconectaba, previo aviso, y conectaba al nuevo usuario. No quedó mal, pero es "poco elegante". Lo intentaré con intraweb de momento y ya os cuento como quedo. De todas formas si alguien tiene otras opciones válidas estaria encantado de leeros un saludo, |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Comunicaciones electronicas EDI | Toni | Conexión con bases de datos | 0 | 18-04-2006 13:06:34 |
La Unión Europea puso en marcha un plan para grabar todas las comunicaciones | ptt | Noticias | 3 | 24-11-2005 22:31:51 |
Parlamento europeo desestima intervención comunicaciones | Casimiro Notevi | Noticias | 0 | 28-09-2005 10:01:33 |
Ayuda sobre comunicaciones | Jobev Lee | Internet | 1 | 14-09-2005 01:12:40 |
Funciones y Procedimietos para comunicaciones con Lpt1 en ensamblador. | gapat | Varios | 3 | 09-06-2004 20:04:16 |
|