Skip to content

Commit 092f194

Browse files
committed
merge master
2 parents 81c4f00 + fd7e393 commit 092f194

25 files changed

+3464
-7939
lines changed

.github/workflows/main.yml

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -18,20 +18,27 @@ jobs:
1818
# This workflow contains a single job called "build"
1919
test:
2020
# The type of runner that the job will run on
21-
runs-on: macOS-11
21+
# - https://github.com/actions/runner-images?tab=readme-ov-file#available-images
22+
# - https://github.com/actions/runner-images/blob/main/images/macos/macos-13-Readme.md
23+
runs-on: macos-13
2224

2325
# Steps represent a sequence of tasks that will be executed as part of the job
2426
steps:
27+
- name: Configure xcode version
28+
uses: maxim-lobanov/setup-xcode@v1
29+
with:
30+
xcode-version: "14.1"
31+
2532
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
26-
- uses: actions/checkout@v2
33+
- uses: actions/checkout@v3
2734

28-
- name: Setup NodeJS 12
29-
uses: actions/setup-node@v1
35+
- name: Setup NodeJS
36+
uses: actions/setup-node@v3
3037
with:
31-
node-version: "12"
38+
node-version: "22"
3239

3340
- name: Cache Node.js modules
34-
uses: actions/cache@v2
41+
uses: actions/cache@v3
3542
with:
3643
# npm cache files are stored in `~/.npm` on Linux/macOS
3744
path: ~/.npm
@@ -50,17 +57,21 @@ jobs:
5057
run: npm run build
5158

5259
- name: Install Cordova CLI
60+
env:
61+
CORDOVA_VERSION: "11"
5362
run: |
5463
mkdir ~/.npm-global
5564
npm config set prefix '~/.npm-global'
5665
export PATH=~/.npm-global/bin:$PATH
57-
npm install cordova@10 -g
66+
npm install cordova@$CORDOVA_VERSION -g
5867
5968
- name: Create Cordova app, install plugin then build app
69+
env:
70+
CORDOVA_IOS_VERSION: latest
6071
run: |
6172
npm config set prefix '~/.npm-global'
6273
export PATH=~/.npm-global/bin:$PATH
6374
cd ..; cordova create myApp org.apache.cordova.myApp myApp; cd myApp;
64-
cordova platform add ios@latest --verbose
75+
cordova platform add ios@$CORDOVA_IOS_VERSION --verbose
6576
cordova plugin add ../cordova-plugin-iosrtc --verbose
6677
cordova build ios --verbose

.travis.yml

Lines changed: 0 additions & 118 deletions
This file was deleted.

CHANGELOG.md

Lines changed: 46 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,52 @@
1+
2+
#### Version 8.0.5
3+
* fix: make it impossible to do sender.replaceTrack(null) #780 via @jerry2013
4+
* fix: correct mimeType serialization #788 via @jerry2013
5+
6+
#### Version 8.0.4
7+
* fix: spec compliant RTCStatsReport #769 via @jerry2013
8+
* fix: add setDefaultAudioOutput to source #768 via @mjcctech and @jerry2013
9+
10+
#### Version 8.0.3
11+
* fix: PluginRTCPeerConnection: cyclic reference leak fixed #754 via @RSATom
12+
* fix: update npm packages with audit security warnings
13+
14+
#### Version 8.0.2
15+
* feat: add github action CI build
16+
* fix: update npm packages with audit security warnings
17+
* feat: Added createDTMFSender for RTCRtpSender via @buckun
18+
119
#### Version 8.0.1
2-
* fix RTCPeerConnection.removeTrack support for sender without track
3-
* add support for local description rollback #704 via @slavchev
20+
* fix: RTCPeerConnection.removeTrack support for sender without track
21+
* feat: add support for local description rollback #704 via @slavchev
422

523
#### Version 8.0.0
6-
* implement RTCPeerConnection.addTransceiver #589 via @agelito
7-
* fix RtpSenders inconsistency after removeTrack call #702 via @RSATom
8-
* fix RTCRtpSender MediaStreamTrack replace #699 via @RSATom
9-
* fix requestPermission returns true if AVAuthorizationStatus is notDetermined #692
10-
* fix crash when used with Janus Audiobridge #691 via @RSATom
11-
* fix Warning [LayoutConstraints] Unable to simultaneously satisfy constraints. #422 via @slavchev
12-
* fixcrash when used with Janus Audiobridge #691 via @RSATom
13-
* extend transceiver/sender/receiver functionality #664 via @slavchev
14-
* fix updateTransceiversState call #661 @ducile
15-
* Update to WebRTC.framework M87
16-
* Update to WebRTC.framework M84
24+
* feat: implement RTCPeerConnection.addTransceiver #589 via @agelito
25+
* fix: RtpSenders inconsistency after removeTrack call #702 via @RSATom
26+
* fix: RTCRtpSender MediaStreamTrack replace #699 via @RSATom
27+
* fix: requestPermission returns true if AVAuthorizationStatus is notDetermined #692
28+
* fix: crash when used with Janus Audiobridge #691 via @RSATom
29+
* fix: Warning [LayoutConstraints] Unable to simultaneously satisfy constraints. #422 via @slavchev
30+
* fix: crash when used with Janus Audiobridge #691 via @RSATom
31+
* feat: extend transceiver/sender/receiver functionality #664 via @slavchev
32+
* fix: updateTransceiversState call #661 @ducile
33+
* fix: update to WebRTC.framework M87
34+
* fix: update to WebRTC.framework M84
1735

