All Verbs | /nodes/live-answer/callback |
---|
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class LiveAnswerCallbackTranscriptMessage:
date: datetime.datetime = datetime.datetime(1, 1, 1)
role: Optional[str] = None
sender_name: Optional[str] = None
target_name: Optional[str] = None
function_name: Optional[str] = None
function_args: Optional[str] = None
content: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class LiveAnswerCallbackAttachment:
file_name: Optional[str] = None
content_type: Optional[str] = None
uri: Optional[str] = None
data: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class LiveAnswerCallback:
session_id: Optional[str] = None
flow_id: Optional[str] = None
node_id: Optional[str] = None
client_id: Optional[str] = None
conversation_id: Optional[str] = None
ai_minutes: int = 0
from_: Optional[str] = field(metadata=config(field_name='from'), default=None)
to: Optional[str] = None
transcript: Optional[List[LiveAnswerCallbackTranscriptMessage]] = None
start_date: datetime.datetime = datetime.datetime(1, 1, 1)
end_date: datetime.datetime = datetime.datetime(1, 1, 1)
attachments: Optional[List[LiveAnswerCallbackAttachment]] = None
Python LiveAnswerCallback DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /nodes/live-answer/callback HTTP/1.1
Host: team.evovoice.io
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<LiveAnswerCallback xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Nodes.AI">
<AIMinutes>0</AIMinutes>
<Attachments>
<LiveAnswerCallbackAttachment>
<ContentType>String</ContentType>
<Data>String</Data>
<FileName>String</FileName>
<Uri>String</Uri>
</LiveAnswerCallbackAttachment>
</Attachments>
<ClientId>String</ClientId>
<ConversationId>String</ConversationId>
<EndDate>0001-01-01T00:00:00</EndDate>
<FlowId>String</FlowId>
<From>String</From>
<NodeId>String</NodeId>
<SessionId>String</SessionId>
<StartDate>0001-01-01T00:00:00</StartDate>
<To>String</To>
<Transcript>
<LiveAnswerCallbackTranscriptMessage>
<Content>String</Content>
<Date>0001-01-01T00:00:00</Date>
<FunctionArgs>String</FunctionArgs>
<FunctionName>String</FunctionName>
<Role>String</Role>
<SenderName>String</SenderName>
<TargetName>String</TargetName>
</LiveAnswerCallbackTranscriptMessage>
</Transcript>
</LiveAnswerCallback>