com.aol.acc
Interface AccEvents


public interface AccEvents


Method Summary
 void BeforeImReceived(AccSession session, AccImSession imSession, AccParticipant sender, AccIm im)
          Called when an IM is received.
 void BeforeImSend(AccSession session, AccImSession imSession, AccParticipant recipient, AccIm im)
          Called on the original IM that is about to be sent.
Plugins can change the IM text or suppress the entire IM by setting
the text to an empty string.
"imSession" is the IM session.
"recipient" is the user to whom the IM is being sent;
NULL if it is being sent to the entire session.
"im" is the actual IM being sent.

 void OnAlertReceived(AccSession session, AccAlert alert)
          Called when an AIM alert is received.
"alert" is the alert that was received.

 void OnAudioLevelChange(AccSession session, AccAvSession avSession, java.lang.String userName, int level)
          Called when an audio stream in an A/V session changes level.
"avSession" is the A/V session in which the audio ;eve; change is occurring.
"userName" is the user for whom the the audio level change is occuring;
NULL indicates the local user.
"level" is the new audio level (0-100).

 void OnAvManagerChange(AccSession session, AccAvManager avManager, AccAvManagerProp prop, AccResult hr)
          Called when an A/V manager prop changes.
"avManager" is the A/V manager.
"prop" is the A/V manager prop that changed
"hr" is the reason for the state change.

 void OnAvStreamStateChange(AccSession session, AccAvSession avSession, java.lang.String userName, AccAvStreamType stream, AccSecondarySessionState state, AccResult hr)
          Called when a stream in an A/V session changes state.
"avSession" is the A/V session in which the change is occuring.
"userName" is the user for whom the state change is occuring;
NULL indicates the local user.
"stream" indicates which stream is changing state.
"state" is the new state for the stream.
"hr" is the reason for the state change.

 void OnBartItemRequestPropertyResult(AccSession session, AccBartItem bartItem, AccBartItemProp property, int transId, AccResult hr, AccVariant propertyValue)
          Called when IAccBartItem::RequestProperty() completes.
"bartItem" is the bart item on which the request was made.
"property" is the property that was requested.
"transId" is the transaction id returned from RequestProperty.
"hr" is the result of the operation.
"propertyValue" contains the value of the specified property,
or empty if an failure occurred.

 void OnBuddyAdded(AccSession session, AccGroup group, AccUser user, int position, AccResult hr)
          Called when a user has been added to the specified group in
the Buddy List.
"group" is the group to which the buddy was added.
"user" is the user that was added.
"position" is the new position of the user in the group.
"hr" is the reason the add occurred.

 void OnBuddyListChange(AccSession session, AccBuddyList buddyList, AccBuddyListProp property)
          This indicates a property of the Buddy List has changed.
"buddyList" is the buddy list that has changed.
"property" is the property of the buddy list that has changed.

 void OnBuddyMoved(AccSession session, AccUser user, AccGroup fromGroup, int fromPosition, AccGroup toGroup, int toPosition, AccResult hr)
          Called when a user has been moved from one position to another position
in the Buddy List
"user" is the user that was moved.
"fromGroup" is the group the user was in.
"fromPosition" is the position of the user in the old group.
"toGroup" is the new group for the user.
"toPosition" is the position of the user in the new group.
"hr" is the reason the move occurred.

 void OnBuddyRemoved(AccSession session, AccGroup group, AccUser user, AccResult hr)
          Called when a user has been removed from the specified group in
the Buddy List.
"group" is the group from which the user was removed.
"user" is the user that was removed.
"hr" is the reason the remove occurred.

 void OnChangesBegin(AccSession session)
          Called when a series of OnBuddy/Group/User events are about to be fired.
Clients may want to defer UI updates until the series ends.

 void OnChangesEnd(AccSession session)
          Called when the series of events has completed.

 void OnConfirmAccountResult(AccSession session, int transId, AccResult hr)
          Called when IAccSession::ConfirmAccount() completes.
"transId" is the transaction id returned from ConfirmAccount.
"hr" is the result of the operation.

 void OnCustomDataReceived(AccSession session, AccCustomSession customSession, AccParticipant sender, AccIm data)
          Called when custom data is received in a custom session.
"customSession" is the custom session in which the data was received.
"sender" is the participant who sent the data.
"data" is the data that was sent.

 void OnCustomSendResult(AccSession session, AccCustomSession customSession, AccParticipant recipient, AccIm im, AccResult hr)
          Called when a send of custom data is acknowledged.
"customSession" is the custom session in which the data was sent.
"recipient" is the user to whom the data is was sent;
NULL if it was sent to the entire session.
"data" is the data that was sent.
"hr" is the result of the operation.

 void OnDeleteStoredImsResult(AccSession session, int transId, AccResult hr)
          Called when IAccStoredImManager::DeleteIms() completes.
"transId" is the transaction id returned from DeleteIms().
"hr" is the result of the operation.

 void OnDeliverStoredImsResult(AccSession session, int transId, AccResult hr)
          Called when IAccStoredImManager::DeliverIms() completes.
