com.adobe.connectpro.telephony.adaptor
Interface TelephonyCallback


public interface TelephonyCallback

The TelephonyCallback interface provides the telephony adaptor with a set of method calls for sending responses to asynchronous calls or for sending other notifications to Connect Pro.

Notifications includes conference and user events, such as when a new user joins the conference or if some user/conference option changes on bridge.

In addition, this interface provides methods for enquiring Connect Pro on validity of certain data such as a token entered by user to merge his telephony entry with his meeting user entry in the attendee list.


Method Summary
 void audioDownloadComplete(java.lang.String downloadId, boolean success)
          Informs Connect Pro that an audio file download is complete.
 void audioRecordingFailed(java.lang.String conferenceId)
          Informs Connect Pro that audio recording failed to start for a conference on Connect Pro request.
 void audioRecordingStarted(java.lang.String conferenceId, java.lang.String downloadUrl, java.lang.String downloadHeader)
          Informs Connect Pro that audio recording has been started for a conference either on Connect Pro request or by bridge itself on some other logic.
 void audioRecordingStopped(java.lang.String conferenceId)
          Informs Connect Pro that audio recording has been stopped for a conference either on Connect Pro request or by bridge itself on some other logic.
 void conferenceEnded(java.lang.String conferenceId)
          Informs Connect Pro that the audio conference has ended either on Connect Pro request or by bridge itself on some other logic.
 void conferenceInfoUpdated(java.lang.String conferenceId, ConferenceInfo conferenceInfo)
          Informs Connect Pro that user options have changed for audio conference either on Connect Pro request or by bridge itself on some other logic, such as DTMF commands.
 void conferenceReconnected(java.lang.String conferenceId, ConferenceInfo conferenceInfo, java.util.List<TelephonyUserInfo> userList)
          Informs Connect Pro that it has reconnected to the audio conference as a result of Connect Pro request.
 void conferenceStarted(java.lang.String conferenceId, ConferenceInfo conferenceInfo, java.util.List<TelephonyUserInfo> userList)
          Informs Connect Pro that the audio conference has started as a result of Connect Pro request.
 void dialOutFailed(java.lang.String conferenceId, java.lang.String telephonyUserId, FailureCode failureCode)
          Informs Connect Pro that the Connect Pro request to dial out to a user has failed.
 java.lang.String getCallBackServerHostName()
          This method is not supported in Connect Pro 7.5 SP1.
 java.lang.String getCallBackServerPort()
          This method is not supported in Connect Pro 7.5 SP1.
 void hangupFailed(java.lang.String conferenceId, java.lang.String telephonyUserId, FailureCode failureCode)
          Informs Connect Pro that the Connect Pro request to disconnect the user has failed.
 boolean isActiveConferenceSession(java.lang.String conferenceId)
          Returns whether the given telephony conference session is active on Connect Pro for this adaptor instance.
 boolean isConnectProUser(java.lang.String conferenceId, java.lang.String telephonyUserId)
          Returns whether the given phone user has a Connect Pro meeting user counterpart.
 boolean isValidTelephonyToken(java.lang.String conferenceId, java.lang.String telephonyToken)
          Returns whether the given telephony token is one of valid tokens generated by Connect Pro for this conference session.
 void movedToSubConferenceFailed(java.lang.String conferenceId, java.lang.String telephonyUserId, FailureCode failureCode)
          Informs Connect Pro that the Connect Pro request to move a phone user to a subconference has failed.
 void reconnectFailed(java.lang.String conferenceId, FailureCode failureCode)
          Informs Connect Pro that the Connect Pro request to reconnect the user to the conference has failed.
 void sendCustomMessage(java.lang.String conferenceId, java.lang.String[] telephonyUserIds, TelephonyUserInfo.UserType[] userTypes, java.lang.String messageId, java.util.Map<java.lang.String,java.lang.String> messageParameters)
          Sends a message from the telephony adaptor to Connect Pro.
 void startConferenceFailed(java.lang.String conferenceId, FailureCode failureCode)
          Informs Connect Pro that the Connect Pro request to start the conference has failed.
 void userInfoUpdated(java.lang.String conferenceId, java.util.List<TelephonyUserInfo> userInfoList)
          Informs Connect Pro tha a Connect Pro request or bridge logic (such as DTMF commands) has changed user options for multiple telephony users.
 void userInfoUpdated(java.lang.String conferenceId, TelephonyUserInfo userInfo)
          Informs Connect Pro that a Connect Pro request or bridge logic (such as DTMF commands) has changed user options for a telephony user.
 void userOffline(java.lang.String conferenceId, java.lang.String telephonyUserId)
          Informs Connect Pro that a a user has been disconnected, either by manually hanging up or in response to a Connect Pro request.
 void userOnline(java.lang.String conferenceId, TelephonyUserInfo userInfo)
          Informs Connect Pro that a new phone user has joined the conference, either because the user has dialed-in or in response to a Connect Pro request to dial out to the user.
 void userOnline(java.lang.String conferenceId, TelephonyUserInfo userInfo, java.lang.String principalId)
          Overloaded method to userOnline.
 

