Handles incoming instant messages from other users. Optionally returns a response to the message sender.
onIncomingMessage(CFEvent)
onAddBuddyRequest, onAddBuddyResponse, onBuddyStatus, onIMServerMessage, "Handling incoming messages" in the ColdFusion Developer's Guide
The method must take one parameter, a CFEvent structure with the following fields:
|
Field |
Description |
|---|---|
| gatewayType |
Gateway type, either XMPP or SAMETIME. |
| gatewayID |
The ID of the Gateway instance as configured in ColdFusion Administrator. |
| originatorID |
The IM ID of the message originator. |
| cfcMethod |
This CFC method; by default, onIncomingMessage. |
| data.MESSAGE |
The message that was received. |
| data.SENDER |
The sender's ID; identical to the originatorID |
| data.RECIPIENT |
The recipient's ID, as specified in the gateway's configuration file |
| data.TIMESTAMP |
The date and time when the message was sent |
The function can optionally return a value to send a response message. The return structure must contain the following fields:
|
Field |
Description |
|---|---|
|
command |
Normally omitted. You can also specify submit. |
|
buddyID |
ID to which to send the message. Normally, the value of the input parameter's Data.SENDER field. |
|
message |
The message contents. |
The following example shows a simple onIncomingMessage method that echoes a message back to the sender.
<cffunction name="onIncomingMessage">
<cfargument name="CFEvent" type="struct" required="YES">
<cfset input_mesg = CFEvent.data.MESSAGE>
<cfset retValue = structNew()>
<cfset retValue.command = "submit">
<cfset retValue.buddyID = CFEvent.originatorID>
<cfset retValue.message = "Message Received:" & input_mesg>
<cfreturn retValue>
</cffunction>