1836
#### Version 7.0.0
19-
* Update to WebRTC.framework M79
20-
* Update to WebRTC.framework M75
37+
* fix: update to WebRTC.framework M79
38+
* fix: update to WebRTC.framework M75
2139

2240
#### Version 6.0.21
23-
* fix Canvas drawImage memory leak fix #681
24-
* fix Warning [LayoutConstraints] Unable to simultaneously satisfy constraints.
41+
* fix: canvas drawImage memory leak fix #681
42+
* fix: warning [LayoutConstraints] Unable to simultaneously satisfy constraints.
2543

2644
#### Version 6.0.20
27-
* fix Remove extmap-allow-mixed sdp header on RTCPeerConnection.prototype.setRemoteDescription to handle chrome 89
45+
* fix: Remove extmap-allow-mixed sdp header on RTCPeerConnection.prototype.setRemoteDescription to handle chrome 89
2846

2947
#### Version 6.0.19
30-
* fix MediaStreamRenderer doesn't call PluginMediaStreamTrack.unregisterRender = stuck reference. #649
31-
* fix ios not build after cordova-plugin-iosrtc #642
48+
* fix: MediaStreamRenderer doesn't call PluginMediaStreamTrack.unregisterRender = stuck reference. #649
49+
* fix: ios not build after cordova-plugin-iosrtc #642
3250

3351
#### Version 6.0.18
3452
* fix: update ios_arch.js to generate WebRTC.xcframework, Include WebRTC.xcframework instead of WebRTC.framework
@@ -73,7 +91,7 @@
7391
* fix: use video view for correct screencap framing #570
7492
* fix: cleanup old streams #570
7593
* implement basic MediaDevices.prototype.getSupportedConstraints SHIM #564
76-
* fix RTCPeerConnection.prototype.addTrack missing return RTCRtpSender #572
94+
* fix: RTCPeerConnection.prototype.addTrack missing return RTCRtpSender #572
7795

7896
#### Version 6.0.13
7997
* Bump lodash from 4.17.15 to 4.17.19 #543
@@ -122,8 +140,8 @@
122140
* Handle ios 10.x.x that does not have MediaStream Native Prototype and fallback on Blob with EventTarget shim #489
123141

124142
#### Version 6.0.9
125-
* fix possible TypeError: null is not an object (evaluating 'iceCandidateFields.foundation') due fail match candidateToJson #473
126-
* fix getStats typo report.timestamp #472
143+
* fix: possible TypeError: null is not an object (evaluating 'iceCandidateFields.foundation') due fail match candidateToJson #473
144+
* fix: getStats typo report.timestamp #472
127145
* Fix getMediaDevice audioConstraints to allowing audio devices change #470
128146

129147
#### Version 6.0.8
@@ -157,10 +175,10 @@
157175

158176
#### Version 6.0.2
159177
* implement M69 Native RTCPeerConnection.(addTrack|removeTrack) and sdpSemantics unified-plan support #407
160-
* fix insertDtmf #431
178+
* fix: insertDtmf #431
161179

162180
#### Version 6.0.1
163-
* fix stopCapture while RTCCameraVideoCapturer is not capturing causing crash due Assertion failure in -[FBSSerialQueue assertOnQueue] #426
181+
* fix: stopCapture while RTCCameraVideoCapturer is not capturing causing crash due Assertion failure in -[FBSSerialQueue assertOnQueue] #426
164182

