Updated on 2023-09-27 GMT+08:00

Session Record Query Interface

Description

This interface is invoked by a third-party system to query intelligent session information.

Prerequisites

  1. Choose Configuration Center > Flow Configuration > Intelligent IVR.
  2. Choose System Management > System Configuration. On the System Settings tab page, click Edit in the row containing FLOWRECORDFLAG, select Enable, and click Confirm to enable this parameter.

    Figure 1 Enabling the FLOWRECORDFLAG parameter

Interface Method

POST

URL

https://IP:PORT/oifde/rest/api/queryRecordHistory

Request

Table 1 Parameters in the request body

Parameter

Type

Position

Mandatory

Description

tenantId

String

Body

Yes

Tenant ID.

authToken

String

Body

Yes

Token

beginTime

String

Body

No

Start time.

Format:

yyyy-MM-dd HH:mm:ss

endTime

String

Body

No

End time.

Format:

yyyy-MM-dd HH:mm:ss

pageNum

String

Body

No

Page number.

Number of the page to be queried. The value 1 is for the first page.

If this parameter is not transferred, the default value of page number is 1.

pageSize

String

Body

No

Number of records on each page.

The value can be 5, 10, 20, 50, or 100.

If this parameter is not transferred, 100 records are displayed on each page by default.

callId

String

Body

No

Call ID. One of the userMobile, callId, and ctiCallId parameters must be transferred.

userMobile

String

Body

No

User number. One of the userMobile, callId, and ctiCallId parameters must be transferred.

ctiCallId

String

Body

No

CTI call ID. One of the userMobile, callId, and ctiCallId parameters must be transferred.

Response

Parameter

Type

Position

Mandatory

Description

errorCode

Integer

Body

No

Error code.

  • A value other than 0 indicates failure.

errorMsg

String

Body

No

Error description.

total

Long

Body

Yes

Total number of records.

recordList

record[]

Body

Yes

Dialog binding relationship list in an array.

Table 2 record

Parameter

Type

Position

Mandatory

Description

logId

String

Body

Yes

Unique ID of a session record.

tenantId

String

Body

Yes

Tenant ID.

callSorId

String

Body

Yes

User number.

callId

String

Body

Yes

Call ID.

ctiCallId

String

Body

No

CTI call ID.

callingNumber

String

Body

Yes

Calling number.

calledNumber

String

Body

Yes

Called number.

startTime

Long

Body

No

Start time of a call.

The value is in timestamp format.

endTime

Long

Body

No

Call end time.

The value is in timestamp format.

lastUpdateTime

Long

Body

No

Last update time.

The value is in timestamp format.

flowInstId

String

Body

No

Flow instance ID.

dialogType

String

Body

No

Dialog type.

callData

String

Body

No

Call data.

locationId

Integer

Body

No

Recording node, which is used when the CTI pool is used.

flag

String

Body

No

Flag.

businessInfo

JSON string

Body

Yes

Recording file information.

businessInfoStr

JSON string

Body

Yes

Recording file information.

The information includes yugaoFileName, locationId (node ID), and recordFileName (recording file path and name).

recordDetials

RecordDetials[]

Body

Yes

Call details.

qaRecords

qaRecords[]

Body

Yes

Q&A details.

Table 3 RecordDetials

Parameter

Type

Position

Mandatory

Description

interNo

String

Body

Yes

Internal sequence number.

userSaying

String

Body

Yes

ASR result.

intention

String

Body

Yes

User intention.

systemReply

String

Body

Yes

System reply.

timestamp

Long

Body

Yes

System reply time.

requsetTime

Long

Body

Yes

User request time.

responseSource

Integer

Body

Yes

Whether the reply comes from a chatbot or a silent agent.

The options are 0 (chatbot) and 1 (silent agent).

involveMode

Integer

Body

Yes

Flow access mode.

The options are 0 (common mode), 1 (monitoring mode), and 2 (insertion mode).

Table 4 qaRecords

Parameter

Type

Position

Mandatory

Description

interNo

String

Body

No

Internal sequence number.

seriesId

String

Body

No

Q&A series ID.

questionTitle

String

Body

No

Question title.

questionType

String

Body

No

Question type.

answerIntent

String

Body

No

Answer intention.

originalAnswer

String

Body

No

Original user answer.

createTime

Long

Body

No

Creation time.

Example

  • Request
    { 
       "tenantId": "tenant001", 
       "authToken": "0dbe11892be840cf983453ea70b505de",
       "userMobile": "180****9999"  
    }
  • Response
    {
        "errorCode": 0,
        "errorMsg": "Success",
        "total": 1,
        "recordList": [
            {
                "logId": "7343-4256-a659-c7fe7682ef03",
                "tenantId": "xxxxxx",
                "callSorId": "10086",
                "callId": "16185589414826353c2c0036c0292e43ca7a4",
                "ctiCallId": null,
                "callingNumber": "10086",
                "calledNumber": "899149138753490944",
                "startTime": 1618558942000,
                "endTime": 1618559267000,
                "lastUpdateTime": 1618559267000,
                "flowInstId": "1234567892021041615422158916185589414826353c2c0036c0292e43ca7a4",
                "businessInfo": null,
                "businessInfoStr": "{\"yugaoFileName\":\"null\",\"locationId\":\"0\",\"recordFileName\":\"Y:/135/odfsrecord/20220720/1658313131-85918321361224.wav\"}",
                "recordDetials": [
                    {
                        "interNo": "1",
                        "userSaying": "How much call fee do I have?",
                        "intention": "Call fee query",
                        "systemReply": "Hello, your call fee of this month is CNY100. The call fee balance is CNY100.",
                        "timestamp": 1618558954000,
                        "requsetTime": 1618558954000,
                        "responseSource": 0,
                        "involveMode": 0
                    }
                ],
                "qaRecords": [
                    {
                        "interNo": "1",
                        "seriesId": "100",
                        "questionTitle": "Did you take a PCR test?",
                        "questionType": "2",
                        "answerIntent": "Yes.",
                        "originalAnswer": "I have taken the test.",
                        "createTime": 1650774697000
                    }
                ]
            }
        ]
    }