add audio

This commit is contained in:
Peter Maquiran
2024-08-15 16:34:07 +01:00
parent 8e25733760
commit d1918d6695
10 changed files with 48 additions and 43 deletions
@@ -71,10 +71,7 @@
</div>
<div *ngIf="attachment.fileType == MessageAttachmentFileType.Audio">
<audio controls>
<source [src]="attachment.safeFile" >
Your browser does not support the audio element.
</audio>
<audio [src]="attachment.safeFile|safehtml" preload="metadata" class="flex-grow-1" controls controlsList="nodownload noplaybackrate"></audio>
</div>
<div *ngIf="attachment.fileType == MessageAttachmentFileType.Doc">
+14 -18
View File
@@ -161,7 +161,8 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy
private CameraService: CameraService,
private FilePickerWebService: FilePickerWebService,
private FilePickerService: FilePickerService,
private SpeakerService: SpeakerService
private SpeakerService: SpeakerService,
private sanitizer: DomSanitizer
) {
// update
this.checkAudioPermission()
@@ -220,9 +221,12 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy
id: message.attachments[0].id
})
if(result.isOk()) {
message.attachments[0].safeFile = result.value
if(result.isOk() && message.attachments[0].fileType == MessageAttachmentFileType.Audio) {
console.log('safe parse', result.value)
message.attachments[0].safeFile = result.value;
} else if(result.isOk()){
message.attachments[0].safeFile = result.value
}
}
@@ -257,10 +261,12 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy
id: message.attachments[0].id
})
if(result.isOk()) {
if(result.isOk() && message.attachments[0].fileType == MessageAttachmentFileType.Audio) {
console.log('safe parse', result.value)
message.attachments[0].safeFile = result.value;
} else if(result.isOk()){
message.attachments[0].safeFile = result.value
}
}
@@ -504,16 +510,6 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy
}, 1000)
}
async getFile(fileName?: any) {
const audioFile = await Filesystem.readFile({
path: fileName,
directory: Directory.Data
})
const base64sound = audioFile.data;
const base64Response = await fetch(`data:audio/ogg;base64,${base64sound}`);
this.audioRecordedSafe = base64Response.url;
}
async startRecording() {
const start = await this.SpeakerService.startRecording()
@@ -584,8 +580,8 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy
fileName: "audio",
source: MessageAttachmentSource.Device,
fileType: MessageAttachmentFileType.Audio,
mimeType: this.audioMimeType
mimeType: this.audioMimeType, // 'audio/webm',
safeFile: this.sanitiser.bypassSecurityTrustResourceUrl(this.audioRecordedDataUrl)
}]
this.chatServiceService.sendMessage(message)
@@ -929,7 +925,7 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy
}
message.attachments = [{
file: file.value.base64String.split(',')[1],
file: file.value.base64String,
fileName: "foto",
source: MessageAttachmentSource.Device,
fileType: MessageAttachmentFileType.Image,