RealtimeSessionCreateRequest.fromJson constructor
Creates a RealtimeSessionCreateRequest from JSON.
Implementation
factory RealtimeSessionCreateRequest.fromJson(Map<String, dynamic> json) {
return RealtimeSessionCreateRequest(
type: json['type'] 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,
inputAudioNoiseReduction: json['input_audio_noise_reduction'] != null
? NoiseReductionConfig.fromJson(
json['input_audio_noise_reduction'] 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,
);
}