For the complete experience, please enable JavaScript in your browser. Thank you!

  • Creative Cloud
  • Photoshop
  • Illustrator
  • InDesign
  • Premiere Pro
  • After Effects
  • Lightroom
  • See all
  • See plans for: businesses photographers students
  • Document Cloud
  • Acrobat DC
  • eSign
  • Stock
  • Elements
  • Marketing Cloud
  • Analytics
  • Audience Manager
  • Campaign
  • Experience Manager
  • Media Optimizer
  • Target
  • See all
  • Acrobat Reader DC
  • Adobe Flash Player
  • Adobe AIR
  • Adobe Shockwave Player
  • All products
  • Creative Cloud
  • Individuals
  • Photographers
  • Students and Teachers
  • Business
  • Schools and Universities
  • Marketing Cloud
  • Document Cloud
  • Stock
  • Elements
  • All products
  • Get Support
    Find answers quickly. Contact us if you need to.
    Start now >
  • Learn the apps
    Get started or learn new ways to work.
    Learn now >
  • Ask the community
    Post questions and get answers from experts.
    Start now >
    • About Us
    • Careers At Adobe
    • Investor Relations
    • Privacy  |  Security
    • Corporate Responsibility
    • Customer Showcase
    • Events
    • Contact Us
News
    • 3/22/2016
      Adobe Summit 2016: Are You An Experience Business?
    • 3/22/2016
      Adobe Announces Cross-Device Co-op to Enable People-Based Marketing
    • 3/22/2016
      Adobe and comScore Advance Digital TV and Ad Measurement
    • 3/22/2016
      Adobe Marketing Cloud Redefines TV Experience
CFML Reference / 

onBuddyStatus

Adobe Community Help


Applies to

  • ColdFusion

Contact support

 
By clicking Submit, you accept the Adobe Terms of Use.
 

Description

Handles incoming messages indicating online status (presence) changes of users on the gateway's buddy list.

Syntax

onBuddyStatus(CFEvent)

See also

onIncomingMessage, onAddBuddyRequest, onAddBuddyResponse, onIMServerMessage

Parameters

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 (buddy name) of the message originator.

cfcMethod

This CFC method; by default, onIMServerMessage.

data.BUDDYNAME

The sender's buddy name, or ID; identical to the originatorID.

data.BUDDYNICKNAME

The buddy's display name or nickname.

data.BUDDYSTATUS

The buddy's status; one of the following:

  • ONLINE
  • OFFLINE
  • AWAY
  • DO NOT DISTURB
  • NOT AVAILABLE
  • FREE TO CHAT
  • IDLE
    XMPP only
  • NOT AVAILABLE
  • FREE TO CHAT
  • IDLE
    Sametime only
  • IDLE
    Use the IMGatewayHelper getCustomAwayMessage method to get any custom message that the buddy sent when changing status.

data.BUDDYGROUP

The group that the buddy belongs to.

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.

 

You configure the buddy's nickname and group when you use the gatewayHelper object addBuddy method to add a buddy.

Returns

The function does not return a value.

Example

The following example keeps an Application scope structure up-to-date with a buddy's status. It also uses the gatewayhelper object getBuddyStatus method to get the buddy's custom away message, if any.

<cffunction name="onBuddyStatus">
<cfargument name="CFEvent" type="struct" required="YES">
<!--- Get the gatewayhelper object and to get the info for this buddy. --->
<!--- This is used to get the buddy's custom away message. --->
<cfset helper = getGatewayHelper("MYIM")>
<cfset mybuddyinfo=helper.getBuddyInfo(CFEvent.Data.BUDDYNAME)>

