Skip to content

Commit a37d385

Browse files
authored
Merge pull request #770 from cordova-rtc/bug/insertDTMF
fix PluginRTCDTMFSender insertDTMF when no senders is available
2 parents a8a1c78 + 0852429 commit a37d385

File tree

1 file changed

+12
-4
lines changed

1 file changed

+12
-4
lines changed

src/PluginRTCDTMFSender.swift

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,12 @@ class PluginRTCDTMFSender : NSObject {
1818

1919
self.eventListener = eventListener
2020

21-
// TODO check if new rtcRtpSender can be used one Unified-Plan merged
22-
//let streamIds = [streamId]
23-
//self.rtcRtpSender = rtcPeerConnection.add(track, streamIds: streamIds);
24-
self.rtcRtpSender = rtcPeerConnection.senders[0]
21+
if !rtcPeerConnection.senders.isEmpty {
22+
self.rtcRtpSender = rtcPeerConnection.senders[0]
23+
} else {
24+
// TODO check if new rtcRtpSender can be used one Unified-Plan merged
25+
//self.rtcRtpSender = rtcPeerConnection.add(track, streamIds: [streamId]);
26+
}
2527

2628
if self.rtcRtpSender == nil {
2729
NSLog("PluginRTCDTMFSender#init() | rtcPeerConnection.createDTMFSenderForTrack() failed")
@@ -41,6 +43,12 @@ class PluginRTCDTMFSender : NSObject {
4143
NSLog("PluginRTCDTMFSender#insertDTMF()")
4244

4345
let dtmfSender = self.rtcRtpSender?.dtmfSender
46+
47+
if dtmfSender == nil {
48+
NSLog("RTCDTMFSender#insertDTMF() | RTCDTMFSender.insertDTMF() failed")
49+
return
50+
}
51+
4452
let durationMs = duration / 100
4553
let interToneGapMs = interToneGap / 100
4654
let result = dtmfSender!.insertDtmf(tones, duration: durationMs, interToneGap: interToneGapMs)

0 commit comments

Comments
 (0)