CoachCall

更新时间:
复制 MD 格式

You can invoke CoachCall to coach a specified agent in a specified call (identified by a call ID) under a specified instance. During the coaching session, the coached agent can hear the coach's voice, but the customer cannot hear the coach's voice.

Try it now

Try this API in OpenAPI Explorer, no manual signing needed. Successful calls auto-generate SDK code matching your parameters. Download it with built-in credential security for local usage.

Test

RAM authorization

No authorization for this operation. If you encounter issues with this operation, contact technical support.

Request parameters

Parameter

Type

Required

Description

Example

InstanceId

string

Yes

Instance ID.

ccc-test

UserId

string

No

Agent ID initiating the coaching.

agent@ccc-test

DeviceId

string

No

Device ID. This field is meaningless and can be filled with any value.

device

JobId

string

Yes

Call ID.

job-65382141036853491

CoachedUserId

string

Yes

Agent ID being coached.

coached-agent@ccc-test

TimeoutSeconds

integer

No

Coaching timeout. If the coaching session is not established within the specified time, the coaching operation is canceled. This field is optional and defaults to 30 seconds.

30

Response elements

Element

Type

Description

Example

object

Code

string

Response code.

OK

HttpStatusCode

integer

HTTP status code.

200

Message

string

Response message.

RequestId

string

Request ID.

BA03159C-E808-4FF1-B27E-A61B6E888D7F

Params

array

List of response parameters.

string

Response parameter.

Data

object

Data.

CallContext

object

Call context environment.

CallType

string

Call type.

Valid values:

  • INBOUND :

    Inbound

  • BARGE :

    Barge-in

  • CONSULTANT :

    Consultation

  • CONFERENCE :

    Conference

  • MONITOR :

    Monitor

  • INTERNAL :

    Internal call

  • OUTBOUND :

    Outbound

  • INTERCEPT :

    Intercept

  • BACK2BACK :

    Back-to-back

  • PREDICTIVE :

    Predictive outbound

  • COACH :

    Coach

COACH

InstanceId

string

Instance ID.

ccc-test

JobId

string

Call ID.

job-6538214103685****

ChannelContexts

array<object>

List of call channels.

object

Call channel.

Index

integer

An auto-incremented ID assigned by the system. Customers do not need to concern themselves with this value.

1

ReleaseInitiator

string

The party that initiated the hang-up of the call channel, indicating who first terminated the call.

1390501****

ChannelState

string

The status of the call channel.

Valid values:

  • CREATED :

    Created

  • ANSWERED :

    Answered

  • RELEASED :

    Released

  • RETIRED :

    Out Of Effect

  • EARLY_MEDIA :

    Early Media

  • NONE :

    Initial Status

  • RINGING :

    Ringing

ANSWERED

Destination

string

The called party of the call channel.

1390501****

UserId

string

The agent ID associated with the channel. This field is empty for a Customer channel.

agent@ccc-test

ChannelFlags

string

Channel flags.

Valid values:

  • COACHING :

    Coaching

  • MONITORING :

    Monitoring

  • MONITORED :

    Monitored

  • COACHED :

    Coached

  • HOLD :

    On Hold

  • MUTED :

    Muted

COACHING

SkillGroupId

string

The skill group ID associated with the channel. In inbound scenarios, the associated skill group ID is determined by the agent transfer module configured in the IVR. In outbound scenarios, the associated skill group ID is the first skill group ID that the agent signed into.

skillgroup@ccc-test

Timestamp

integer

The UNIX timestamp indicating the most recent status change of the channel, in milliseconds.

1609138903315

ReleaseReason

string

The reason for releasing the channel, indicating why the current channel was disconnected. The value corresponds to response codes defined in the SIP protocol. Customers should refer to the SIP protocol to analyze the disconnection reason.

404 - No destination

CallType

string

The call type of the channel.

Valid values:

  • INBOUND :

    Inbound

  • BARGE :

    Barge-in

  • CONSULTANT :

    Consultation

  • CONFERENCE :

    Conference

  • MONITOR :

    Listener

  • INTERNAL :

    Internal Call

  • OUTBOUND :

    Outbound

  • INTERCEPT :

    Intercept

  • BACK2BACK :

    Back-to-Back Call

  • PREDICTIVE :

    Predictive Dialing

  • COACH :

    Coaching

COACH

JobId

string

The call ID.

job-6538214103685****

ChannelId

string

The channel ID.

ch:user:1390501****->8032****:1609138902226:job-653821410368****

UserExtension

string

The extension number of the agent associated with the channel.

8032****

Originator

string

The originator of the channel.

0830019****

UserContext

object

Agent context environment.

Extension

string

The agent's extension number.

8032****

Heartbeat

integer

The UNIX timestamp in milliseconds of the last heartbeat received from the agent.