<cflog file="#CFEvent.GatewayID#Status" type="Information"
text="in OnbuddyStatus, sender is #CFEvent.OriginatorID#">
<cflock scope="APPLICATION" timeout="10" type="EXCLUSIVE">
<cfscript>
// Create the status structures if they don't exist.
if (NOT StructKeyExists(Application, "buddyStatus")) {
Application.buddyStatus=StructNew();
}
if (NOT StructKeyExists(Application.buddyStatus,
CFEvent.Data.BUDDYNAME)) {
Application.buddyStatus[#CFEvent.Data.BUDDYNAME#]=StructNew();
}
// Save the buddy status, timestamp, and custom away message
Application.buddyStatus[#CFEvent.Data.BUDDYNAME#].status=
CFEvent.Data.BUDDYSTATUS;
Application.buddyStatus[#CFEvent.Data.BUDDYNAME#].timeStamp=
CFEvent.Data.TIMESTAMP;
// The following assumes that the buddy is in only one group.
Application.buddyStatus[#CFEvent.Data.BUDDYNAME#].customAway=
mybuddyinfo[1].BUDDYCUSTOMAWAYMESSAGE;
</cfscript>
</cflock>
<!--- log the info, for debugging purposes only --->
<cfset temp=Application.buddyStatus[#CFEvent.Data.BUDDYNAME#].status>
<cflog file="#CFEvent.GatewayID#Status" type="Information" text=
"Application.buddyStatus[#CFEvent.Data.BUDDYNAME#].status is #temp#">
<cfset temp=Application.buddyStatus[#CFEvent.Data.BUDDYNAME#].timeStamp>
<cflog file="#CFEvent.GatewayID#Status" type="Information" text=
"Application.buddyStatus[#CFEvent.Data.BUDDYNAME#].timestamp is #temp#">
<cflog file="#CFEvent.GatewayID#Status" type="Information" text=
"Buddy Custom Away Message is mybuddyinfo[1].BUDDYCUSTOMAWAYMESSAGE#">
</cffunchtion>

This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License  Twitter™ and Facebook posts are not covered under the terms of Creative Commons.

Legal Notices   |   Online Privacy Policy

Choose your region United States (Change)   Products   Downloads   Learn & Support   Company
Choose your region Close

Americas

Europe, Middle East and Africa

Asia Pacific

  • Brasil
  • Canada - English
  • Canada - Français
  • Latinoamérica
  • México
  • United States
  • Africa - English
  • Österreich - Deutsch
  • Belgium - English
  • Belgique - Français
  • België - Nederlands
  • България
  • Hrvatska
  • Cyprus - English
  • Česká republika
  • Danmark
  • Eesti
  • Suomi
  • France
  • Deutschland
  • Greece - English
  • Magyarország
  • Ireland
  • Israel - English
  • ישראל - עברית
  • Italia
  • Latvija
  • Lietuva
  • Luxembourg - Deutsch
  • Luxembourg - English
  • Luxembourg - Français
  • Malta - English
  • الشرق الأوسط وشمال أفريقيا - اللغة العربية
  • Middle East and North Africa - English
  • Moyen-Orient et Afrique du Nord - Français
  • Nederland
  • Norge
  • Polska
  • Portugal
  • România
  • Россия
  • Srbija
  • Slovensko
  • Slovenija
  • España
  • Sverige
  • Schweiz - Deutsch
  • Suisse - Français
  • Svizzera - Italiano
  • Türkiye
  • Україна
  • United Kingdom
  • Australia
  • 中国
  • 中國香港特別行政區
  • Hong Kong S.A.R. of China
  • India - English
  • 日本
  • 한국
  • New Zealand
  • Southeast Asia (Includes Indonesia, Malaysia, Philippines, Singapore, Thailand, and Vietnam) - English
  • 台灣

Commonwealth of Independent States

  • Includes Armenia, Azerbaijan, Belarus, Georgia, Moldova, Kazakhstan, Kyrgyzstan, Tajikistan, Turkmenistan, Ukraine, Uzbekistan

Copyright © 2016 Adobe Systems Incorporated. All rights reserved.

Terms of Use | Privacy | Cookies

AdChoices