165183
#### Version 6.0.0
166184
* Use WebRTC M69
@@ -225,15 +243,15 @@
225243
* Upgrade packages debug to ^4.1.1 and yaeti to ^1.0.2
226244
* Add cordova.plugins.iosrtc.getUserMedia MediaTrackConstraints.(video|audio).deviceId.(exact|ideal) support ([PR #374](https://github.com/cordova-rtc/cordova-plugin-iosrtc/pull/374) by @CSantosM).
227245
* Add cordova.plugins.iosrtc.getMediaDevices bluetooth and wired audio devices support ([PR #374](https://github.com/cordova-rtc/cordova-plugin-iosrtc/pull/374) by @CSantosM).
228-
* fix TypeError: undefined is not an object (evaluating 'stream.id') when removing stream [PR #383](https://github.com/cordova-rtc/cordova-plugin-iosrtc/pull/383) by @hthetiot via @l7s).
246+
* fix: TypeError: undefined is not an object (evaluating 'stream.id') when removing stream [PR #383](https://github.com/cordova-rtc/cordova-plugin-iosrtc/pull/383) by @hthetiot via @l7s).
229247

230248
#### Version 5.0.1
231249

232-
* fix typo on iosrtcPlugin.swift
250+
* fix: typo on iosrtcPlugin.swift
233251

234252
#### Version 5.0.0
235253

236-
* fix README.md
254+
* fix: README.md
237255
* Convert syntax to Swift 4.2
238256
* Uncomment, and fix, onGetStatsCallback closure
239257
* Update NPM dependencies

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# cordova-plugin-iosrtc
44

55
[![npm version](https://img.shields.io/npm/v/cordova-plugin-iosrtc.svg?style=flat)](https://www.npmjs.com/package/cordova-plugin-iosrtc)
6-
[![Build Status](https://travis-ci.com/cordova-rtc/cordova-plugin-iosrtc.svg?branch=master)](https://travis-ci.com/cordova-rtc/cordova-plugin-iosrtc)
6+
[![Build Status](https://github.com/cordova-rtc/cordova-plugin-iosrtc/actions/workflows/main.yml/badge.svg)](https://github.com/cordova-rtc/cordova-plugin-iosrtc/actions/workflows/main.yml)
77

88
[![NPM](https://nodei.co/npm/cordova-plugin-iosrtc.png)](https://npmjs.org/package/cordova-plugin-iosrtc)
99

@@ -28,11 +28,11 @@ This plugin was initially developed at eFace2Face, and later maintained by the c
2828

2929
In order to make this Cordova plugin run into a iOS application some requirements must be satisfied in both development computer and target devices:
3030

31-
* Xcode >= 13.2.1 (13C100)
31+
* Xcode >= 14.1 (14B47b)
3232
* iOS >= 14.3 (run on lower versions at your own risk, don't report issues)
3333
* `swift-version` => 4.2
3434
* `cordova` >= 11.0.0
35-
* `cordova-ios` >= 6.2.0
35+
* `cordova-ios` >= 7.1.1
3636

3737
### Third-Party Supported Library
3838

docs/iosrtc.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -230,6 +230,17 @@ cordova.plugins.iosrtc.selectAudioOutput('speaker');
230230
cordova.plugins.iosrtc.selectAudioOutput('earpiece');
231231
```
232232

233+
### `iosrtc.setDefaultAudioOutput`
234+
235+
Tell the plugin that it must use `speaker` or `earpiece` as default audio output. You can call this method before establishing audio connection.
236+
237+
```javascript
238+
// Use speaker audio output
239+
cordova.plugins.iosrtc.setDefaultAudioOutput('speaker');
240+
241+
// Use earpiece audio output
242+
cordova.plugins.iosrtc.setDefaultAudioOutput('earpiece');
243+
```
233244

234245
### `iosrtc.turnOnSpeaker`
235246

extra/hooks/iosrtc-swift-support.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ var fs = require('fs'),
1010
xcode = require('xcode'),
1111
xmlEntities = new (require('html-entities').XmlEntities)(),
1212
DISABLE_IOSRTC_HOOK = process.env.DISABLE_IOSRTC_HOOK ? true : false,
13-
IPHONEOS_DEPLOYMENT_TARGET = process.env.IPHONEOS_DEPLOYMENT_TARGET || '10.2',
13+
IPHONEOS_DEPLOYMENT_TARGET = process.env.IPHONEOS_DEPLOYMENT_TARGET || '12',
1414
IPHONEOS_DEPLOYMENT_TARGET_XCODE = '"' + IPHONEOS_DEPLOYMENT_TARGET + '"',
1515
SWIFT_VERSION = process.env.SWIFT_VERSION || '4.2',
1616
SWIFT_VERSION_XCODE = '"' + SWIFT_VERSION + '"',
@@ -30,7 +30,7 @@ function getProjectName(protoPath) {
3030
var cordovaConfigPath = path.join(protoPath, 'config.xml'),
3131
content = fs.readFileSync(cordovaConfigPath, 'utf-8');
3232

33-
var name = /<name>([\s\S]*)<\/name>/im.exec(content)[1].trim();
33+
var name = /<name.*>([\s\S]*)<\/name>/im.exec(content)[1].trim();
3434

3535
return xmlEntities.decode(name);
3636
}

0 commit comments

Comments
 (0)