Integrar aplicaciones de webmail personalizadas

Para la versión 11.28 de WHM en adelante

Puede modificar su aplicación preferida de webmail de tercero para que esté disponible para sus usuarios con la interfaz Webmail de cPanel.

Para hacerlo, siga los pasos a continuación:

Crear un archivo de registro de webmail

Para empezar, tendrá que crear un archivo de registro de webmail.

El archivo de registro de webmail es un archivo YAML que contiene un solo hash con las siguientes claves requeridas:

  • url — La ruta hacia la aplicación de webmail en cuestión (por ejemplo, /3rdparty/somewebmailapp/).
  • displayname — El nombre que aparecerá en la interfaz de cPanel (por ejemplo, Some Webmail Application).
  • icon — La ruta al icono que aparecerá en la interfaz de cPanel (por ejemplo, /3rdparty/somewebmailapp/icon.png).

Puede usar el siguiente script de Perl para crear este archivo:

#!/usr/bin/perl

use lib '/usr/local/cpanel';
use Cpanel::DataStore;

my $app = {
	url => '/3rdparty/mywebmailapp/index.php',
	displayname => 'My Webmail Application',
	icon => '/3rdparty/mywebapp/icon.gif',
};

Cpanel::DataStore::store_ref('/var/cpanel/webmail/webmail_mywebmailapp.yaml', $app) || die("could not write webmail registration file");

Una vez que este archivo esté en su sitio (en /var/cpanel/webmail/webmail_mywebmailapp.yaml), su aplicación de webmail deberá aparecer en la interfaz Webmail del usuario de cPanel.

PICK Importante: El nombre del archivo en /var/cpanel/webmail/ debe comenzar con webmail_ y terminar con .yaml o el archivo será ignorado.

Colocar y modificar la aplicación de webmail

Ahora, tiene que poner la misma aplicación de webmail en su lugar.

El lugar apropiado para la aplicación es /usr/local/cpanel/base/3rdparty/ Las aplicaciones dentro de este directorio se ejecutarán como el usuario que posee la cuenta de correo electrónico. Normalmente, tendrá que hacer tres modificaciones a una aplicación de webmail para que se integre perfectamente en cPanel:

  • Automatizar los inicios de sesión
  • Editar el archivo de configuración
  • Configurar las bases de datos

Automatizar los inicios de sesión

Es preferible tener inicios de sesión automáticos. Puede automatizar los inicios de sesión al modificar el formulario de inicio de sesión para obtenga los datos de autenticación con las variables entornos REMOTE_USER y REMOTE_PASSWORD. Luego, coloque los datos en campos escondidos dentro de la página de inicio.

La mayoría de las aplicaciones de webmail utilizan un sistema de plantilla para mostrar estos datos. Si su aplicación de webmail utiliza un sistema de plantilla, tendrá que añadir una clave de plantilla adicional.

Editar el archivo de configuración

El archivo de configuración o el procesador de archivo de configuración normalmente tendrá que ser editado para algunas configuraciones importantes. Como esto cambiará drásticamente entre aplicaciones, aquí hay algunas configuraciones a observar:

Archivos de usuario

Quizás sea necesario especificar una ubicación para almacenar archivos temporales para el usuario. Debe colocar estos archivos en el directorio $homedir/tmp/$appname

  • note ¡Ojo!: En el ejemplo anterior, tendrá que reemplazar $homedir con su directorio principal y $appname con un directorio con el mismo nombre que la aplicación.

Rutas de aplicación de sistema

Algunas aplicaciones de webmail dependen de las utilidades a nivel de sistema operativo, como aspell o gpg, para proporcionar ciertas características. Por lo general, una aplicación de webmail detectará automáticamente estas utilidades. Otras pueden requerir que usted proporcione la ubicación de estas utilidades en el archivo de configuración. Esto variará de acuerdo con la aplicación de correo web.

Servidores de correo

Las aplicaciones de webmail pueden especificar cuál servidor de IMAP, POP3 o SMTP se utilizan en el archivo de configuración. Asegúrese de que esté colocado en el servidor correcto (normalmente localhost).

Base de datos

El nombre y las referencias de la base de datos tendrán que ser automatizados. Esto cambiará según la aplicación en cuestión.

Configurar las bases de datos

Si su aplicación de webmail usa una base de datos, tendrá que manejarse de una manera específica.

Esto es porque las aplicaciones de webmail, por lo general, necesitan tener sus bases de datos separadas para evitar el compartir contraseñas de bases de datos entre cuentas de cPanel.

  • Si la aplicación de webmail ofrece la capacidad de usar SQLute, le recomendamos usarlo y almacenar la base de datos dentro del directorio principal del usuario.
  • Si no hay soporte para SQLite, tendrá que crear un usuario y una base de datos para cada usuario en cuestión, y almacenar sus datos localmente.
    • Después de crear la cuenta, puede usar el hook (gancho) postwwwacct para automatizar esta acción (en inglés).
    • Su instalación de script también tendrá que revisar todos los usuarios de cPanel en un sistema e instalar el usuario y la base de datos MySQL para cada usuario de cPanel.

Empaquetar la aplicación

Una vez su aplicación haya sido integrarada con éxito, tendrá que empaquetarla. Hay varias maneras de hacerlo; sin embargo, para la instalación, le recomendamos distribuir un tarball que contiene:

  • fuentes prístinas,
  • un archivo de parche,
  • un script de instalación y
  • un script de desinstalación.

Fuentes prístinas y parche

Las fuentes prístinas y un parche a menudo se requieren para la licencia de una aplicación de webmail. Esto les permitirá a los usuarios ver cómo logró intergrar su webmail y qué cambios se le han hecho a la base de la fuente.

Scripts de instalación y desinstalación

Los scrips de instalación y desinstalación facilitan el proceso de instalar la nueva aplicación. El script de instalación debe:

  1. Extraer las fuentes prístinas a /usr/local/cpanel/base/3rdparty
  2. Aplicar el parche.
  3. Crear un archivo de registro de webmail.

Preguntas frecuentes

¿Están incluidas las bases de datos que son usadas con las aplicaciones de webmail personalizadas en los respaldos de cPanel?

Esto dependerá de la configuración de su aplicación de webmail. Si las bases de datos se almacenan en el directorio principal, estarán incluidas en el respaldo.

¿Cómo se manejan los archivos de sesión en las aplicaciones de PHP? ¿Irá a /tmp u otro lugar?

Esto depende totalmente de la configuración de la aplicación de webmail. Para encontrar esta respuesta, examine la configuración de su aplicación de webmail PHP.

Topic revision: r12 - 28 Mar 2012 - 23:00:14 - Main.RosieArcelay
AllDocumentation/Es/WHMDocsEs.WebmailAppsEs moved from AllDocumentation/Es/GuiaUsuarioWHM.WebmailAppsEs on 29 Sep 2011 - 20:02 by Main.RosieArcelay - put it back