Vejledning til IT

Matematik i Måneby kører i browseren uden installation og uden login. Virker spillet ikke på skolens computere, skyldes det næsten altid en central indstilling. Spillets fejlskærm viser en linje, der begynder med Til IT:, og et link til det afsnit her, der passer.

Kort fortalt skal maaneby.dk have lov til:

WebAssembly er slået fra

Fejlskærmen siger Til IT: WebAssembly: slået fra. Spillets motor er WebAssembly, og Chrome slår WebAssembly fra, når JavaScript JIT er blokeret. Det gør politikken DefaultJavaScriptJitSetting med værdien 2 (Do not allow any site to run JavaScript JIT), som nogle kommuner bruger som hærdning. Edge og telefoner virker typisk, fordi politikken kun er sat for Chrome.

Løsningen er en undtagelse for sitet, så resten af hærdningen bliver stående: JavaScriptJitAllowedForSites med værdien [*.]maaneby.dk. Google håndhæver undtagelsen på domæneniveau, så netop den form dækker både maaneby.dk og www.maaneby.dk.

Google Admin-konsollen (Chromebooks og administreret Chrome)

  1. Log ind i Google Admin-konsollen med en administratorkonto.
  2. Gå til Menu > Devices > Chrome > Settings. Siden User & browser settings åbner.
  3. Vælg organisationsenheden med elevernes konti i siden.
  4. Find JavaScript JIT i gruppen Content (eller søg efter det).
  5. Lad standardvalget stå, og tilføj [*.]maaneby.dk på listen over URL'er, der må køre JavaScript JIT.
  6. Klik Save. Ifølge Google slår det typisk igennem på få minutter, men det kan tage op til 24 timer.

Menunavnene er fra Googles engelske vejledning og kan stå på dansk i jeres konsol.

Windows: gruppepolitik

  1. Installér Chromes ADMX-skabeloner (fra Google Chrome Bundle), hvis de ikke allerede er der.
  2. Åbn Computer Configuration > Administrative Templates > Google > Google Chrome > Content settings.
  3. Åbn Allow JavaScript to use JIT on these sites, vælg Enabled, klik Show, og tilføj [*.]maaneby.dk.

Intune

Importér Chromes ADMX-filer (først google.admx, så chrome.admx) under Devices > Configuration profiles > Import ADMX, opret en profil af typen Templates > Imported Administrative templates, og sæt samme indstilling som ovenfor. Google beskriver fremgangsmåden trin for trin (se kilderne nederst).

Registreringsdatabasen

Politikken er en liste. Hver værdi er en streng (REG_SZ) med et løbenummer som navn:

HKLM\SOFTWARE\Policies\Google\Chrome\JavaScriptJitAllowedForSites
    1    REG_SZ    [*.]maaneby.dk

Som kommando (brug næste ledige nummer, hvis 1 allerede er taget):

reg add "HKLM\SOFTWARE\Policies\Google\Chrome\JavaScriptJitAllowedForSites" /v 1 /t REG_SZ /d "[*.]maaneby.dk" /f

Tjek at det virker

Åbn chrome://policy på en elevmaskine, klik Reload policies, og se at JavaScriptJitAllowedForSites står med [*.]maaneby.dk. Åbn derefter maaneby.dk/spil/ i en ny fane.

Edge

Edge har de samme to politikker, hvis Edge også er låst: JavaScriptJitAllowedForSites under Administrative Templates > Microsoft Edge > Content settings, i registreringsdatabasen under HKLM\SOFTWARE\Policies\Microsoft\Edge\JavaScriptJitAllowedForSites. Bruger I Edges forbedrede sikkerhedstilstand (EnhanceSecurityMode), så tilføj også maaneby.dk til EnhanceSecurityModeBypassListDomains.

Et webfilter blokerer spillets filer

Fejlskærmen nævner en fil, for eksempel Til IT: main.dcr: HTTP 403, (blokeret eller offline) eller ikke en film. Den sidste betyder, at filteret har svaret med sin egen side i stedet for filen. Tillad:

AdresseIndholdContent-Type
https://maaneby.dk/Hele sitet. www.maaneby.dk sender kun videre hertil.
/game/**Selve spillet, som /spil/ viser i en iframe
/game/matematik-i-maaneby/*.dcrSpillets 19 Director-film, op til 22 MB pr. filapplication/octet-stream
/game/polyfill-dist/*.wasmMotoren (7,7 MB) og fire små udvidelserapplication/wasm
/game/polyfill-dist/*.js, /game/host/*.js, /game/fixes/*.jsScriptsapplication/javascript
/game/sw.jsService worker, der gemmer filmene til næste gang (se lager)application/javascript

Filerne skal komme frem uændret: ikke erstattet af en advarselsside, ikke afkortet og med typen application/wasm bevaret på .wasm. Scanner et proxy store filer, kan de første film tage lang tid. Spillet henter intet fra andre adresser. Browseren kan sende Cloudflares egne netværksfejlrapporter til a.nel.cloudflare.com; dem behøver I ikke tillade.

WebGL2 eller grafikacceleration er slået fra

Fejlskærmen siger Til IT: WebGL2: .... Spillet tegnes med WebGL2. Uden det kan det kun køre meget langsomt, og nogle skærme tegnes forkert. Tjek:

Lokal lagring eller service worker er blokeret

Spillet gemmer i browseren på den enkelte computer (localStorage), og en service worker gemmer de hentede film i browserens cache, så de ikke skal hentes igen. Er lokale data blokeret, for eksempel med DefaultCookiesSetting = 2 (Do not allow any site to set local data), starter spillet stadig, men det kan ikke gemmes til næste gang, og filmene hentes forfra hver gang. Tillad lokale data for sitet med CookiesAllowedForUrls = [*.]maaneby.dk (i Admin-konsollen: Cookies i gruppen Content, Allow cookies for URL patterns). Slettes browserdata ved log ud, forsvinder gemte spil også.

Spillet gik i stå under hentningen

Fejlskærmen siger Til IT: tidsgrænse: .... Titelskærmen kom ikke inden for et minut, og der blev ikke hentet noget. Det skyldes oftest et filter eller proxy, der holder filerne tilbage (se webfilter), eller et net, der er meget belastet (se båndbredde).

Båndbredde

Start gerne spillet et par minutter før timen og ikke på 25 maskiner i samme sekund. 25 elever på én gang er omkring 1,75 GB over skolens linje.

Privatliv og sikkerhed

Kontakt

Spørgsmål fra IT: skriv til [email protected]. Send gerne linjen Til IT fra fejlskærmen med, et foto er fint.

Kilder