Camera WebRTC Connect

HTML

<h1>Nabto WebRTC Live Demo</h1>
<video id="videoview" autoplay muted controls width="480" height="360"></video>

JavaScript

import {createSignalingClient } from 'https://cdn.skypack.dev/@nabto/webrtc-signaling-client'
import { createClientMessageTransport, ClientMessageTransportSecurityMode, PerfectNegotiation, SignalingEventHandler } from 'https://cdn.skypack.dev/@nabto/webrtc-signaling-util'

const productId = "wp-39wu7tex";
const deviceId = "wd-3xtqp3hy4xxy3av3";
const sharedSecret = "59470b3f8e331d9975da366d8dc0dcf743ef6a1154a4f779932740b4d14be3ab";

function connect()  {
    const signalingClient = createSignalingClient({productId: productId, deviceId: deviceId});
    const messageTransport = createClientMessageTransport(signalingClient, {securityMode: ClientMessageTransportSecurityMode.SHARED_SECRET, sharedSecret: sharedSecret})
    messageTransport.on("setupdone", async (iceServers) => {
        const pc = new RTCPeerConnection({iceServers: iceServers});
        new PerfectNegotiation(pc, messageTransport);
        new SignalingEventHandler(pc, signalingClient);
        pc.addEventListener("track", (event) => {
            const videoElement = document.getElementById("videoview");
            videoElement.srcObject = event.streams[0];
        })
    })
    signalingClient.start();
}

$(document).ready(function () {
    connect();
});