"transId" is the transaction id returned from DeliverIms().
"hr" is the result of the operation.

 void OnEjectResult(AccSession session, AccSecondarySession secondarySession, java.lang.String userName, int transId, AccResult hr)
          Called when a request to eject a user from a secondary session
completes.
"secondarySession" is the secondary session for the eject.
"userName" is the user that was to be ejected.
"transId" is the transaction id returned from Eject.
"hr" is the result of the operation.

 void OnEmbedDownloadComplete(AccSession session, AccImSession imSession, AccIm im)
          Called when done downloading all embeds in an IM.
Note: this event does not indicate that streams from
this IM are done being read.
"imSession" is the IM session.
"im" is the IM for which all embeds have been received.

 void OnEmbedDownloadProgress(AccSession session, AccImSession imSession, AccIm im, java.lang.String embedId, AccStream stream)
          Called while downloading an embed from an IM.
"imSession" is the IM session.
"im" is the IM in which an embed is being received.
"embedId" is the ID of the embed being received.
"stream" is the stream that is receiving the embed.

 void OnEmbedUploadComplete(AccSession session, AccImSession imSession, AccIm im)
          Called when done uploading all embeds in a message.
"imSession" is the IM session.
"im" is the IM for which all embeds have been sent.

 void OnEmbedUploadProgress(AccSession session, AccImSession imSession, AccIm im, java.lang.String embedId, AccStream stream)
          Called while uploading an embed in an IM.
"imSession" is the IM session.
"im" is the IM in which an embed is being sent.
"embedId" is the ID of the embed being sent.
"stream" is the stream that is sending the embed.

 void OnFileSharingRequestListingResult(AccSession session, AccFileSharingSession fileSharingSession, AccFileSharingItem parentItem, int transId, AccResult hr)
          Called when RequestListing completes.
"fileSharingSession" is the file sharing session.
"parentItem" is the item for which the listing was requested.
"transId" is the transaction id returned from RequestListing.
"hr" is the result of the operation.

 void OnFileSharingRequestXferResult(AccSession session, AccFileSharingSession fileSharingSession, AccFileXferSession fileXferSession, int transId, AccFileXfer fileXfer)
          Called when a file xfer is started via
IAccFileSharingItem::RequestXfer.
"fileSharingSession" is the file sharing session.
"fileXferSession" is the file transfer session for the item.
"transId" is the transaction id returned from RequestXfer.
"fileXfer" is the file being transferred.

 void OnFileXferCollision(AccSession session, AccFileXferSession fileXferSession, AccFileXfer fileXfer)
          Called when a potential file overwrite is encountered.
 void OnFileXferComplete(AccSession session, AccFileXferSession fileXferSession, AccFileXfer fileXfer, AccResult hr)
          Called when a file xfer completes.
"fileXferSession" is the file transfer session.
"fileXfer" is the that was transferred.
"hr" is the result of the file transfer.

 void OnFileXferProgress(AccSession session, AccFileXferSession fileXferSession, AccFileXfer fileXfer)
          Called repeatedly as a file xfer progresses.
"fileXferSession" is the file transfer session.
"fileXfer" is the file being transferred.

 void OnFileXferSessionComplete(AccSession session, AccFileXferSession fileXferSession, AccResult hr)
          Called when a file xfer session completes.
"fileXferSession" is the file transfer session.
"hr" is the overall result of the file transfer session.

 void OnGroupAdded(AccSession session, AccGroup group, int position, AccResult hr)
          Called when a group has been added to the Buddy List.
"group" is the group object that was added.
"position" is the new position of the added group
"hr" is the reason why the add occurred.

 void OnGroupChange(AccSession session, AccGroup group, AccGroupProp property)
          This indicates a property of a group has changed, e.g.
 void OnGroupMoved(AccSession session, AccGroup group, int fromPosition, int toPosition, AccResult hr)
          Called when a group has been moved from one position to
another position in the Buddy List.
"group" is the group that has been moved.
"fromPosition" is the old position of the group.
"toPosition" is the new position of the group.
"hr" is the reason why the move occurred.

 void OnGroupRemoved(AccSession session, AccGroup group, AccResult hr)
          Called when a group has been removed from the Buddy List.
"group" is the group that was removed.
"hr" is the reason why the remove occurred.

 void OnIdleStateChange(AccSession session, int secondsSinceActivity)
          Called when a session becomes idle, and when it returns from idle.
(Idleness refers to user activity on the computer).
When idleness occurs, "secondsSinceActivity" indicates how long
it has been since the last user activity.

 void OnImReceived(AccSession session, AccImSession imSession, AccParticipant sender, AccIm im)
          Called when an IM is received (after BeforeImReceived).
"imSession" is the IM session.
"sender" is the participant from whom the IM was sent.
"im" is the IM that was received.

 void OnImSendResult(AccSession session, AccImSession imSession, AccParticipant recipient, AccIm im, AccResult hr)
          Called when the the IM was acknowledged with an ack or an error.
