4D Internet Commands v14

SMTP_Charset

Inicio

 
4D Internet Commands v14
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. Si este comando no se llama o tiene los parámetros en 0, los Internet Commands versión 6.7 o superior funcionarán del mismo modo que la versión 6.5.x.

El comando SMTP_Charset permite en primer lugar, definir si el conjunto de caracteres definido en el parámetro tipoCuerpo del comando SMTP_SetPrefs debe aplicarse a los encabezados y cuerpos de los mensajes a enviar; en segundo lugar, para definir si un encabezado que contiene caracteres extendidos debe ser codificados utilizando la sintaxis “=?ISO-8859-1?Q?Test=E9?= …” como lo especifica la RFC # 1342. 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 >”).

Dependiendo de los encabezados del mensaje, la codificación (siempre se establece en base 64 (a excepción del encabezado Asunto) y dependiendo del valor del parámetro tipoCuerpo del comando SMTP_SetPrefs) se efectúa de la manera siguiente:

  • Para los encabezados Asunto y Comentarios (llamado "encabezados no estructurados"): toda la cadena se codifica si incluye caracteres extendidos.
  • Para los encabezados From, To, CC, Bcc, Sender, ReplyTo, InReplyTo (llamados "encabezados estructurados"):
    • 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 si incluyen caracteres extendidos.
    • Ejemplos de direcciones:
      someone@somewhere no se codifica;
      Michèle <michele@somewhere>, sólo se codifica el nombre Michèle.

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 hacer nada;
  • 1:
    • Por una parte, si el comando SMTP_SetPrefs define el conjunto de caracteres 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) si incluyen caracteres extendidos, sin importar el conjunto de caracteres especificado.
    • Excepción: el encabezado Asunto se codifica en el modo definido por el parámetro 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 hacer nada;
  • 1: si el comando SMTP_SetPrefs define el conjunto de caracteres como ISO-8859-1 o ISO-2022-JP, el cuerpo 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 ISO-8859-1 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("mimail.com";"midireccion";"destino";"El Euro €";"el símbolo de Euro es €")

 
PROPIEDADES 

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

 
HISTORIA 

Modificado: 4D Internet Commands 6.8.1

 
VER TAMBIÉN 

POP3_Charset
SMTP_SetPrefs

 
ARTICLE USAGE

4D Internet Commands ( 4D Internet Commands v11.4)
4D Internet Commands ( 4D v13.2)
4D Internet Commands ( 4D Internet Commands v12.1)
4D Internet Commands ( 4D Internet Commands v14 R2)
4D Internet Commands ( 4D Internet Commands v14)
4D Internet Commands ( 4D Internet Commands v14 R3)
4D Internet Commands ( 4D Internet Commands v14 R4)