4D Internet Commands v15

SMTP_Charset

Inicio

 
4D Internet Commands v15
SMTP_Charset

SMTP_Charset 


 

SMTP_Charset ( codifEncab ; conjCuerpos ) -> resultado 
Parámetro Tipo   Descripción
codifEncab  Entero in -1 = Utilizar la configuración actual, 0 = No hacer nada, 1 = Convertir utilizando el conjunto de caracteres especificado si ISO-8859-1 o ISO-2022-JP, codificar los caracteres extendidos
conjCuerpos  Entero in -1 = Utilizar el parámetro actual, 0 = No hace nada, 1 = Convertir en el conjunto de caracteres Mac OS si ISO-8859-1 o ISO-2022-JP
resultado  Entero in Código de error

El comando SMTP_Charset permite el soporte automático de los mensajes que contienen caracteres extendidos, durante su envío con los comandos SMTP_QuickSend o SMTP_Send.

El comando SMTP_Charset permite, por una parte, definir si el conjunto de caracteres definido en el parámetro tipoCuerpo del comando SMTP_SetPrefs debe aplicarse a los encabezados cuerpos de los mensajes a enviar; por otra parte, permite definir si un encabezado contiene caracteres extendidos que debe ser codificados utilizando la sintaxis “=?ISO-8859-1?Q?Test=E9?= …” como lo especifica la RFC1342. Este comando tiene un alcance interprocesos y tendrá efecto en todos los mensajes posteriores que se envíen con SMTP_QuickSend y SMTP_Send en todos los procesos 4D.

Este comando es especialmente útil para soportar caracteres extendidos incluidos en los encabezados del mensaje, tales como Asunto o los nombres insertados en las direcciones (por ejemplo, para la codificación de direcciones como “=?ISO-8859-1?Q?Test=E9?= <test@n.net >”).

Los encabezados de los mensajes y los nombres de los archivos adjuntos serán codificados de la siguiente manera, de acuerdo a la RFC1342:

  • Para los encabezados Asunto y Comentarios y los nombres de los archivos adjuntos: toda la cadena se codifica en base 64 si incluye caracteres extendidos.
  • Para los encabezados From, To, CC, Bcc, Sender, ReplyTo, InReplyTo:
    • Cualquier texto entre (“<”, “>”) es sistemáticamente considerado como una dirección de correo electrónico y no se codifica.
    • Los caracteres separadores tales como SPC < > ( ) @ , ; : " / ? . = no se codifican.
    • Las cadenas delimitadas por caracteres especiales se codifican en base 64 si incluyen caracteres extendidos.
    • Ejemplos de direcciones:
      someone@somewhere no se codifica;
      Michèle <michele@somewhere>, sólo se codifica el nombre Michèle.
  • Los otros encabezados no son codificados.

El parámetro encodeHeaders especifica cómo manejar la conversión de encabezado y la codificación durante el envío de un mensaje. El valor por defecto es 0.

  • -1: Usar la configuración actual;
  • 0: No hace nada;
  • 1:
    • Por una parte, si el parámetro tipoCuerpos SMTP_SetPrefs define el conjunto de caracteres como ISO-8859-1 o ISO-2022-JP, los encabezados se convierten utilizando el conjunto de caracteres especificado.
    • Por otra parte, los encabezados se codifican utilizando la siguiente sintaxis “=? Charset specified by the SMTP_SetPrefs command? Base64 Encoding?Test=E9?= …” (ver RFC#1342) if they include si incluyen caracteres extendidos, sin importar el conjunto de caracteres especificado.
    • Excepción: el encabezado Asunto se codifica utilizando el método de codificación dado por tipoCuerpo del comando SMTP_SetPrefs si es necesario.

Nota: los encabezados extendidos de tipo X_Mailer deben estar en ASCII US.

El parámetro conjCuerpos define los tratamientos a aplicar al cuerpo del mensaje durante su envío. El valor por defecto es 0.

  • -1: Usar la configuración actual;
  • 0: No hace nada;
  • 1: si el parámetro tipoCuerpos SMTP_SetPrefs  define el conjunto de caracteres como ISO-8859-1 o ISO-2022-JP, el cuerpo del texto del mensaje se convierte utilizando el conjunto de caracteres especificado.

Ejemplo  

En este ejemplo, el asunto y el cuerpo se convierten utilizando el conjunto de caracteres UTF-8 y el asunto está codificado de acuerdo a la sintaxis RFC 1342:

 SMTP_SetPrefs(1;1;0)
 $err:=SMTP_Charset(1;1)
 $err:=SMTP_QuickSend("mymail.com";"myaddress";"destination";"the Euro €";"the Euro symbol is €")



Ver también 

POP3_Charset
SMTP_SetPrefs

 
PROPIEDADES 

Producto: 4D Internet Commands
Tema: IC Send Mail
Número 88892

 
HISTORIA 

Modificado: 4D Internet Commands 6.8.1

 
ARTICLE USAGE

4D Internet Commands ( 4D Internet Commands v15)