From f8f76f6806b7c4a111aa67f60b2182ae4e600b11 Mon Sep 17 00:00:00 2001 From: David Baker Date: Mon, 4 Jan 2021 19:58:12 +0000 Subject: [PATCH] Add DTMF sending support --- src/webrtc/call.ts | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/webrtc/call.ts b/src/webrtc/call.ts index fea0db149..2dd8e319c 100644 --- a/src/webrtc/call.ts +++ b/src/webrtc/call.ts @@ -694,6 +694,21 @@ export class MatrixCall extends EventEmitter { return callOnHold; } + /** + * Sends a DTMF digit to the other party + * @param digit The digit (nb. string - '#' and '*' are dtmf too) + */ + sendDtmfDigit(digit: string) { + for (const sender of this.peerConn.getSenders()) { + if (sender.track.kind === 'audio' && sender.dtmf) { + sender.dtmf.insertDTMF(digit); + return; + } + } + + throw new Error("Unable to kind a track to send DTMF on"); + } + private updateMuteStatus() { if (!this.localAVStream) { return;