Integración de Oracle APEX con Email Delivery

Utilice Oracle APEX para enviar correos electrónicos a través del servicio Email Delivery.

Configuración de Oracle APEX para enviar correo electrónico a través de Email Delivery

Puede utilizar el paquete APEX_MAIL para enviar correos electrónicos desde aplicaciones de Oracle APEX desplegadas en Autonomous Transaction Processing. Consulte Autonomous Database for Transaction Processing and Mixed Workloads y Aprovisionamiento de Autonomous Database para obtener más información.

Importante

Estas instrucciones contienen código de ejemplo para su comodidad y se deben utilizar como referencia. Para obtener soporte de cliente, debe ponerse en contacto con el servicio de soporte al cliente de Oracle APEX. Estos pasos se probaron en una instancia informática de Oracle Linux Server versión 7.9.

Antes de utilizar APEX_MAIL, debe configurar Oracle Cloud Infrastructure Email Delivery en la instancia de APEX.

Para activar la funcionalidad APEX_MAIL en la instancia de APEX en Autonomous Transaction Processing:

  1. Identifique el punto final de conexión SMTP para Email Delivery. En el paso 4, configure el punto final como el host SMTP en su instancia de APEX. Consulte Configuración de la conexión SMTP para obtener más información.
  2. Genere credenciales SMTP para Email Delivery. Su instancia de APEX utiliza credenciales para autenticarse con los servidores de Email Delivery cuando envía un correo electrónico. Consulte Creación de credenciales SMTP para un usuario para obtener más información.
  3. Cree un remitente aprobado para Email Delivery. Debe realizar este paso para todas las direcciones de correo electrónico que utilice como origen con llamadas de APEX_MAIL.SEND, como la dirección de origen de correo electrónico en sus aplicaciones o en el parámetro de instancia SMTP_FROM. Consulte Gestión de remitentes aprobados para obtener más información.
  4. Nota

    Se recomienda crear objetos de credenciales para almacenar nombres de usuario y contraseñas y transferir de forma segura los objetos de credenciales para definir la autenticación SMTP. Para obtener más información, consulte Use Credential Objects to set SMTP Authentication.
    También puede conectarse a Autonomous Transaction Processing como usuario ADMIN con el cliente SQL y configurar los siguientes parámetros SMTP con APEX_INSTANCE_ADMIN.SET_PARAMETER:
    • SMTP_HOST_ADDRESS: especifica el punto final de conexión SMTP del paso 1.
    • SMTP_USERNAME: especifica el nombre de usuario de la credencial SMTP del paso 2.
    • SMTP_PASSWORD: especifica la contraseña de la credencial SMTP del paso 2.

    Por ejemplo:

    BEGIN
    	APEX_INSTANCE_ADMIN.SET_PARAMETER('SMTP_HOST_ADDRESS', 'smtp.us-phoenix-1.oraclecloud.com');
    	APEX_INSTANCE_ADMIN.SET_PARAMETER('SMTP_USERNAME', 'ocid1.user.oc1.username');
    	APEX_INSTANCE_ADMIN.SET_PARAMETER('SMTP_PASSWORD', 'password');
    	COMMIT;
    END;
    /			
  5. Envíe un correo electrónico de prueba mediante el taller de SQL de APEX, con comandos SQL que especifiquen uno de los remitentes aprobados del paso 3. Por ejemplo:

    BEGIN
    	APEX_MAIL.SEND(p_from => 'alice@example.com',
    		       p_to   => 'bob@example.com',
    		       p_subj => 'Email from Oracle Autonomous Database',
    	               p_body => 'Sent using APEX_MAIL');
    END;
    /			
  6. Para supervisar la entrega del correo electrónico en la instancia de APEX:
    1. Inicie sesión en los servicios de administración de APEX.
    2. Abra la página Gestionar instancia.
    3. Haga clic en el enlace Cola de correo en la sección Gestionar metadatos.

      O bien, consulte las vistas APEX_MAIL_QUEUE y APEX_MAIL_LOG con un cliente SQL.