All Verbs | /nodes/dial/callback |
---|
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';
abstract class TwilioRequestBase implements IPost
{
String? callSid;
String? accountSid;
String? from;
String? to;
String? callStatus;
String? apiVersion;
String? direction;
String? forwardedFrom;
String? callerName;
String? parentCallSid;
String? stirVerstat;
String? called;
String? calledZip;
String? calledCity;
String? calledState;
String? calledCountry;
String? caller;
String? callerCity;
String? callerState;
String? callerZip;
String? callerCountry;
String? fromCity;
String? fromState;
String? fromZip;
String? fromCountry;
String? toCity;
String? toState;
String? toZip;
String? toCountry;
String? messageSid;
String? smsId;
String? messagingServiceSid;
String? body;
int? numMedia;
String? mediaContentType0;
String? mediaUrl0;
String? mediaContentType1;
String? mediaUrl1;
String? mediaContentType2;
String? mediaUrl2;
int? index;
String? instanceSid;
String? eventType;
String? channelSid;
String? attributes;
String? clientIdentity;
String? mediaContentType;
String? mediaSid;
String? identity;
String? digits;
String? speechResult;
double? confidence;
int? callDuration;
String? recordingUrl;
String? recordingSid;
int? recordingDuration;
String? recordingStatus;
String? transcriptionSid;
String? transcriptionText;
String? transcriptionUrl;
String? transcriptionStatus;
String? dialCallStatus;
String? dialCallSid;
double? dialCallDuration;
bool? dialBridged;
String? queueResult;
String? queueSid;
int? queueTime;
String? conferenceSid;
String? friendlyName;
String? statusCallbackEvent;
bool? muted;
bool? hold;
bool? endConferenceOnExit;
bool? startConferenceOnEnter;
String? eventName;
String? assistantSid;
String? dialogueSid;
String? userIdentifier;
String? currentInput;
String? currentTask;
String? dialoguePayloadUrl;
String? memory;
String? channel;
String? faxSid;
String? faxStatus;
int? numPages;
String? mediaUrl;
String? errorCode;
String? errorMessage;
TwilioRequestBase({this.callSid,this.accountSid,this.from,this.to,this.callStatus,this.apiVersion,this.direction,this.forwardedFrom,this.callerName,this.parentCallSid,this.stirVerstat,this.called,this.calledZip,this.calledCity,this.calledState,this.calledCountry,this.caller,this.callerCity,this.callerState,this.callerZip,this.callerCountry,this.fromCity,this.fromState,this.fromZip,this.fromCountry,this.toCity,this.toState,this.toZip,this.toCountry,this.messageSid,this.smsId,this.messagingServiceSid,this.body,this.numMedia,this.mediaContentType0,this.mediaUrl0,this.mediaContentType1,this.mediaUrl1,this.mediaContentType2,this.mediaUrl2,this.index,this.instanceSid,this.eventType,this.channelSid,this.attributes,this.clientIdentity,this.mediaContentType,this.mediaSid,this.identity,this.digits,this.speechResult,this.confidence,this.callDuration,this.recordingUrl,this.recordingSid,this.recordingDuration,this.recordingStatus,this.transcriptionSid,this.transcriptionText,this.transcriptionUrl,this.transcriptionStatus,this.dialCallStatus,this.dialCallSid,this.dialCallDuration,this.dialBridged,this.queueResult,this.queueSid,this.queueTime,this.conferenceSid,this.friendlyName,this.statusCallbackEvent,this.muted,this.hold,this.endConferenceOnExit,this.startConferenceOnEnter,this.eventName,this.assistantSid,this.dialogueSid,this.userIdentifier,this.currentInput,this.currentTask,this.dialoguePayloadUrl,this.memory,this.channel,this.faxSid,this.faxStatus,this.numPages,this.mediaUrl,this.errorCode,this.errorMessage});
TwilioRequestBase.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
callSid = json['callSid'];
accountSid = json['accountSid'];
from = json['from'];
to = json['to'];
callStatus = json['callStatus'];
apiVersion = json['apiVersion'];
direction = json['direction'];
forwardedFrom = json['forwardedFrom'];
callerName = json['callerName'];
parentCallSid = json['parentCallSid'];
stirVerstat = json['stirVerstat'];
called = json['called'];
calledZip = json['calledZip'];
calledCity = json['calledCity'];
calledState = json['calledState'];
calledCountry = json['calledCountry'];
caller = json['caller'];
callerCity = json['callerCity'];
callerState = json['callerState'];
callerZip = json['callerZip'];
callerCountry = json['callerCountry'];
fromCity = json['fromCity'];
fromState = json['fromState'];
fromZip = json['fromZip'];
fromCountry = json['fromCountry'];
toCity = json['toCity'];
toState = json['toState'];
toZip = json['toZip'];
toCountry = json['toCountry'];
messageSid = json['messageSid'];
smsId = json['smsId'];
messagingServiceSid = json['messagingServiceSid'];
body = json['body'];
numMedia = json['numMedia'];
mediaContentType0 = json['mediaContentType0'];
mediaUrl0 = json['mediaUrl0'];
mediaContentType1 = json['mediaContentType1'];
mediaUrl1 = json['mediaUrl1'];
mediaContentType2 = json['mediaContentType2'];
mediaUrl2 = json['mediaUrl2'];
index = json['index'];
instanceSid = json['instanceSid'];
eventType = json['eventType'];
channelSid = json['channelSid'];
attributes = json['attributes'];
clientIdentity = json['clientIdentity'];
mediaContentType = json['mediaContentType'];
mediaSid = json['mediaSid'];
identity = json['identity'];
digits = json['digits'];
speechResult = json['speechResult'];
confidence = JsonConverters.toDouble(json['confidence']);
callDuration = json['callDuration'];
recordingUrl = json['recordingUrl'];
recordingSid = json['recordingSid'];
recordingDuration = json['recordingDuration'];
recordingStatus = json['recordingStatus'];
transcriptionSid = json['transcriptionSid'];
transcriptionText = json['transcriptionText'];
transcriptionUrl = json['transcriptionUrl'];
transcriptionStatus = json['transcriptionStatus'];
dialCallStatus = json['dialCallStatus'];
dialCallSid = json['dialCallSid'];
dialCallDuration = JsonConverters.toDouble(json['dialCallDuration']);
dialBridged = json['dialBridged'];
queueResult = json['queueResult'];
queueSid = json['queueSid'];
queueTime = json['queueTime'];
conferenceSid = json['conferenceSid'];
friendlyName = json['friendlyName'];
statusCallbackEvent = json['statusCallbackEvent'];
muted = json['muted'];
hold = json['hold'];
endConferenceOnExit = json['endConferenceOnExit'];
startConferenceOnEnter = json['startConferenceOnEnter'];
eventName = json['eventName'];
assistantSid = json['assistantSid'];
dialogueSid = json['dialogueSid'];
userIdentifier = json['userIdentifier'];
currentInput = json['currentInput'];
currentTask = json['currentTask'];
dialoguePayloadUrl = json['dialoguePayloadUrl'];
memory = json['memory'];
channel = json['channel'];
faxSid = json['faxSid'];
faxStatus = json['faxStatus'];
numPages = json['numPages'];
mediaUrl = json['mediaUrl'];
errorCode = json['errorCode'];
errorMessage = json['errorMessage'];
return this;
}
Map<String, dynamic> toJson() => {
'callSid': callSid,
'accountSid': accountSid,
'from': from,
'to': to,
'callStatus': callStatus,
'apiVersion': apiVersion,
'direction': direction,
'forwardedFrom': forwardedFrom,
'callerName': callerName,
'parentCallSid': parentCallSid,
'stirVerstat': stirVerstat,
'called': called,
'calledZip': calledZip,
'calledCity': calledCity,
'calledState': calledState,
'calledCountry': calledCountry,
'caller': caller,
'callerCity': callerCity,
'callerState': callerState,
'callerZip': callerZip,
'callerCountry': callerCountry,
'fromCity': fromCity,
'fromState': fromState,
'fromZip': fromZip,
'fromCountry': fromCountry,
'toCity': toCity,
'toState': toState,
'toZip': toZip,
'toCountry': toCountry,
'messageSid': messageSid,
'smsId': smsId,
'messagingServiceSid': messagingServiceSid,
'body': body,
'numMedia': numMedia,
'mediaContentType0': mediaContentType0,
'mediaUrl0': mediaUrl0,
'mediaContentType1': mediaContentType1,
'mediaUrl1': mediaUrl1,
'mediaContentType2': mediaContentType2,
'mediaUrl2': mediaUrl2,
'index': index,
'instanceSid': instanceSid,
'eventType': eventType,
'channelSid': channelSid,
'attributes': attributes,
'clientIdentity': clientIdentity,
'mediaContentType': mediaContentType,
'mediaSid': mediaSid,
'identity': identity,
'digits': digits,
'speechResult': speechResult,
'confidence': confidence,
'callDuration': callDuration,
'recordingUrl': recordingUrl,
'recordingSid': recordingSid,
'recordingDuration': recordingDuration,
'recordingStatus': recordingStatus,
'transcriptionSid': transcriptionSid,
'transcriptionText': transcriptionText,
'transcriptionUrl': transcriptionUrl,
'transcriptionStatus': transcriptionStatus,
'dialCallStatus': dialCallStatus,
'dialCallSid': dialCallSid,
'dialCallDuration': dialCallDuration,
'dialBridged': dialBridged,
'queueResult': queueResult,
'queueSid': queueSid,
'queueTime': queueTime,
'conferenceSid': conferenceSid,
'friendlyName': friendlyName,
'statusCallbackEvent': statusCallbackEvent,
'muted': muted,
'hold': hold,
'endConferenceOnExit': endConferenceOnExit,
'startConferenceOnEnter': startConferenceOnEnter,
'eventName': eventName,
'assistantSid': assistantSid,
'dialogueSid': dialogueSid,
'userIdentifier': userIdentifier,
'currentInput': currentInput,
'currentTask': currentTask,
'dialoguePayloadUrl': dialoguePayloadUrl,
'memory': memory,
'channel': channel,
'faxSid': faxSid,
'faxStatus': faxStatus,
'numPages': numPages,
'mediaUrl': mediaUrl,
'errorCode': errorCode,
'errorMessage': errorMessage
};
getTypeName() => "TwilioRequestBase";
TypeContext? context = _ctx;
}
class DialNodeCallback extends TwilioRequestBase implements IConvertible
{
String? noAnswer;
String? hangup;
String? sessionId;
int? version;
String? failed;
String? busy;
String? usageMetricKey;
double? timeoutInSeconds;
DialNodeCallback({this.noAnswer,this.hangup,this.sessionId,this.version,this.failed,this.busy,this.usageMetricKey,this.timeoutInSeconds});
DialNodeCallback.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
noAnswer = json['noAnswer'];
hangup = json['hangup'];
sessionId = json['sessionId'];
version = json['version'];
failed = json['failed'];
busy = json['busy'];
usageMetricKey = json['usageMetricKey'];
timeoutInSeconds = JsonConverters.toDouble(json['timeoutInSeconds']);
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'noAnswer': noAnswer,
'hangup': hangup,
'sessionId': sessionId,
'version': version,
'failed': failed,
'busy': busy,
'usageMetricKey': usageMetricKey,
'timeoutInSeconds': timeoutInSeconds
});
getTypeName() => "DialNodeCallback";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'team.evovoice.io', types: <String, TypeInfo> {
'TwilioRequestBase': TypeInfo(TypeOf.AbstractClass),
'DialNodeCallback': TypeInfo(TypeOf.Class, create:() => DialNodeCallback()),
});
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /nodes/dial/callback HTTP/1.1
Host: team.evovoice.io
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
noAnswer: String,
hangup: String,
sessionId: String,
version: 0,
failed: String,
busy: String,
usageMetricKey: String,
timeoutInSeconds: 0,
callSid: String,
accountSid: String,
from: String,
to: String,
callStatus: String,
apiVersion: String,
direction: String,
forwardedFrom: String,
callerName: String,
parentCallSid: String,
stirVerstat: String,
called: String,
calledZip: String,
calledCity: String,
calledState: String,
calledCountry: String,
caller: String,
callerCity: String,
callerState: String,
callerZip: String,
callerCountry: String,
fromCity: String,
fromState: String,
fromZip: String,
fromCountry: String,
toCity: String,
toState: String,
toZip: String,
toCountry: String,
messageSid: String,
smsId: String,
messagingServiceSid: String,
body: String,
numMedia: 0,
mediaContentType0: String,
mediaUrl0: String,
mediaContentType1: String,
mediaUrl1: String,
mediaContentType2: String,
mediaUrl2: String,
index: 0,
instanceSid: String,
eventType: String,
channelSid: String,
attributes: String,
clientIdentity: String,
mediaContentType: String,
mediaSid: String,
identity: String,
digits: String,
speechResult: String,
confidence: 0,
callDuration: 0,
recordingUrl: String,
recordingSid: String,
recordingDuration: 0,
recordingStatus: String,
transcriptionSid: String,
transcriptionText: String,
transcriptionUrl: String,
transcriptionStatus: String,
dialCallStatus: String,
dialCallSid: String,
dialCallDuration: 0,
dialBridged: False,
queueResult: String,
queueSid: String,
queueTime: 0,
conferenceSid: String,
friendlyName: String,
statusCallbackEvent: String,
muted: False,
hold: False,
endConferenceOnExit: False,
startConferenceOnEnter: False,
eventName: String,
assistantSid: String,
dialogueSid: String,
userIdentifier: String,
currentInput: String,
currentTask: String,
dialoguePayloadUrl: String,
memory: String,
channel: String,
faxSid: String,
faxStatus: String,
numPages: 0,
mediaUrl: String,
errorCode: String,
errorMessage: String
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length (string)