RealtimeSession.fromJson constructor
Creates a RealtimeSession from JSON.
Implementation
factory RealtimeSession.fromJson(Map<String, dynamic> json) {
return RealtimeSession(
id: json['id'] as String,
object: json['object'] as String,
model: json['model'] as String,
modalities: (json['modalities'] as List<dynamic>?)?.cast<String>(),
instructions: json['instructions'] as String?,
voice: json['voice'] != null
? RealtimeVoice.fromJson(json['voice'] as String)
: null,
inputAudioFormat: json['input_audio_format'] != null
? RealtimeAudioFormat.fromJson(json['input_audio_format'] as String)
: null,
outputAudioFormat: json['output_audio_format'] != null
? RealtimeAudioFormat.fromJson(json['output_audio_format'] as String)
: null,
inputAudioTranscription: json['input_audio_transcription'] != null
? InputAudioTranscription.fromJson(
json['input_audio_transcription'] as Map<String, dynamic>,
)
: null,
turnDetection: json['turn_detection'] != null
? TurnDetection.fromJson(
json['turn_detection'] as Map<String, dynamic>,
)
: null,
tools: (json['tools'] as List<dynamic>?)
?.map((e) => RealtimeTool.fromJson(e as Map<String, dynamic>))
.toList(),
toolChoice: json['tool_choice'] != null
? RealtimeToolChoice.fromJson(json['tool_choice'] as Object)
: null,
temperature: (json['temperature'] as num?)?.toDouble(),
maxResponseOutputTokens: json['max_response_output_tokens'] != null
? InfOrInt.fromJson(json['max_response_output_tokens'] as Object)
: null,
);
}