Skip to content

Commit b0ce589

Browse files
committed
release: 1.1.2.
1 parent c3b95f9 commit b0ce589

File tree

4 files changed

+68
-2
lines changed

4 files changed

+68
-2
lines changed

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
# Changelog
22

33
--------------------------------------------
4+
[1.1.2] - 2023-08-14
5+
6+
* Add async functions for get pc states.
7+
48
[1.1.1] - 2023-06-29
59

610
* downgrade collection to ^1.17.1.

lib/src/media_stream_track_impl.dart

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,4 +96,9 @@ class MediaStreamTrackWeb extends MediaStreamTrack {
9696
Future<void> setTorch(bool torch) {
9797
throw UnimplementedError('The web implementation does not support torch');
9898
}
99+
100+
@override
101+
Future<MediaStreamTrack> clone() async {
102+
return MediaStreamTrackWeb(jsTrack.clone());
103+
}
99104
}

lib/src/rtc_peerconnection_impl.dart

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -172,15 +172,72 @@ class RTCPeerConnectionWeb extends RTCPeerConnection {
172172
@override
173173
RTCSignalingState? get signalingState => _signalingState;
174174

175+
@override
176+
Future<RTCSignalingState?> getSignalingState() async {
177+
_signalingState = signalingStateForString(_jsPc.signalingState);
178+
return signalingState;
179+
}
180+
175181
@override
176182
RTCIceGatheringState? get iceGatheringState => _iceGatheringState;
177183

184+
@override
185+
Future<RTCIceGatheringState?> getIceGatheringState() async {
186+
_iceGatheringState = iceGatheringStateforString(_jsPc.iceGatheringState);
187+
return _iceGatheringState;
188+
}
189+
178190
@override
179191
RTCIceConnectionState? get iceConnectionState => _iceConnectionState;
180192

193+
@override
194+
Future<RTCIceConnectionState?> getIceConnectionState() async {
195+
_iceConnectionState = iceConnectionStateForString(_jsPc.iceConnectionState);
196+
if (browser.isFirefox) {
197+
switch (_iceConnectionState!) {
198+
case RTCIceConnectionState.RTCIceConnectionStateNew:
199+
_connectionState = RTCPeerConnectionState.RTCPeerConnectionStateNew;
200+
break;
201+
case RTCIceConnectionState.RTCIceConnectionStateChecking:
202+
_connectionState =
203+
RTCPeerConnectionState.RTCPeerConnectionStateConnecting;
204+
break;
205+
case RTCIceConnectionState.RTCIceConnectionStateConnected:
206+
_connectionState =
207+
RTCPeerConnectionState.RTCPeerConnectionStateConnected;
208+
break;
209+
case RTCIceConnectionState.RTCIceConnectionStateFailed:
210+
_connectionState =
211+
RTCPeerConnectionState.RTCPeerConnectionStateFailed;
212+
break;
213+
case RTCIceConnectionState.RTCIceConnectionStateDisconnected:
214+
_connectionState =
215+
RTCPeerConnectionState.RTCPeerConnectionStateDisconnected;
216+
break;
217+
case RTCIceConnectionState.RTCIceConnectionStateClosed:
218+
_connectionState =
219+
RTCPeerConnectionState.RTCPeerConnectionStateClosed;
220+
break;
221+
default:
222+
break;
223+
}
224+
}
225+
return _iceConnectionState;
226+
}
227+
181228
@override
182229
RTCPeerConnectionState? get connectionState => _connectionState;
183230

231+
@override
232+
Future<RTCPeerConnectionState?> getConnectionState() async {
233+
if (browser.isFirefox) {
234+
await getIceConnectionState();
235+
} else {
236+
_connectionState = peerConnectionStateForString(_jsPc.connectionState);
237+
}
238+
return _connectionState;
239+
}
240+
184241
@override
185242
Future<void> dispose() {
186243
_jsPc.close();

pubspec.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name: dart_webrtc
22
description: Use the dart/js library to re-wrap the webrtc js interface of the browser, to adapted common browsers.
3-
version: 1.1.1
3+
version: 1.1.2
44
homepage: https://github.com/flutter-webrtc/dart-webrtc
55

66
environment:
@@ -10,7 +10,7 @@ dependencies:
1010
collection: ^1.17.1
1111
js: ^0.6.4
1212
platform_detect: ^2.0.7
13-
webrtc_interface: 1.1.0
13+
webrtc_interface: 1.1.1
1414

1515
dev_dependencies:
1616
build_runner: ^2.3.3

0 commit comments

Comments
 (0)