Method Detail

audioDownloadComplete

void audioDownloadComplete(java.lang.String downloadId,
                           boolean success)
                           throws SynchronousException
Informs Connect Pro that an audio file download is complete. It is the adaptor's responsibility to poll the telephony server and store the audio file in the specified location, once it has become available. This method is called to let Connect Pro know that the audio file is available for use.

Parameters:
downloadId - Download identifier generated by adaptor when Connect Pro submitted download request.
success - If the value is true, Connect Pro includes the audio with the meeting's recording. If the value is false, Connect Pro excludes the conference audio.
Throws:
SynchronousException

audioRecordingStarted

void audioRecordingStarted(java.lang.String conferenceId,
                           java.lang.String downloadUrl,
                           java.lang.String downloadHeader)
                           throws SynchronousException
Informs Connect Pro that audio recording has been started for a conference either on Connect Pro request or by bridge itself on some other logic. The download information is also generated at this point. Though the indicative here is HTTP download URL and header, adaptor may send in any sort of information which it later could understand to initiate the download, when Connect Pro calls addPendingAudioDownload.

Parameters:
conferenceId - Identifier generated by the adaptor on initConferenceSession.
downloadUrl - Download URL.
downloadHeader - Download header info.
Throws:
SynchronousException

audioRecordingStopped

void audioRecordingStopped(java.lang.String conferenceId)
                           throws SynchronousException
Informs Connect Pro that audio recording has been stopped for a conference either on Connect Pro request or by bridge itself on some other logic.

Parameters:
conferenceId - Identifier generated by the adaptor on initConferenceSession.
Throws:
SynchronousException

audioRecordingFailed

void audioRecordingFailed(java.lang.String conferenceId)
                          throws SynchronousException
Informs Connect Pro that audio recording failed to start for a conference on Connect Pro request.

Parameters:
conferenceId - Identifier generated by the adaptor on initConferenceSession.
Throws:
SynchronousException

conferenceEnded

void conferenceEnded(java.lang.String conferenceId)
                     throws SynchronousException
Informs Connect Pro that the audio conference has ended either on Connect Pro request or by bridge itself on some other logic. This event may be generated, for example, when all phone users have left an audio conference.

Parameters:
conferenceId - Identifier generated by the adaptor on initConferenceSession.
Throws:
SynchronousException

conferenceInfoUpdated

void conferenceInfoUpdated(java.lang.String conferenceId,
                           ConferenceInfo conferenceInfo)
                           throws SynchronousException
Informs Connect Pro that user options have changed for audio conference either on Connect Pro request or by bridge itself on some other logic, such as DTMF commands.

Parameters:
conferenceId - Identifier generated by the adaptor on initConferenceSession.
conferenceInfo - Conference option details.
Throws:
SynchronousException

conferenceReconnected

void conferenceReconnected(java.lang.String conferenceId,
                           ConferenceInfo conferenceInfo,
                           java.util.List<TelephonyUserInfo> userList)
                           throws SynchronousException
Informs Connect Pro that it has reconnected to the audio conference as a result of Connect Pro request.

