summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNirbheek Chauhan <nirbheek@centricular.com>2021-02-09 14:27:31 +0530
committerNirbheek Chauhan <nirbheek@centricular.com>2021-02-10 16:21:30 +0530
commitea3c0e87660aa987881b4c7c3424fbf56e709c54 (patch)
treec91fe4cd4c8744ed060b5ffaafdeead7496a38b2
parenta508bc243d02c256c1d6ac7fbe6e6980f655e70f (diff)
sendrecv/js: Handle OFFER_REQUEST as part of the switch
This is clearer, and also stricter w.r.t. what sort of messages we accept. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-examples/-/merge_requests/31>
-rw-r--r--webrtc/sendrecv/js/webrtc.js52
1 files changed, 25 insertions, 27 deletions
diff --git a/webrtc/sendrecv/js/webrtc.js b/webrtc/sendrecv/js/webrtc.js
index b646b88..6f893e7 100644
--- a/webrtc/sendrecv/js/webrtc.js
+++ b/webrtc/sendrecv/js/webrtc.js
@@ -130,40 +130,38 @@ function onServerMessage(event) {
if (!peer_connection)
createCall(null).then (generateOffer);
return;
+ case "OFFER_REQUEST":
+ // The peer wants us to set up and then send an offer
+ if (!peer_connection)
+ createCall(null).then (generateOffer);
+ return;
default:
if (event.data.startsWith("ERROR")) {
handleIncomingError(event.data);
return;
}
- if (event.data.startsWith("OFFER_REQUEST")) {
- // The peer wants us to set up and then send an offer
- if (!peer_connection)
- createCall(null).then (generateOffer);
- }
- else {
- // Handle incoming JSON SDP and ICE messages
- try {
- msg = JSON.parse(event.data);
- } catch (e) {
- if (e instanceof SyntaxError) {
- handleIncomingError("Error parsing incoming JSON: " + event.data);
- } else {
- handleIncomingError("Unknown error parsing response: " + event.data);
- }
- return;
- }
-
- // Incoming JSON signals the beginning of a call
- if (!peer_connection)
- createCall(msg);
-
- if (msg.sdp != null) {
- onIncomingSDP(msg.sdp);
- } else if (msg.ice != null) {
- onIncomingICE(msg.ice);
+ // Handle incoming JSON SDP and ICE messages
+ try {
+ msg = JSON.parse(event.data);
+ } catch (e) {
+ if (e instanceof SyntaxError) {
+ handleIncomingError("Error parsing incoming JSON: " + event.data);
} else {
- handleIncomingError("Unknown incoming JSON: " + msg);
+ handleIncomingError("Unknown error parsing response: " + event.data);
}
+ return;
+ }
+
+ // Incoming JSON signals the beginning of a call
+ if (!peer_connection)
+ createCall(msg);
+
+ if (msg.sdp != null) {
+ onIncomingSDP(msg.sdp);
+ } else if (msg.ice != null) {
+ onIncomingICE(msg.ice);
+ } else {
+ handleIncomingError("Unknown incoming JSON: " + msg);
}
}
}