SendGatewayMessage

Description

Sends an outgoing message through a ColdFusion event gateway.

Returns

String. The value returned depends on the gateway type.

Function syntax

SendGatewayMessage(gatewayID, data)

History

ColdFusion MX 7: Added this function.

Parameters

Parameter

Description

gatewayID

Identifier of the gateway to send the message. Must be the Gateway ID of one of the ColdFusion event gateway instances configured on the ColdFusion Administrator Event Gateways section’s Gateways page.

data

A ColdFusion structure. The contents of the structure depend on the event gateway type, but typically include a MESSAGE field that contains the message to send and a field that contains the destination address.

Usage

The SendGatewayMessage function calls the specified gateway’s outgoingMessage method. The value returned by the function depends on the gateway type. The following table describes the return values for standard ColdFusion gateway types:

Gateway type

Return values

Asynchronous CFML

If the message was queued for delivery to the CFC, returns True; False, otherwise.

Lotus SameTime

If the message or command was successful, returns OK.

If an error occurred, returns a string indicating the cause.

SMS

If the gateway is in asynchronous mode, returns the empty string immediately.

If the gateway is in synchronous mode, the function waits for the gateway to return a response. If the message was successfully sent to the short message service center (SMSC), returns the message ID from the SMSC. If an error occurred, returns a string indicating the cause.

XMPP

If the message or command was successful, returns OK

If an error occurred, returns a string indicating the cause.

Example

The following example uses an instance of the CFML gateway to log messages asynchronously to a file. To use this example, configure an instance of the CFML gateway with the name “Asynch Logger” in the ColdFusion Administrator. This gateway instance must use a CFC that takes the message and logs it. For sample CFC code, see Using the CFML event gateway for asynchronous CFCs in the Developing ColdFusion Applications.

Sending an event to the CFML event gateway that is registered in the  
    ColdFusion Administrator as Asynch Logger.<br> 
<cfscript> 
    status = false; 
    props = structNew(); 
    props.message = "Replace me with a variable with data to log";     
    status = SendGatewayMessage("Asynch Logger", props); 
    if (status IS True) WriteOutput('Event Message "#props.message#" has been sent.'); 
</cfscript>