Parameters:
conferenceId - Identifier generated by the adaptor on initConferenceSession.
conferenceInfo - Current information about the conference options.
userList - List of currently active phone users in the conference with user option details.
Throws:
SynchronousException

conferenceStarted

void conferenceStarted(java.lang.String conferenceId,
                       ConferenceInfo conferenceInfo,
                       java.util.List<TelephonyUserInfo> userList)
                       throws SynchronousException
Informs Connect Pro that the audio conference has started as a result of Connect Pro request. Or if it was already active on the bridge when initConferenceSession was called by Connect Pro. Or if it was started on bridge by some other bridge logic, such as the moderator joining the conference.

Parameters:
conferenceId - Identifier generated by the adaptor on initConferenceSession.
conferenceInfo - Current information about the conference options.
userList - List of currently active phone users in the conference with user option details.
Throws:
SynchronousException

dialOutFailed

void dialOutFailed(java.lang.String conferenceId,
                   java.lang.String telephonyUserId,
                   FailureCode failureCode)
                   throws SynchronousException
Informs Connect Pro that the Connect Pro request to dial out to a user has failed.

Parameters:
conferenceId - Identifier generated by the adaptor on initConferenceSession.
telephonyUserId - User telephony identifier generated by the adaptor.
failureCode - Reason for failure.
Throws:
SynchronousException

getCallBackServerHostName

java.lang.String getCallBackServerHostName()
                                           throws SynchronousException
This method is not supported in Connect Pro 7.5 SP1. This is kept for future use to support HTTP callbacks through Connect Pro Telephony Server's HTTP connector.

Throws:
SynchronousException

getCallBackServerPort

java.lang.String getCallBackServerPort()
                                       throws SynchronousException
This method is not supported in Connect Pro 7.5 SP1. This is kept for future use to support HTTP callbacks through Connect Pro Telephony Server's HTTP connector.

Throws:
SynchronousException

hangupFailed

void hangupFailed(java.lang.String conferenceId,
                  java.lang.String telephonyUserId,
                  FailureCode failureCode)
                  throws SynchronousException
Informs Connect Pro that the Connect Pro request to disconnect the user has failed.

Parameters:
conferenceId - Identifier generated by the adaptor on initConferenceSession.
telephonyUserId - User telephony identifier generated by the adaptor.
failureCode - Reason for failure.
Throws:
SynchronousException

isActiveConferenceSession

boolean isActiveConferenceSession(java.lang.String conferenceId)
                                  throws SynchronousException
Returns whether the given telephony conference session is active on Connect Pro for this adaptor instance. It is recommended to do the cleanup in the destroyConferenceSession() method instead of running a separate health check that relies on this call for cleanup. Connect Pro and adaptor may be doing the redundant health checks in that case. In case you rely on this call, please make sure to not reuse the conference identifiers until a long time.

Parameters:
conferenceId - Identifier generated by the adaptor on initConferenceSession.
Returns:
true if active, false if not.
Throws:
SynchronousException

isConnectProUser

boolean isConnectProUser(java.lang.String conferenceId,
                         java.lang.String telephonyUserId)
                         throws SynchronousException
Returns whether the given phone user has a Connect Pro meeting user counterpart.

Parameters:
conferenceId - Identifier generated by the adaptor on initConferenceSession.
telephonyUserId - The user telephony identifier generated by adaptor.
Returns:
true if there is a counterpart, false if not.
Throws:
SynchronousException

isValidTelephonyToken

boolean isValidTelephonyToken(java.lang.String conferenceId,
                              java.lang.String telephonyToken)
                              throws SynchronousException
Returns whether the given telephony token is one of valid tokens generated by Connect Pro for this conference session.

Parameters:
conferenceId - Identifier generated by the adaptor on initConferenceSession.
telephonyToken - Token value.
Returns:
true if valid, false if not.
Throws:
SynchronousException

movedToSubConferenceFailed

void movedToSubConferenceFailed(java.lang.String conferenceId,
                                java.lang.String telephonyUserId,
                                FailureCode failureCode)
                                throws SynchronousException
Informs Connect Pro that the Connect Pro request to move a phone user to a subconference has failed.