"imSession" is the IM session.
"recipient" is the user to whom the IM is was sent;
NULL if it was sent to the entire session.
"im" is the IM that was sent.
"hr" is the result of the operation.

 void OnImSent(AccSession session, AccImSession imSession, AccParticipant recipient, AccIm im)
          Called when the IM is actually sent out (after BeforeImSend).
"imSession" is the IM session.
"recipient" is the user to whom the IM is was sent;
NULL if it was sent to the entire session.
"im" is the IM that was sent.

 void OnInputStateChange(AccSession session, AccImSession imSession, java.lang.String userName, AccImInputState state)
          Called when the input state of the remote client changes
(aka typing indicator).
"imSession" is the IM session
"userName" is the username whose input state changed.
"state" is the new input state of the user.

 void OnInstanceChange(AccSession session, AccInstance oldInstance, AccInstance newInstance, AccInstanceProp prop)
          Called when a property of another AIM client instance changes.
"oldInstance" is an object that represents the previous state of
the other AIM instance.
"newInstance" is an object that represents the current state of
the other AIM instance; "prop" is the property that changed.

 void OnInviteResult(AccSession session, AccSecondarySession secondarySession, java.lang.String userName, int transId, AccResult hr)
          Called when an outgoing secondary session invitation is accepted,
rejected, canceled, or times out.
"secondarySession" is the secondary session for the invite.
"userName" is the user to whom he invite was sent.
"transId" is the transaction id returned from Invite.
"hr" is the result of the operation.

 void OnLocalImReceived(AccSession session, AccImSession imSession, AccIm im)
          Called when a local "status message" IM is to be appended to IM
session history.
 void OnLookupUsersResult(AccSession session, java.lang.String[] emails, int transId, AccResult hr, AccUser[] vUsers)
          Called when IAccSession::LookupUsers() completes.
"emails" is a SAFEARRAY containing string VARIANTS, which were
passed into LookupUsers.
"transId" is the transaction id returned from LookupUsers.
"hr" is the result of the operation.
"vUsers" is a SAFEARRAY containing IAccUser VARIANTs, or empty if
a failure occurred.

 void OnNewFileXfer(AccSession session, AccFileXferSession fileXferSession, AccFileXfer fileXfer)
          Called when a file xfer is created (the actual xfer may not
start immediately).
"fileXferSession" is the file transfer session
"fileXfer" is the file being transferred.

 void OnNewSecondarySession(AccSession session, AccSecondarySession secondarySession, int serviceId)
          Called when a secondary session is started by a remote user.

 void OnParticipantChange(AccSession session, AccSecondarySession secondarySession, AccParticipant oldPart, AccParticipant newPart, AccParticipantProp prop)
          Called when a property of a participant changes.
"secondarySession" is the secondary session that the user is in.
"oldPart" is a snapshot of the user before the change.
"newPart" is the user after the change.
"prop" is the property of the participant that changed.

 void OnParticipantJoined(AccSession session, AccSecondarySession secondarySession, AccParticipant participant)
          Called when a remote user joins a secondary session.
"secondarySession" is the secondary session that was joined.
"participant" is the user that has joined the session.

 void OnParticipantLeft(AccSession session, AccSecondarySession secondarySession, AccParticipant participant, AccResult method, java.lang.String by, java.lang.String reason)
          Called when a remote user leaves a secondary session, and may
provide information on why the user left.
"secondarySession" is the secondary session that was left.
"participant" is the user that left.
"method" is the reason that the user left.
"by" is the username who caused the user to leave, if applicable.
"reason" is the text reason for why the participant was made to leave.

 void OnPluginChange(AccSession session, AccPluginInfo plugin, AccPluginInfoProp property)
          Called when a plugin is loaded or unloaded.
"plugin" is the plugin that has changed
"property" is the plugin property that changed.

 void OnPreferenceChange(AccSession session, java.lang.String specifier, AccResult hr)
          Called when a preference changes.
"specifier" is the preference specifier that has changed.
"hr" is the reason for the change.

 void OnPreferenceInvalid(AccSession session, java.lang.String specifier, AccResult hr)
          Called when a preference is no longer valid.
"specifier" is the preference specifier that is invalid.
"hr" is the reason why the preference was invalid.

 void OnPreferenceResult(AccSession session, java.lang.String specifier, int transId, java.lang.String vValue, AccResult hr)
          Called when IAccPreferences::RequestValue() completes.
"specifier" is the preference specifier queried
"transId" is the transaction id returned from RequestValue.
"vValue" contains the value of the preference requested, or
empty if a failure occurred.
"hr" is the result of the operation.

 void OnRateLimitStateChange(AccSession session, AccImSession imSession, AccRateState state)
          Called when the rate limit state changes.
"imSession" is the IM session.
"state" is the new ratelimit state for the IM session.

 void OnReportUserResult(AccSession session, AccUser user, int transId, AccResult hr, int deltaApplied, int updatedValue)
          Called when IAccUser::Report() completes.
"user" is the user that was reported.
"transId" is the transaction id returned from Report.
"hr" is the result of the operation.
"deltaApplied" is how much the target's warning level was affected.
"updatedValue" is the new warning level of the target.

 void OnRequestServiceResult(AccSession session, int transId, AccResult hr, java.lang.String host, int port, byte[] cookie)
          Called when IAccSession::RequestService() completes.
