Map<String, dynamic>? metadata = message.metadata;
try {
if (metadata != null) {
Map? injectedObject = metadata["@injected"];
if (injectedObject != null &&
injectedObject.containsKey("extensions")) {
Map extensionsObject = injectedObject["extensions"];
if (extensionsObject.containsKey("voice-transcription")) {
Map voiceTranscriptionObject =
extensionsObject["voice-transcription"];
List attachments = voiceTranscriptionObject['attachments'];
for (var attachment in attachments) {
if (attachment['error'] == null) {
final attachmentData = attachment['data'];
final transcribedMessage = attachmentData['transcribed_message'];
}
}
}
}
}
} catch (e, stack) {
debugPrint("$stack");
}