Héctor Rulot, Jose Agustin Lopez Bueno
(Universitat de València)RESUMEN
"Postman" es un cliente de Correo con interfaz Web diseñado y programado en el Servicio de Informática de la Universitat de València.
El programa ha sido desarrollado en respuesta a las necesidades planteadas en nuestra universidad en materia de correo electrónico fácil, seguro, accesible y de alto rendimiento; necesidades que no encontraron solución adecuada en los distintos programas disponibles en ese momento en la red. Concretamente, las condiciones eran (además de las elementales de facilidad y comodidad de la interfaz):
- Cliente IMAP, con posibilidad de utilizar varios servidores y múltiples buzones remotos por usuario. - Que mantuviera la conexión con el servidor IMAP durante la sesión del usuario. - Soporte, en una misma máquina de un elevado número de sesiones (varios centenares). - "shareware" o "freeware", "open source".
El desarrollo de "Postman" se efectuó pues teniendo estas condiciones en mente, así como la características, puntos fuertes y debilidades de muchos otros clientes "WebMail" estudiados con anterioridad.
Como resultado de ello, las principales características de Postman son actualmente:
-Open source. -Codificado en C++. -Puro HTML. No se usan cookies, Java ni Javascripts. -Soporta protocolo IMAP. -Mantiene la conexión abierta. -Soporta MIME (lee con éxito el "mime-torture-test-mailbox"). -Soporta el envío de adjuntos. -No hay trasiego de contraseñas durante la sesión: la contraseña se envía tan sólo una vez al principio. -Puede funcionar bajo servidor seguro (SSL). -Soporte de agenda, firma y múltiples buzones en el servidor. -Todo el sistema funciona bajo un mismo usuario de UNIX. ¡No setuids!. -Soporte multilenguaje (hasta ahora traducido a inglés, español y catalán). -Ayuda completa para cada pantalla. -Interfaz estética y ergonómica.
Y, además:
-Marcado y operación con múltiples mensajes a la vez. -Posibilidad de uso del boton BACK del navegador sin pérdida de sincronismo con el servidor. -Almacenamiento automático de mensajes enviados y volcado de todo un buzón. -Reenvío de adjuntos. -Almacenamiento de borradores entre sesiones. -Es capaz de mostrar adjuntos HTML con imágenes adjuntadas "in-line", los URLs dentro de los mensajes se muestran como "links" efectivos. -Conmutación automática de servidor IMAP en función de tabla usuario-servidor. -Filtros para evitar conexiones múltiples (múltiples pulsaciones de botones) y cierre automático de conexión previa en caso de reconexión. -Tiempo de respuesta y ocupación de memoria optimizados. -Identificación dinámica de cuál es el proceso que atiende a cada usuario.
Las funciones IMAP y MIME se implementan via la libreria estándar c-client de la Universidad de Washington (escrita por Mark Crispin, el autor de la especificación IMAP). El envío de adjuntos se realiza mediante "Form-based File Upload" especificado en el rfc1867.
Postman se compone de dos elementos: un pequeño cgi-bin llamado cada vez por el servidor WWW, y un "daemon" permanente encargado de lanzar los servidores (uno por sesión de usuario) que atienden a los cgi-bin y que mantienen las conexiones con los servidores IMAP.
Postman ha sido compilado y probado con éxito en UNIX en Linux y HP-UX. No se espera que tenga problemas graves de portabilidad a otros "sabores" de UNIX. Ha funcionado con los servidores IMAP de la UW y el Cyrus.
Postman esta siendo usado en producción desde principios del año 2000 en la Universitat de València en un servidor HP-UX con 256 MB de RAM y soportando picos de hasta 90 usuarios simultáneos sin producir ninguna carga notable en el servidor. Un software anterior, que hacia uso de otra tecnología (mod_perl), agotaba los recursos del servidor con 60 o menos usuarios.
Postman se puede usar con cualquier navegador (Internet Explorer, Netscape...), incluído el lynx (navegador sólo texto).