"transId" is the transaction id returned from RequestService.
"hr" indicates if the request was successful or not.
The contents of "host", "port", and "cookie"
may depend on what type of service was requested.
"host" may be the hostname of the service server, or an URL,
or other useful data.
"port" may be the TCP port that should be connected to for the service.
"cookie" may be an IAccServiceTicket, or a byte SAFEARRAY containing
authorization info for the service, or other useful data, or empty.

 void OnRequestSummariesResult(AccSession session, int transId, AccResult hr, AccVariant imSummaries)
          Called when IAccStoredImManager::RequestSummaries() completes.
"transId" is the transaction id returned from RequestSummaries().
"hr" is the result of the operation.
"imSummaries" is a SAFEARRAY containing VARIANTs of IAccImSummary*,
or empty if a failure occurred.

 void OnSearchDirectoryResult(AccSession session, int transId, AccResult hr, AccDirEntry vResults)
          Called when IAccSession::SearchDirectory() completes.
"transId" is the transaction id returned from SearchDirectory.
"hr" is the result of the operation.
"vResults" is a SAFEARRAY containing VARIANTs of IDispatch, or
empty if a failure occurred.

 void OnSecondarySessionChange(AccSession session, AccSecondarySession secondarySession, int property)
          Called when a non-state secondary session property changes.
"secondarySession" is the secondary session that has changed.
"property" is the property of the session that has changed.

 void OnSecondarySessionStateChange(AccSession session, AccSecondarySession secondarySession, AccSecondarySessionState state, AccResult hr)
          Called when a secondary session state changes.
"secondarySession" is the secondary session that changed.
"state" is the new state of the secondary session.
"hr" is the reason for the state change.

 void OnSendInviteMailResult(AccSession session, int transId, AccResult hr)
          Called when IAccSession::SendInviteMail() completes.
"transId" is the transaction id returned from SendInviteMail.
"hr" is the result of the operation.

 void OnSessionChange(AccSession session, AccSessionProp prop)
          Called when a session property, other than state, changes.
"prop" indicates the property that changed.

 void OnSoundEffectReceived(AccSession session, AccAvSession avSession, java.lang.String userName, java.lang.String url)
          Called when a user in an A/V session sends a sound effect.
"avSession" is the A/V session in which the sound effect was received.
"userName" is the user that sent the sound effect.
"url" is the URL for the sound effect data.

 void OnStateChange(AccSession session, AccSessionState state, AccResult hr)
          Called when the state of a session changes; "state" indicates the
new state.
 void OnUserChange(AccSession session, AccUser oldUser, AccUser newUser, AccUserProp property, AccResult hr)
          This indicates a property of a buddy has changed,
e.g.
 void OnUserRequestPropertyResult(AccSession session, AccUser user, AccUserProp property, int transId, AccResult hr, AccVariant propertyValue)
          Called when IAccUser::RequestProperty() completes.
"user" is the user on which the request was made.
"property" is the property that was requested.
"transId" is the transaction id returned from RequestProperty.
"hr" is the result of the operation.
"propertyValue" contains the value of the specified property,
or empty if an failure occurred.

 

Method Detail

OnStateChange

void OnStateChange(AccSession session,
                   AccSessionState state,
                   AccResult hr)
Called when the state of a session changes; "state" indicates the
new state. "hr" indicates whether the state change was normal,
or the result of an error.


OnSessionChange

void OnSessionChange(AccSession session,
                     AccSessionProp prop)
Called when a session property, other than state, changes.
"prop" indicates the property that changed.


OnIdleStateChange

void OnIdleStateChange(AccSession session,
                       int secondsSinceActivity)
Called when a session becomes idle, and when it returns from idle.
(Idleness refers to user activity on the computer).
When idleness occurs, "secondsSinceActivity" indicates how long
it has been since the last user activity.


OnInstanceChange

void OnInstanceChange(AccSession session,
                      AccInstance oldInstance,
                      AccInstance newInstance,
                      AccInstanceProp prop)
Called when a property of another AIM client instance changes.
"oldInstance" is an object that represents the previous state of
the other AIM instance.
"newInstance" is an object that represents the current state of
the other AIM instance; "prop" is the property that changed.


OnLookupUsersResult

void OnLookupUsersResult(AccSession session,
                         java.lang.String[] emails,
                         int transId,
                         AccResult hr,
                         AccUser[] vUsers)
Called when IAccSession::LookupUsers() completes.
"emails" is a SAFEARRAY containing string VARIANTS, which were
passed into LookupUsers.
"transId" is the transaction id returned from LookupUsers.
"hr" is the result of the operation.
"vUsers" is a SAFEARRAY containing IAccUser VARIANTs, or empty if
a failure occurred.


OnSearchDirectoryResult

void OnSearchDirectoryResult(AccSession session,
                             int transId,
                             AccResult hr,
                             AccDirEntry vResults)
