41 lines
1.2 KiB
JavaScript
41 lines
1.2 KiB
JavaScript
"use strict";
|
|
/**
|
|
* webrtc page script
|
|
*
|
|
* Author: Peter Harpending <peterharpending@qpq.swiss>
|
|
* 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() {
|
|
console.log('peepy');
|
|
let video = await getUserCamera();
|
|
console.log('poopy');
|
|
console.log('poopu');
|
|
let moi = document.getElementById('me');
|
|
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() {
|
|
if (!(navigator.mediaDevices)) {
|
|
console.error('navigator.mediaDevices is null; user not on https or something');
|
|
}
|
|
let availableDevices = await navigator.mediaDevices.enumerateDevices();
|
|
console.log(availableDevices);
|
|
return await navigator.mediaDevices.getUserMedia({ video: true, audio: false });
|
|
// return await navigator.mediaDevices.getDisplayMedia();
|
|
}
|
|
//# sourceMappingURL=webrtc.js.map
|