Parameters:
conferenceId - Identifier generated by the adaptor on initConferenceSession.
telephonyUserId - The user telephony identifier generated by adaptor.
failureCode - Reason for failure.
Throws:
SynchronousException

reconnectFailed

void reconnectFailed(java.lang.String conferenceId,
                     FailureCode failureCode)
                     throws SynchronousException
Informs Connect Pro that the Connect Pro request to reconnect the user to the conference has failed.

Parameters:
conferenceId - Identifier generated by the adaptor on initConferenceSession.
failureCode - Reason for failure.
Throws:
SynchronousException

sendCustomMessage

void sendCustomMessage(java.lang.String conferenceId,
                       java.lang.String[] telephonyUserIds,
                       TelephonyUserInfo.UserType[] userTypes,
                       java.lang.String messageId,
                       java.util.Map<java.lang.String,java.lang.String> messageParameters)
                       throws SynchronousException
Sends a message from the telephony adaptor to Connect Pro. In case adaptor needs to display some specific conference message which doesn't fit normal workflows driven by the interface, it could use this call.

Parameters:
conferenceId - Identifier generated by the adaptor on initConferenceSession.
telephonyUserIds - Identifiers of phone users generated by adaptor earlier. Optional parameter. May be null.
userTypes - User roles to display the messages to. Option parameter. May be null.
messageId - Message ID.
messageParameters - Message format parameters.
Throws:
SynchronousException

startConferenceFailed

void startConferenceFailed(java.lang.String conferenceId,
                           FailureCode failureCode)
                           throws SynchronousException
Informs Connect Pro that the Connect Pro request to start the conference has failed.

Parameters:
conferenceId - Identifier generated by the adaptor on initConferenceSession.
failureCode - Reason for failure.
Throws:
SynchronousException

userInfoUpdated

void userInfoUpdated(java.lang.String conferenceId,
                     TelephonyUserInfo userInfo)
                     throws SynchronousException
Informs Connect Pro that a Connect Pro request or bridge logic (such as DTMF commands) has changed user options for a telephony user.

Parameters:
conferenceId - Identifier generated by the adaptor on initConferenceSession.
userInfo - User details including the telephonyId.
Throws:
SynchronousException

userInfoUpdated

void userInfoUpdated(java.lang.String conferenceId,
                     java.util.List<TelephonyUserInfo> userInfoList)
                     throws SynchronousException
Informs Connect Pro tha a Connect Pro request or bridge logic (such as DTMF commands) has changed user options for multiple telephony users.

Parameters:
conferenceId - Identifier generated by the adaptor on initConferenceSession.
userInfoList - User details including the telephonyIds.
Throws:
SynchronousException

userOffline

void userOffline(java.lang.String conferenceId,
                 java.lang.String telephonyUserId)
                 throws SynchronousException
Informs Connect Pro that a a user has been disconnected, either by manually hanging up or in response to a Connect Pro request.

Parameters:
conferenceId - Identifier generated by the adaptor on initConferenceSession.
telephonyUserId - User telephony identifier generated by the adaptor.
Throws:
SynchronousException

userOnline

void userOnline(java.lang.String conferenceId,
                TelephonyUserInfo userInfo)
                throws SynchronousException
Informs Connect Pro that a new phone user has joined the conference, either because the user has dialed-in or in response to a Connect Pro request to dial out to the user.

Parameters:
conferenceId - Identifier generated by the adaptor on initConferenceSession.
userInfo - User details including the telephonyId which would be used for later communication for that telephony user.
Throws:
SynchronousException

userOnline

void userOnline(java.lang.String conferenceId,
                TelephonyUserInfo userInfo,
                java.lang.String principalId)
                throws SynchronousException
Overloaded method to userOnline. This optional method is for telephony integrations which use a single sign-on with Connect Pro and need to merge phone users based on Connect Pro principal-id of the user. This is the only place where adaptor can use the internal Connect Pro identifier and is only for supporting merge based on principal-id.

Parameters:
conferenceId - Identifier generated by the adaptor on initConferenceSession.
userInfo - User details, including the telephonyId, to use for later communication for that telephony user.
Throws:
SynchronousException