Called when IAccSession::SearchDirectory() completes.
"transId" is the transaction id returned from SearchDirectory.
"hr" is the result of the operation.
"vResults" is a SAFEARRAY containing VARIANTs of IDispatch, or
empty if a failure occurred.


OnSendInviteMailResult

void OnSendInviteMailResult(AccSession session,
                            int transId,
                            AccResult hr)
Called when IAccSession::SendInviteMail() completes.
"transId" is the transaction id returned from SendInviteMail.
"hr" is the result of the operation.


OnRequestServiceResult

void OnRequestServiceResult(AccSession session,
                            int transId,
                            AccResult hr,
                            java.lang.String host,
                            int port,
                            byte[] cookie)
Called when IAccSession::RequestService() completes.
"transId" is the transaction id returned from RequestService.
"hr" indicates if the request was successful or not.
The contents of "host", "port", and "cookie"
may depend on what type of service was requested.
"host" may be the hostname of the service server, or an URL,
or other useful data.
"port" may be the TCP port that should be connected to for the service.
"cookie" may be an IAccServiceTicket, or a byte SAFEARRAY containing
authorization info for the service, or other useful data, or empty.


OnConfirmAccountResult

void OnConfirmAccountResult(AccSession session,
                            int transId,
                            AccResult hr)
Called when IAccSession::ConfirmAccount() completes.
"transId" is the transaction id returned from ConfirmAccount.
"hr" is the result of the operation.


OnReportUserResult

void OnReportUserResult(AccSession session,
                        AccUser user,
                        int transId,
                        AccResult hr,
                        int deltaApplied,
                        int updatedValue)
Called when IAccUser::Report() completes.
"user" is the user that was reported.
"transId" is the transaction id returned from Report.
"hr" is the result of the operation.
"deltaApplied" is how much the target's warning level was affected.
"updatedValue" is the new warning level of the target.


OnAlertReceived

void OnAlertReceived(AccSession session,
                     AccAlert alert)
Called when an AIM alert is received.
"alert" is the alert that was received.


OnPreferenceResult

void OnPreferenceResult(AccSession session,
                        java.lang.String specifier,
                        int transId,
                        java.lang.String vValue,
                        AccResult hr)
Called when IAccPreferences::RequestValue() completes.
"specifier" is the preference specifier queried
"transId" is the transaction id returned from RequestValue.
"vValue" contains the value of the preference requested, or
empty if a failure occurred.
"hr" is the result of the operation.


OnPreferenceChange

void OnPreferenceChange(AccSession session,
                        java.lang.String specifier,
                        AccResult hr)
Called when a preference changes.
"specifier" is the preference specifier that has changed.
"hr" is the reason for the change.


OnPreferenceInvalid

void OnPreferenceInvalid(AccSession session,
                         java.lang.String specifier,
                         AccResult hr)
Called when a preference is no longer valid.
"specifier" is the preference specifier that is invalid.
"hr" is the reason why the preference was invalid.


OnPluginChange

void OnPluginChange(AccSession session,
                    AccPluginInfo plugin,
                    AccPluginInfoProp property)
Called when a plugin is loaded or unloaded.
"plugin" is the plugin that has changed
"property" is the plugin property that changed.


OnBartItemRequestPropertyResult

void OnBartItemRequestPropertyResult(AccSession session,
                                     AccBartItem bartItem,
                                     AccBartItemProp property,
                                     int transId,
                                     AccResult hr,
                                     AccVariant propertyValue)
Called when IAccBartItem::RequestProperty() completes.
"bartItem" is the bart item on which the request was made.
"property" is the property that was requested.
"transId" is the transaction id returned from RequestProperty.
"hr" is the result of the operation.
"propertyValue" contains the value of the specified property,
or empty if an failure occurred.


OnUserRequestPropertyResult

void OnUserRequestPropertyResult(AccSession session,
                                 AccUser user,
                                 AccUserProp property,
                                 int transId,
                                 AccResult hr,
                                 AccVariant propertyValue)
Called when IAccUser::RequestProperty() completes.
"user" is the user on which the request was made.
"property" is the property that was requested.
"transId" is the transaction id returned from RequestProperty.
"hr" is the result of the operation.
"propertyValue" contains the value of the specified property,
or empty if an failure occurred.


OnGroupAdded

void OnGroupAdded(AccSession session,
                  AccGroup group,
                  int position,
                  AccResult hr)
Called when a group has been added to the Buddy List.
"group" is the group object that was added.
"position" is the new position of the added group
"hr" is the reason why the add occurred.


OnGroupRemoved

void OnGroupRemoved(AccSession session,
                    AccGroup group,
                    AccResult hr)
Called when a group has been removed from the Buddy List.
"group" is the group that was removed.
"hr" is the reason why the remove occurred.


OnGroupMoved

void OnGroupMoved(AccSession session,
                  AccGroup group,
                  int fromPosition,
                  int toPosition,
                  AccResult hr)
Called when a group has been moved from one position to
another position in the Buddy List.
"group" is the group that has been moved.
"fromPosition" is the old position of the group.
"toPosition" is the new position of the group.
"hr" is the reason why the move occurred.


