From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mail.toke.dk; dkim=pass header.d=irif.fr header.i=@irif.fr header.a=rsa-sha256 header.s=dkim-irif header.b=d4n+6Xz6; arc=none (Message is not ARC signed); dmarc=none Received: from korolev.univ-paris7.fr (korolev.univ-paris7.fr [IPv6:2001:660:3301:8000::1:2]) by mail.toke.dk (Postfix) with ESMTPS id 3E51C1388919 for ; Fri, 24 Jul 2026 13:30:01 +0200 (CEST) Received: from potemkin.univ-paris7.fr (potemkin.univ-paris7.fr [IPv6:2001:660:3301:8000::1:1]) by korolev.univ-paris7.fr (8.14.4/8.14.4/relay1/82085) with ESMTP id 66OBTuaG007881 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO) for ; Fri, 24 Jul 2026 13:29:56 +0200 Received: from mailhub.math.univ-paris-diderot.fr (mailhub.math.univ-paris-diderot.fr [81.194.30.253]) by potemkin.univ-paris7.fr (8.14.4/8.14.4/relay2/82085) with ESMTP id 66OBTuoO015160 for ; Fri, 24 Jul 2026 13:29:56 +0200 Received: from mailhub.math.univ-paris-diderot.fr (unknown [127.0.0.1]) by mailhub.math.univ-paris-diderot.fr (Postfix) with ESMTP id 35A0D41783 for ; Fri, 24 Jul 2026 13:29:56 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=irif.fr; h= content-type:content-type:mime-version:user-agent:subject :subject:from:from:message-id:date:date:received:received; s= dkim-irif; t=1784892594; x=1785756595; bh=3f+Dhj/rMdk1kjgk8f3dTn 16VUBwclzgXEJAlzPhdzU=; b=d4n+6Xz6agLGNkMspwCuCALbcmkSAYyMl45IFM YnIh3qcPah8ZFU8QgdgZr1yZ+3ID9IxBOEa/v8O7PLfdjPpaTqs2bPZdBP67yDkJ Y1W5J/XEhrjEr4McFMUxf8dU6pGWJh5bDuIx4O1g/W4PhnU2U1HI/vgrj6JVoOS6 O2hkhBLLfepiYq26LfvvLglj8COjtoPxjTNY//cq6TYk37OrSPOL1eGG/gkG7HFw 9Yl2aiwDE7ez70AVD1ehUrVIgUXZLVAIlgf14rsYuEF1dDJhODHsgNaofPdAGmkK qeJLLNt0KhmbpXORSjRIgMmk9QHbHgxLFTfBIw6tqREocD6w== X-Virus-Scanned: amavisd-new at math.univ-paris-diderot.fr Received: from mailhub.math.univ-paris-diderot.fr ([127.0.0.1]) by mailhub.math.univ-paris-diderot.fr (mailhub.math.univ-paris-diderot.fr [127.0.0.1]) (amavisd-new, port 10023) with ESMTP id gebXM5F8EONc for ; Fri, 24 Jul 2026 13:29:54 +0200 (CEST) Received: from trurl.irif.fr (unknown [82.64.191.149]) (Authenticated sender: jch) by mailhub.math.univ-paris-diderot.fr (Postfix) with ESMTPSA id D8D234171A for ; Fri, 24 Jul 2026 13:29:54 +0200 (CEST) Date: Fri, 24 Jul 2026 13:29:54 +0200 Message-ID: <87ecgstykt.wl-jch@irif.fr> From: Juliusz Chroboczek To: galene@lists.galene.org User-Agent: Wanderlust/2.15.9 (Almost Unreal) Emacs/30.2 Mule/6.0 MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.2.7 (korolev.univ-paris7.fr [IPv6:2001:660:3301:8000::1:2]); Fri, 24 Jul 2026 13:29:56 +0200 (CEST) X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.2.7 (potemkin.univ-paris7.fr [194.254.61.141]); Fri, 24 Jul 2026 13:29:56 +0200 (CEST) X-Miltered: at korolev with ID 6A634CB4.000 by Joe's j-chkmail (http : // j-chkmail dot ensmp dot fr)! X-Miltered: at potemkin with ID 6A634CB4.000 by Joe's j-chkmail (http : // j-chkmail dot ensmp dot fr)! X-j-chkmail-Enveloppe: 6A634CB4.000 from potemkin.univ-paris7.fr/potemkin.univ-paris7.fr/null/potemkin.univ-paris7.fr/ X-j-chkmail-Enveloppe: 6A634CB4.000 from mailhub.math.univ-paris-diderot.fr/mailhub.math.univ-paris-diderot.fr/null/mailhub.math.univ-paris-diderot.fr/ X-j-chkmail-Score: MSGID : 6A634CB4.000 on korolev.univ-paris7.fr : j-chkmail score : . : R=. U=. O=. B=0.000 -> S=0.000 X-j-chkmail-Score: MSGID : 6A634CB4.000 on potemkin.univ-paris7.fr : j-chkmail score : . : R=. U=. O=. B=0.000 -> S=0.000 X-j-chkmail-Status: Ham X-j-chkmail-Status: Ham Message-ID-Hash: ZC7P2LZ75GGQEMVMP6EOSDYMCZR36U5T X-Message-ID-Hash: ZC7P2LZ75GGQEMVMP6EOSDYMCZR36U5T X-MailFrom: jch@irif.fr X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list Subject: [Galene] Camera test for Galene List-Id: =?utf-8?q?Gal=C3=A8ne_videoconferencing_server_discussion_list?= Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Hi, Valent wrote: > I also like your idea of a test your microphone and camera button on the > login page. I've writtent a proof-of-concept for a camera and microphone test. There's a live demo here: https://galene.org:8443/camera-test.html and the sources live in the branch "camera-test" of the repository. As usual, this is 100% organic code written by a human being, an LLM was only used for proofreading. I'm not quite sure how to integrate it. One option would be tu put the "Request camera permissions" button on the login page, and have the UI unroll when the user presses it. Another option would be to open a new tab when the user presses a "test camera" button, but I'm not sure how well that would work on mobile. Note that the code is integrated with Galene's settings, so if you choose a given camera in the test page, this will be reflected in Galene's main interface. Things to do, if any of you has free time: - work on the CSS to make it pretty; - work on the CSS to make it better when the camera is switched off (microphone-only); - test under Firefox and Safari. I've made a serious effort to get the error handling right (the state should be properly reset if something goes wrong), but of course it's always worth checking. -- Juliusz