-
Notifications
You must be signed in to change notification settings - Fork 12
/
recording.go
134 lines (74 loc) · 4.33 KB
/
recording.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
package platformclientv2
import (
"time"
"encoding/json"
"strconv"
"strings"
)
// Recording
type Recording struct {
// Id - The globally unique identifier for the object.
Id *string `json:"id,omitempty"`
// Name
Name *string `json:"name,omitempty"`
// ConversationId
ConversationId *string `json:"conversationId,omitempty"`
// Path
Path *string `json:"path,omitempty"`
// StartTime - The start time of the recording. Null when there is no playable media.
StartTime *string `json:"startTime,omitempty"`
// EndTime - The end time of the recording. Null when there is no playable media.
EndTime *string `json:"endTime,omitempty"`
// Media - The type of media that the recording is. At the moment that could be audio, chat, or email.
Media *string `json:"media,omitempty"`
// Annotations - Annotations that belong to the recording.
Annotations *[]Annotation `json:"annotations,omitempty"`
// Transcript - Represents a chat transcript
Transcript *[]Chatmessage `json:"transcript,omitempty"`
// EmailTranscript - Represents an email transcript
EmailTranscript *[]Recordingemailmessage `json:"emailTranscript,omitempty"`
// MessagingTranscript - Represents a messaging transcript
MessagingTranscript *[]Recordingmessagingmessage `json:"messagingTranscript,omitempty"`
// FileState - Represents the current file state for a recording. Examples: Uploading, Archived, etc
FileState *string `json:"fileState,omitempty"`
// RestoreExpirationTime - The amount of time a restored recording will remain restored before being archived again. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss[.mmm]Z
RestoreExpirationTime *time.Time `json:"restoreExpirationTime,omitempty"`
// MediaUris - The different mediaUris for the recording. Null when there is no playable media.
MediaUris *map[string]Mediaresult `json:"mediaUris,omitempty"`
// EstimatedTranscodeTimeMs
EstimatedTranscodeTimeMs *int `json:"estimatedTranscodeTimeMs,omitempty"`
// ActualTranscodeTimeMs
ActualTranscodeTimeMs *int `json:"actualTranscodeTimeMs,omitempty"`
// ArchiveDate - The date the recording will be archived. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss[.mmm]Z
ArchiveDate *time.Time `json:"archiveDate,omitempty"`
// ArchiveMedium - The type of archive medium used. Example: CloudArchive
ArchiveMedium *string `json:"archiveMedium,omitempty"`
// DeleteDate - The date the recording will be deleted. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss[.mmm]Z
DeleteDate *time.Time `json:"deleteDate,omitempty"`
// ExportDate - The date the recording will be exported. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss[.mmm]Z
ExportDate *time.Time `json:"exportDate,omitempty"`
// ExportedDate - The date the recording was exported. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss[.mmm]Z
ExportedDate *time.Time `json:"exportedDate,omitempty"`
// OutputDurationMs - Duration of transcoded media in milliseconds
OutputDurationMs *int `json:"outputDurationMs,omitempty"`
// OutputSizeInBytes - Size of transcoded media in bytes. 0 if there is no transcoded media.
OutputSizeInBytes *int `json:"outputSizeInBytes,omitempty"`
// MaxAllowedRestorationsForOrg - How many archive restorations the organization is allowed to have.
MaxAllowedRestorationsForOrg *int `json:"maxAllowedRestorationsForOrg,omitempty"`
// RemainingRestorationsAllowedForOrg - The remaining archive restorations the organization has.
RemainingRestorationsAllowedForOrg *int `json:"remainingRestorationsAllowedForOrg,omitempty"`
// SessionId - The session id represents an external resource id, such as email, call, chat, etc
SessionId *string `json:"sessionId,omitempty"`
// Users - The users participating in the conversation
Users *[]User `json:"users,omitempty"`
// RecordingFileRole - Role of the file recording. It can be either customer_experience or adhoc.
RecordingFileRole *string `json:"recordingFileRole,omitempty"`
// SelfUri - The URI for this object
SelfUri *string `json:"selfUri,omitempty"`
}
// String returns a JSON representation of the model
func (o *Recording) String() string {
j, _ := json.Marshal(o)
str, _ := strconv.Unquote(strings.Replace(strconv.Quote(string(j)), `\\u`, `\u`, -1))
return str
}