OnBuddyAdded

void OnBuddyAdded(AccSession session,
                  AccGroup group,
                  AccUser user,
                  int position,
                  AccResult hr)
Called when a user has been added to the specified group in
the Buddy List.
"group" is the group to which the buddy was added.
"user" is the user that was added.
"position" is the new position of the user in the group.
"hr" is the reason the add occurred.


OnBuddyRemoved

void OnBuddyRemoved(AccSession session,
                    AccGroup group,
                    AccUser user,
                    AccResult hr)
Called when a user has been removed from the specified group in
the Buddy List.
"group" is the group from which the user was removed.
"user" is the user that was removed.
"hr" is the reason the remove occurred.


OnBuddyMoved

void OnBuddyMoved(AccSession session,
                  AccUser user,
                  AccGroup fromGroup,
                  int fromPosition,
                  AccGroup toGroup,
                  int toPosition,
                  AccResult hr)
Called when a user has been moved from one position to another position
in the Buddy List
"user" is the user that was moved.
"fromGroup" is the group the user was in.
"fromPosition" is the position of the user in the old group.
"toGroup" is the new group for the user.
"toPosition" is the position of the user in the new group.
"hr" is the reason the move occurred.


OnBuddyListChange

void OnBuddyListChange(AccSession session,
                       AccBuddyList buddyList,
                       AccBuddyListProp property)
This indicates a property of the Buddy List has changed.
"buddyList" is the buddy list that has changed.
"property" is the property of the buddy list that has changed.


OnGroupChange

void OnGroupChange(AccSession session,
                   AccGroup group,
                   AccGroupProp property)
This indicates a property of a group has changed, e.g. name.
"group" is the group that has changed
"property" is the property of the group that has changed.


OnUserChange

void OnUserChange(AccSession session,
                  AccUser oldUser,
                  AccUser newUser,
                  AccUserProp property,
                  AccResult hr)
This indicates a property of a buddy has changed,
e.g. name reformatting, online status, warning percent,
buddy icon, etc.
"oldUser" is the snapshot of the user object before the change.
"newUser" is the user object after the change.
"property" is the property of the user that has changed.
"hr" is the reason the change occurred.


OnChangesBegin

void OnChangesBegin(AccSession session)
Called when a series of OnBuddy/Group/User events are about to be fired.
Clients may want to defer UI updates until the series ends.


OnChangesEnd

void OnChangesEnd(AccSession session)
Called when the series of events has completed.


OnNewSecondarySession

void OnNewSecondarySession(AccSession session,
                           AccSecondarySession secondarySession,
                           int serviceId)
Called when a secondary session is started by a remote user.


OnSecondarySessionStateChange

void OnSecondarySessionStateChange(AccSession session,
                                   AccSecondarySession secondarySession,
                                   AccSecondarySessionState state,
                                   AccResult hr)
Called when a secondary session state changes.
"secondarySession" is the secondary session that changed.
"state" is the new state of the secondary session.
"hr" is the reason for the state change.


OnSecondarySessionChange

void OnSecondarySessionChange(AccSession session,
                              AccSecondarySession secondarySession,
                              int property)
Called when a non-state secondary session property changes.
"secondarySession" is the secondary session that has changed.
"property" is the property of the session that has changed.


OnParticipantJoined

void OnParticipantJoined(AccSession session,
                         AccSecondarySession secondarySession,
                         AccParticipant participant)
Called when a remote user joins a secondary session.
"secondarySession" is the secondary session that was joined.
"participant" is the user that has joined the session.


OnParticipantChange

void OnParticipantChange(AccSession session,
                         AccSecondarySession secondarySession,
                         AccParticipant oldPart,
                         AccParticipant newPart,
                         AccParticipantProp prop)
Called when a property of a participant changes.
"secondarySession" is the secondary session that the user is in.
"oldPart" is a snapshot of the user before the change.
"newPart" is the user after the change.
"prop" is the property of the participant that changed.


OnParticipantLeft

void OnParticipantLeft(AccSession session,
                       AccSecondarySession secondarySession,
                       AccParticipant participant,
                       AccResult method,
                       java.lang.String by,
                       java.lang.String reason)
Called when a remote user leaves a secondary session, and may
provide information on why the user left.
"secondarySession" is the secondary session that was left.
"participant" is the user that left.
"method" is the reason that the user left.
"by" is the username who caused the user to leave, if applicable.
"reason" is the text reason for why the participant was made to leave.


OnInviteResult

void OnInviteResult(AccSession session,
                    AccSecondarySession secondarySession,
                    java.lang.String userName,
                    int transId,
                    AccResult hr)
Called when an outgoing secondary session invitation is accepted,
rejected, canceled, or times out.
"secondarySession" is the secondary session for the invite.
"userName" is the user to whom he invite was sent.
"transId" is the transaction id returned from Invite.
"hr" is the result of the operation.


OnEjectResult

void OnEjectResult(AccSession session,
                   AccSecondarySession secondarySession,
                   java.lang.String userName,
                   int transId,
                   AccResult hr)