1609136956378

WorkMode

string

Work mode.

Valid values:

  • ON_SITE :

    On-site mode

  • OFF_SITE :

    Off-site mode

  • OFFICE_PHONE :

    Office phone mode

ON_SITE

DeviceId

string

Device ID, the identity ID of a browser-based Web Real-Time Communication (WebRTC) softphone or a physical phone device. Only one type of device can be registered at a time.

ACC-YUNBS-1.0.10-****

UserId

string

Agent ID.

agent@ccc-test

Reserved

integer

The UNIX timestamp in milliseconds when the agent was most recently reserved. Being reserved means an incoming call will be assigned to the agent shortly.

1609136956370

BreakCode

string

Break status code, which can be either System-defined or Custom-defined. System-defined break codes include: Warm-up (temporary break state after an agent is published and before becoming idle), RingingTimeout (break caused by agent ringing timeout), and RejectCall (break caused by agent call rejection). There are no restrictions on Custom-defined status codes; customers can define them according to their business needs.

Valid values:

  • RingingTimeout :

    Break caused by agent ringing timeout

  • RejectCall :

    Break caused by agent call rejection

  • Warm-up :

    Temporary break state after an agent is published and before becoming idle

Warm-up

InstanceId

string

Instance ID.

ccc-test

OutboundScenario

boolean

Indicates whether the agent is in outbound-only mode.

false

DeviceState

string

The status of the SIP phone device. If the SIP phone is not registered, the status is UNREGISTERED (unregistered). If the SIP phone was previously registered but is currently offline, the status is OFFLINE (offline). If the SIP phone is registered and online, the status is ONLINE (online).

Valid values:

  • UNREGISTERED :

    Unregistered

  • OFFLINE :

    Offline

  • ONLINE :

    Online

UNREGISTERED

Mobile

string

The agent's personal phone number.

1324730****

JobId

string

Call ID.

job-6538214103685****

UserState

string

Agent status.

Valid values:

  • READY :

    Idle

  • WORKING :

    Post-processing

  • DIALING :

    Dialing

  • BREAK :

    Break

  • OFFLINE :

    Offline

  • TALKING :

    Talking

  • RINGING :

    Ringing

TALKING

SignedSkillGroupIdList

array

List of skill group IDs that the agent has signed into.

string

Skill group ID.

skillgroup1@ccc-test

Examples

Success response

JSON format

{
  "Code": "OK",
  "HttpStatusCode": 200,
  "Message": "无",
  "RequestId": "BA03159C-E808-4FF1-B27E-A61B6E888D7F",
  "Params": [
    "无"
  ],
  "Data": {
    "CallContext": {
      "CallType": "COACH",
      "InstanceId": "ccc-test",
      "JobId": "job-6538214103685****",
      "ChannelContexts": [
        {
          "Index": 1,
          "ReleaseInitiator": "1390501****",
          "ChannelState": "ANSWERED",
          "Destination": "1390501****",
          "UserId": "agent@ccc-test",
          "ChannelFlags": "COACHING",
          "SkillGroupId": "skillgroup@ccc-test",
          "Timestamp": 1609138903315,
          "ReleaseReason": "404 - No destination",
          "CallType": "COACH",
          "JobId": "job-6538214103685****",
          "ChannelId": "ch:user:1390501****->8032****:1609138902226:job-653821410368****",
          "UserExtension": "8032****",
          "Originator": "0830019****"
        }
      ]
    },
    "UserContext": {
      "Extension": "8032****",
      "Heartbeat": 1609136956378,
      "WorkMode": "ON_SITE",
      "DeviceId": "ACC-YUNBS-1.0.10-****",
      "UserId": "agent@ccc-test",
      "Reserved": 1609136956370,
      "BreakCode": "Warm-up",
      "InstanceId": "ccc-test",
      "OutboundScenario": false,
      "DeviceState": "UNREGISTERED",
      "Mobile": "1324730****",
      "JobId": "job-6538214103685****",
      "UserState": "TALKING",
      "SignedSkillGroupIdList": [
        "skillgroup1@ccc-test"
      ]
    }
  }
}

Error codes

HTTP status code

Error code

Error message

Description

400 InvalidOperation.DeviceState The operation is not allowed. Device state (%s) does not meet expectations (%s).
400 InvalidOperation.UserState The operation is not allowed. User state (%s) does not meet expectations (%s).
400 Parameter.Blank The parameter %s may not be null or blank.
400 UserBusy The user %s you called was busy. Please try again later.
403 Permission.Common You have no permission to access. %s
404 NotExists.InstanceId The specified instance %s does not exist.
404 NotExists.JobId The call %s does not exist.
404 NotExists.UserId The user %s does not exist in instance %s.

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.