Since July 6, 2023, Atlassian has no longer been used for Release Notes or knowledge base articles.
* Find Release Notes here (https://support.mycontactcenter.net/app/articles/detail/a_id/23378/) and articles here (https://support.mycontactcenter.net/app/main).
* Authenticated Partners can access content here (https://support.mycontactcenter.net/cc/sso/authenticator/oauth/authorize/imcontrolpanel?redirect=main&source=mycontactcenter)


Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

  • This method allows the changing of an agent Status to another Status. 
  • The attempt to execute this method will return an error if attempting to change an Agent's status FROM "busy - On Call" or "Busy - On Email" TO any other status
  • The Attempt to execute this method MAY fail if attempting to change status for an agent who's status is already in the process of transitioning to a conflicting status
  • Status transitions allowed are as follows:
Previous StatusNew Status
Busy - On CallN/A
Busy - On emailN/A
Busy - ChattingAvailable

Accept Internal Calls
WrapupBusy - On Break

Busy - Other
Busy - On BreakBusy - On Break

Busy - Other

Available

Accept Internal Calls
Busy - OtherBusy On Break

Busy - Other

Available

Accept Internal Calls


  • when attempting to transition an agent Status to  "Busy - Other" The "availability" and the "activity" are optional.
  • The "availability" must be specified if the "activity" is specified.
  • Possible values for status are:
    •  0  (not ready); in this case availability code is assumed 0 and activity String.Empty regardless
    • 16 (available); in this case availability code is assumed 1 and activity String.Empty regardless
    • 17 (accept internal calls); in this case availability code is assumed 2 and activity String.Empty regardless
    • 34 (on break); in this case availability code is assumed 0 and activity String.Empty regardless
    • 36 (other)
  • Other  values submitted for "Status"  are going to be considered not valid and the request will be declined (logged).
  • The supplied availability code and/or activity will be used if and only if the supplied status is 36.
  •  If not specified, they will be assumed 0 and String.Empty respectively.


In order to use this method, you must first be aware of the Agent's current session ID which can be obtained from this method:



Then use this method to change the desired Agent's status:

"processRemoteInCallStatusChangeRequest" within "frmMainWindow"



ChangeAgentStatusResponse TryForceAgentStatusTransition(string sessionId, string targetAgentSessionId, TransferableAgentStatus status, byte availabilityCode, string activityName)

        {

            switch (status)

            {

                case TransferableAgentStatus.Available:

                    return tryForceAgentStatusTransition(sessionId, targetAgentSessionId, CallTransferStatus.Available, 1, String.Empty);

 

                case TransferableAgentStatus.AcceptInternalCalls:

                    return tryForceAgentStatusTransition(sessionId, targetAgentSessionId, CallTransferStatus.AcceptInternalCalls, 2, String.Empty);

 

                case TransferableAgentStatus.OnBreak:

                    return tryForceAgentStatusTransition(sessionId, targetAgentSessionId, CallTransferStatus.BusyOnBreak, 0, String.Empty);

 

                default:

                    return tryForceAgentStatusTransition(sessionId, targetAgentSessionId, CallTransferStatus.BusyOther, availabilityCode, activityName);

            }

        }


ChangeAgentStatusResponse TryForceAgentStatusTransition(string sessionId, string targetAgentSessionId, TransferableAgentStatus status, byte availabilityCode, string activityName)


public enum TransferableAgentStatus

    {

        [EnumMember]

        Available,

 

        [EnumMember]

        AcceptInternalCalls,

 

        [EnumMember]

        OnBreak,

 

        [EnumMember]

        Other

    }


  • No labels