Called when a request to eject a user from a secondary session
completes.
"secondarySession" is the secondary session for the eject.
"userName" is the user that was to be ejected.
"transId" is the transaction id returned from Eject.
"hr" is the result of the operation.


BeforeImSend

void BeforeImSend(AccSession session,
                  AccImSession imSession,
                  AccParticipant recipient,
                  AccIm im)
Called on the original IM that is about to be sent.
Plugins can change the IM text or suppress the entire IM by setting
the text to an empty string.
"imSession" is the IM session.
"recipient" is the user to whom the IM is being sent;
NULL if it is being sent to the entire session.
"im" is the actual IM being sent.


OnImSent

void OnImSent(AccSession session,
              AccImSession imSession,
              AccParticipant recipient,
              AccIm im)
Called when the IM is actually sent out (after BeforeImSend).
"imSession" is the IM session.
"recipient" is the user to whom the IM is was sent;
NULL if it was sent to the entire session.
"im" is the IM that was sent.


OnImSendResult

void OnImSendResult(AccSession session,
                    AccImSession imSession,
                    AccParticipant recipient,
                    AccIm im,
                    AccResult hr)
Called when the the IM was acknowledged with an ack or an error.
"imSession" is the IM session.
"recipient" is the user to whom the IM is was sent;
NULL if it was sent to the entire session.
"im" is the IM that was sent.
"hr" is the result of the operation.


BeforeImReceived

void BeforeImReceived(AccSession session,
                      AccImSession imSession,
                      AccParticipant sender,
                      AccIm im)
Called when an IM is received. Plugins can change the IM text or
suppress the entire IM by changing the text to an empty string.
"imSession" is the IM session.
"sender" is the user from whom the IM was sent.
"im" is the IM that was received.


OnImReceived

void OnImReceived(AccSession session,
                  AccImSession imSession,
                  AccParticipant sender,
                  AccIm im)
Called when an IM is received (after BeforeImReceived).
"imSession" is the IM session.
"sender" is the participant from whom the IM was sent.
"im" is the IM that was received.


OnLocalImReceived

void OnLocalImReceived(AccSession session,
                       AccImSession imSession,
                       AccIm im)
Called when a local "status message" IM is to be appended to IM
session history. These IMs are typically sent by plugins, using
AccImFlags_Local.
"imSession" is the IM session.
"im" is the IM to be appended.


OnInputStateChange

void OnInputStateChange(AccSession session,
                        AccImSession imSession,
                        java.lang.String userName,
                        AccImInputState state)
Called when the input state of the remote client changes
(aka typing indicator).
"imSession" is the IM session
"userName" is the username whose input state changed.
"state" is the new input state of the user.


OnEmbedDownloadProgress

void OnEmbedDownloadProgress(AccSession session,
                             AccImSession imSession,
                             AccIm im,
                             java.lang.String embedId,
                             AccStream stream)
Called while downloading an embed from an IM.
"imSession" is the IM session.
"im" is the IM in which an embed is being received.
"embedId" is the ID of the embed being received.
"stream" is the stream that is receiving the embed.


OnEmbedDownloadComplete

void OnEmbedDownloadComplete(AccSession session,
                             AccImSession imSession,
                             AccIm im)
Called when done downloading all embeds in an IM.
Note: this event does not indicate that streams from
this IM are done being read.
"imSession" is the IM session.
"im" is the IM for which all embeds have been received.


OnEmbedUploadProgress

void OnEmbedUploadProgress(AccSession session,
                           AccImSession imSession,
                           AccIm im,
                           java.lang.String embedId,
                           AccStream stream)
Called while uploading an embed in an IM.
"imSession" is the IM session.
"im" is the IM in which an embed is being sent.
"embedId" is the ID of the embed being sent.
"stream" is the stream that is sending the embed.


OnEmbedUploadComplete

void OnEmbedUploadComplete(AccSession session,
                           AccImSession imSession,
                           AccIm im)
Called when done uploading all embeds in a message.
"imSession" is the IM session.
"im" is the IM for which all embeds have been sent.


OnRateLimitStateChange

void OnRateLimitStateChange(AccSession session,
                            AccImSession imSession,
                            AccRateState state)
Called when the rate limit state changes.
"imSession" is the IM session.
"state" is the new ratelimit state for the IM session.


OnNewFileXfer

void OnNewFileXfer(AccSession session,
                   AccFileXferSession fileXferSession,
                   AccFileXfer fileXfer)
Called when a file xfer is created (the actual xfer may not
start immediately).
"fileXferSession" is the file transfer session
"fileXfer" is the file being transferred.


OnFileXferProgress

void OnFileXferProgress(AccSession session,
                        AccFileXferSession fileXferSession,
                        AccFileXfer fileXfer)
Called repeatedly as a file xfer progresses.
"fileXferSession" is the file transfer session.
"fileXfer" is the file being transferred.


OnFileXferCollision

void OnFileXferCollision(AccSession session,
                         AccFileXferSession fileXferSession,
                         AccFileXfer fileXfer)
