/** * webrtc page script * * Author: Peter Harpending * Date: 2026-02-04 * Copyright: Copyright (c) 2026 QPQ AG * * Reference: https://git.qpq.swiss/QPQ-AG/research-megadoc/src/commit/c7c4592d4b21ad120145ef63334471a1a7ec1e60/paste/2026-02/grok-webrtc.html * * @module */ main(); async function main () : Promise { console.log('peepy'); let video : MediaStream = await getUserCamera(); console.log('poopy'); console.log('poopu'); let moi = document.getElementById('me') as HTMLVideoElement; moi.srcObject = video; console.log('poopa'); } /** * Try to get the user's camera * * tries to get screenshare if user camera not available for whatever reason * * chimps out if * - not on https * - user says no */ async function getUserCamera () : Promise { if (!(navigator.mediaDevices)) { console.error('navigator.mediaDevices is null; user not on https or something'); } let availableDevices: Array = await navigator.mediaDevices.enumerateDevices(); console.log(availableDevices); return await navigator.mediaDevices.getUserMedia({video: true, audio: false}); // return await navigator.mediaDevices.getDisplayMedia(); }