From eb259bbdae9ac13da6faaecc714b6e451b0d330b Mon Sep 17 00:00:00 2001 From: adb Date: Tue, 8 Jun 2021 22:08:36 +0200 Subject: [PATCH] debug membershipEvents / soundRecorder --- src/components/chat/event.vue | 8 ++++++-- src/components/layout/soundRecorder.vue | 7 ++++++- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/src/components/chat/event.vue b/src/components/chat/event.vue index bfd960e..9a478ae 100644 --- a/src/components/chat/event.vue +++ b/src/components/chat/event.vue @@ -52,11 +52,15 @@ export default { invite(event){ return `invited ${event.target?calcUserName(event.target.userId):event.content.displayname||event.state_key}` }, join(event){ if (!event.unsigned.prev_content) return 'joined the room'; - if (event.unsigned.prev_content.displayName !== event.content.displayname) + if (event.unsigned.prev_content.membership === 'invite') return 'accepted invite'; + if (event.unsigned.prev_content.displayname !== event.content.displayname) return `changed displayname from ${event.unsigned.prev_content.displayname} to ${event.content.displayname}`; return 'updated their account'; }, - leave(){ return 'left the room' }, + leave(event){ + if (event.unsigned.prev_content && event.unsigned.prev_content.membership === 'invite') return 'rejected invite'; + return 'left the room' + }, ban(event){return `banned ${calcUserName(event.target.userId)}` } } } diff --git a/src/components/layout/soundRecorder.vue b/src/components/layout/soundRecorder.vue index a3a9b16..c90c94e 100644 --- a/src/components/layout/soundRecorder.vue +++ b/src/components/layout/soundRecorder.vue @@ -46,6 +46,7 @@ export default { this.onStart(); navigator.mediaDevices.getUserMedia({audio: true}) .then(stream => { + this.stream = stream; this.recorder.init(stream); this.recorder.start().then(()=>this.isRecording=true); }) @@ -56,6 +57,7 @@ export default { .then(({blob}) => { blob.name = `Recording-${new Date().toISOString()}.${blob.type.split('/')[1]}`; this.onStop({blob}); + this.stream.getTracks().map(track => track.stop()); this.isRecording=false; }); }, @@ -68,8 +70,11 @@ export default { data(){ return{ recorder: new Recorder(audioContext, { - onAnalysed: data => this.setVoiceMeter(data.lineTo) + onAnalysed: data => { + this.setVoiceMeter(data.lineTo); + } }), + stream: undefined, isRecording: false } }