Called when a potential file overwrite is encountered. Call
IAccFileXferSession::ResolveCollision.
"fileXferSession" is the file transfer session.
"fileXfer" is the file being transferred.


OnFileXferComplete

void OnFileXferComplete(AccSession session,
                        AccFileXferSession fileXferSession,
                        AccFileXfer fileXfer,
                        AccResult hr)
Called when a file xfer completes.
"fileXferSession" is the file transfer session.
"fileXfer" is the that was transferred.
"hr" is the result of the file transfer.


OnFileXferSessionComplete

void OnFileXferSessionComplete(AccSession session,
                               AccFileXferSession fileXferSession,
                               AccResult hr)
Called when a file xfer session completes.
"fileXferSession" is the file transfer session.
"hr" is the overall result of the file transfer session.


OnFileSharingRequestListingResult

void OnFileSharingRequestListingResult(AccSession session,
                                       AccFileSharingSession fileSharingSession,
                                       AccFileSharingItem parentItem,
                                       int transId,
                                       AccResult hr)
Called when RequestListing completes.
"fileSharingSession" is the file sharing session.
"parentItem" is the item for which the listing was requested.
"transId" is the transaction id returned from RequestListing.
"hr" is the result of the operation.


OnFileSharingRequestXferResult

void OnFileSharingRequestXferResult(AccSession session,
                                    AccFileSharingSession fileSharingSession,
                                    AccFileXferSession fileXferSession,
                                    int transId,
                                    AccFileXfer fileXfer)
Called when a file xfer is started via
IAccFileSharingItem::RequestXfer.
"fileSharingSession" is the file sharing session.
"fileXferSession" is the file transfer session for the item.
"transId" is the transaction id returned from RequestXfer.
"fileXfer" is the file being transferred.


OnAvStreamStateChange

void OnAvStreamStateChange(AccSession session,
                           AccAvSession avSession,
                           java.lang.String userName,
                           AccAvStreamType stream,
                           AccSecondarySessionState state,
                           AccResult hr)
Called when a stream in an A/V session changes state.
"avSession" is the A/V session in which the change is occuring.
"userName" is the user for whom the state change is occuring;
NULL indicates the local user.
"stream" indicates which stream is changing state.
"state" is the new state for the stream.
"hr" is the reason for the state change.


OnAvManagerChange

void OnAvManagerChange(AccSession session,
                       AccAvManager avManager,
                       AccAvManagerProp prop,
                       AccResult hr)
Called when an A/V manager prop changes.
"avManager" is the A/V manager.
"prop" is the A/V manager prop that changed
"hr" is the reason for the state change.


OnAudioLevelChange

void OnAudioLevelChange(AccSession session,
                        AccAvSession avSession,
                        java.lang.String userName,
                        int level)
Called when an audio stream in an A/V session changes level.
"avSession" is the A/V session in which the audio ;eve; change is occurring.
"userName" is the user for whom the the audio level change is occuring;
NULL indicates the local user.
"level" is the new audio level (0-100).


OnSoundEffectReceived

void OnSoundEffectReceived(AccSession session,
                           AccAvSession avSession,
                           java.lang.String userName,
                           java.lang.String url)
Called when a user in an A/V session sends a sound effect.
"avSession" is the A/V session in which the sound effect was received.
"userName" is the user that sent the sound effect.
"url" is the URL for the sound effect data.


OnCustomSendResult

void OnCustomSendResult(AccSession session,
                        AccCustomSession customSession,
                        AccParticipant recipient,
                        AccIm im,
                        AccResult hr)
Called when a send of custom data is acknowledged.
"customSession" is the custom session in which the data was sent.
"recipient" is the user to whom the data is was sent;
NULL if it was sent to the entire session.
"data" is the data that was sent.
"hr" is the result of the operation.


OnCustomDataReceived

void OnCustomDataReceived(AccSession session,
                          AccCustomSession customSession,
                          AccParticipant sender,
                          AccIm data)
Called when custom data is received in a custom session.
"customSession" is the custom session in which the data was received.
"sender" is the participant who sent the data.
"data" is the data that was sent.


OnRequestSummariesResult

void OnRequestSummariesResult(AccSession session,
                              int transId,
                              AccResult hr,
                              AccVariant imSummaries)
Called when IAccStoredImManager::RequestSummaries() completes.
"transId" is the transaction id returned from RequestSummaries().
"hr" is the result of the operation.
"imSummaries" is a SAFEARRAY containing VARIANTs of IAccImSummary*,
or empty if a failure occurred.


OnDeliverStoredImsResult

void OnDeliverStoredImsResult(AccSession session,
                              int transId,
                              AccResult hr)
Called when IAccStoredImManager::DeliverIms() completes.
"transId" is the transaction id returned from DeliverIms().
"hr" is the result of the operation.


OnDeleteStoredImsResult

void OnDeleteStoredImsResult(AccSession session,
                             int transId,
                             AccResult hr)
Called when IAccStoredImManager::DeleteIms() completes.
"transId" is the transaction id returned from DeleteIms().
"hr" is the result of the operation.