estructura de FAX_DEV_STATUS (faxdev.h)

La estructura FAX_DEV_STATUS contiene información de estado e identificación sobre una operación de fax activa individual.

Sintaxis

typedef struct _FAX_DEV_STATUS {
  DWORD  SizeOfStruct;
  DWORD  StatusId;
  DWORD  StringId;
  DWORD  PageCount;
  LPWSTR CSI;
  LPWSTR CallerId;
  LPWSTR RoutingInfo;
  DWORD  ErrorCode;
  DWORD  Reserved[3];
} FAX_DEV_STATUS, *PFAX_DEV_STATUS;

Miembros

SizeOfStruct

Tipo: DWORD

Especifica el tamaño, en bytes, de la estructura FAX_DEV_STATUS . Antes de responder a la función FaxDevReportStatus , el FSP debe establecer este miembro en sizeof(FAX_DEV_STATUS).

StatusId

Tipo: DWORD

Especifica un código o valor de estado de fax. Puede ser un código de estado de fax predefinido (que se muestra a continuación), uno de los códigos de error tapi LINEERR_ constantes o un valor que define el FSP. Si el identificador de estado está definido por el proveedor, el FSP también debe proporcionar un valor para el miembro StringId . A continuación se muestran los códigos de estado de fax predefinidos.

Valor Significado
FS_INITIALIZING La llamada se está inicializando.
FS_DIALING El FSP está marcando dígitos para la llamada.
FS_TRANSMITTING El FSP transmite el documento de fax.
FS_RECEIVING El FSP recibe el documento de fax.
FS_COMPLETED La llamada de transmisión de fax está completa.
FS_LINE_UNAVAILABLE El FSP no puede completar la llamada porque el dispositivo no está disponible.
FS_BUSY El FSP recibió una señal ocupada.
FS_NO_ANSWER El FSP no puede completar la llamada porque el dispositivo receptor no responde.
FS_BAD_ADDRESS El FSP no puede completar la llamada porque la dirección de destino no es válida.
FS_NO_DIAL_TONE El FSP no puede completar la llamada porque no detecta un tono de marcado.
FS_DISCONNECTED El dispositivo receptor desconectó la llamada.
FS_FATAL_ERROR Se ha producido un error irrecuperable.
FS_NOT_FAX_CALL La llamada es una llamada de datos o una llamada de voz.
FS_CALL_DELAYED El FSP recibió una señal ocupada varias veces. El proveedor no puede reintentar porque existen restricciones de marcado. (Algunos países o regiones restringen el número de reintentos cuando un número está ocupado).
FS_USER_ABORT El FSP ha cancelado la transmisión. La cancelación puede deberse a una llamada a la función FaxDevAbortOperation . Los FSP también pueden proporcionar una interfaz de usuario para la cancelación de las transmisiones de fax.
FS_ANSWERED El FSP respondió a la llamada entrante, pero aún no recibe la llamada. Este estado indica al servicio de fax que es posible que la llamada no sea una llamada de fax.
FS_CALL_BLACKLISTED El FSP no puede completar la llamada porque el número de teléfono está bloqueado o reservado, por ejemplo, una llamada al 911 u otro número de emergencia.

Los códigos de estado de fax FS_BAD_ADDRESS, FS_CALL_BLACKLISTED y FS_USER_ABORT no producirán reintentos. El código de estado del fax FS_LINE_UNAVAILABLE dará lugar a un reintento inmediato en caso de que la línea no esté disponible porque el servicio perdió la conexión con el dispositivo (TAPI envió LINE_CLOSE y el FSP notificó FS_LINE_UNAVAILABLE). El reintento depende de si el dispositivo se detecta de nuevo en línea. Todos los demás códigos de estado de fax darán lugar a que el servicio de fax administre los reintentos.

StringId

Tipo: DWORD

Especifica un identificador de recurso de cadena para el miembro StatusId si statusId está definido por el proveedor. El servicio de fax carga la cadena de la imagen del FSP. Si StatusId contiene un valor o código de estado definido por el proveedor, se requiere este miembro. Si StatusId contiene un valor o código de estado predefinido, se omite este miembro.

PageCount

Tipo: DWORD

Especifica el número de la página en la transmisión de fax que recibe el FSP. El recuento de páginas es relativo a uno.

CSI

Tipo: LPWSTR

Puntero a una cadena de caracteres Unicode terminada en null que especifica un identificador del dispositivo de fax remoto que está conectado con la llamada actual a la función FaxDevReceive o FaxDevSend .

Si la operación envía un fax, el identificador especifica el CSID del dispositivo remoto; Si la operación recibe un fax, el identificador especifica el TSID del dispositivo remoto.

CallerId

Tipo: LPWSTR

Puntero a una cadena de caracteres Unicode terminada en null que identifica el dispositivo que llama que envió el documento de fax recibido. Esta cadena puede incluir el número de teléfono del dispositivo que llama.

RoutingInfo

Tipo: LPWSTR

Puntero a una cadena de caracteres Unicode terminada en null que especifica la cadena de enrutamiento para un fax entrante. La cadena debe tener el formato :

Canonical-Phone-Number[|Additional-Routing-Info]

donde Canonical-Phone-Number se define en el tema Address de la documentación de TAPI (vea la subpartida Dirección canónica); y Additional-Routing-Info es la subaddress de una dirección canónica y usa el formato de subaddress.

Para el enrutamiento did, anexe los dígitos DID específicos al prefijo de número de teléfono. La dirección DID debe ser el número de teléfono canónico que corresponde al número de teléfono completo que el remitente habría marcado.

Si hay información de enrutamiento adicional, por ejemplo, subaddressing o DTMF tonos, separe del número de teléfono canónico por un carácter de barra vertical como se indica en la especificación TAPI. Puede especificar varios destinatarios.

Para obtener más información, vea los subtítulos Dirección de marcado y Dirección canónica en el tema Dirección de la documentación de TAPI.

ErrorCode

Tipo: DWORD

Especifica uno de los códigos de error del sistema Win32 [Base] que el FSP debe usar para notificar un error que se produce. El FSP debe establecer este valor en NO_ERROR cuando se ejecuta y después de que se complete normalmente un trabajo de fax.

Reserved[3]

Tipo: DWORD

Microsoft reserva este miembro. Debe establecerse en cero.

Comentarios

El FSP debe establecer todos los miembros de la estructura FAX_DEV_STATUS en la información de estado de la operación de fax activa o establecerlos en cero.

El servicio de fax asigna la memoria de las cadenas a las que apuntan los miembros CSI, CallerId y RoutingInfo . El tamaño de la memoria que asigna el servicio es igual a sizeof(FAX_DEV_STATUS) + FAXDEVREPORTSTATUS_SIZE. El FSP debe colocar las cadenas en el bloque de memoria que sigue inmediatamente a la estructura FAX_DEV_STATUS . Los miembros CSI, CallerId y RoutingInfo deben apuntar a la ubicación de las cadenas del bloque de memoria.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional, Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Encabezado faxdev.h

Consulte también

Estructuras del proveedor de servicios de fax

FaxDevReceive

FaxDevReportStatus

FaxDevSend

Uso de la API del proveedor de servicios de fax