Tips

Guide för att uppdatera boka tid för pass hos polisen

En stor del av svenskars pass har gått ut under pandemin vilket har satt ettt enormt tryck på passtiderna nu när restriktionerna har släppt och gemene svensk vill ut och resa. Det har gått så långt att vissa har börjat snappa åt sig tider för att senare sälja dem vidare. Det tycker vi är förkastligt så vi försöker ge gemene svensken en möjlighet att knipa åt sig en tid de behöver utan att behöva sitta och uppdatera polisens bokningssida manuellt.

Denna guide kommer med ett plugin till Chrome + ett enkelt skript uppdatera sidan tills den hittar en återbudstid inom en vad du anser rimlig tidsgräns. Sedan får du själv vara snabb med att välja en passande tid & plats och trycka på Nästa  innan tiden går till någon annan. Det kan ta några försök att få tag i en ombokningstid trots att man hänger låset.

Obs: Du måste använda webläsaren Chrome och detta är ingen garanti att du kommer få en tid då du vill. Utan endast underlättar för dig att hitta en. 

1. Ta dig till rätt plats

Först måste du ta dig till bokningen för ditt län via

https://polisen.se/tjanster-tillstand/pass-och-nationellt-id-kort/boka-tid-hitta-passexpedition/

och sedan klicka på länken för ditt län. Sen klickar du på "Boka ny tid" och fyller i relevant uppgifter för dig tills du kommer till sidan där du söker bokningar. Notera urln https://bokapass.nemoq.se/Booking/Booking/Index/(ditt valda län)

2. Installera pluginet Resource Override

För att se till att skriptet kör trots att man laddar om sidan måste man använda ett plugin kallat Resource override som kan köra ett skript varje gång man öppnar en sida med en viss URL. Man hämtar det från Chrome extension store, antingen via att söka fram Resource Override. Eller direkt via denna länk

Tryck på "Lägg till" och sedan "Lägg till tillägg".


Efter det kommer pluginet vara tillgänglig i Chrome högst upp i högra hörnet. Ikonen ser ut som en pusselbit.

3. Konfigurera plugin

Nu när Resource Override är installerat kan vi lägga in skriptet vi vill köra och ange för vilken sida vi vill att det ska köras.

I fältet Tab URL (1) klistrar du in URLn från sidan där man söker efter tider 

https://bokapass.nemoq.se/Booking/Booking/Index/(ditt valda län)


Sedan trycker man på knappen Add rule och väljer Inject file

Då kommer vi få en till rad där man kan skriva in ett valfritt namn i fältet Name och sen ska man trycka på Edit File.

Kopiera sedan in följande skript och tryck på save and close

---->

function play_sound() {
  let audio_ctx = new AudioContext();

  let volume = 10;
  let frequency = 500;
  let oscillation_type = 'triangle';
  let duration = 5;

  let oscillator = audio_ctx.createOscillator();
  let gain = audio_ctx.createGain();

  oscillator.connect(gain);
  oscillator.frequency.value = frequency;
  oscillator.type = oscillation_type;
  gain.connect(audio_ctx.destination);

  gain.gain.value = volume;

  oscillator.start(audio_ctx.currentTime);
  oscillator.stop(audio_ctx.currentTime + duration);
}



function sleep(ms) {
  return new Promise(resolve => setTimeout(resolve, ms));
}

sleep(300).then(() => {
     sleep(15000).then(()=>{
     if(document.getElementsByClassName("validation-summary-errors").length!=0){
     document.getElementsByName("TimeSearchFirstAvailableButton")[0].click()
     }
     })

  var datum = new Date(document.getElementsByName("FromDateString")[1].defaultValue);
  console.log(datum);
  if (datum < new Date('2022-06-14')) {
    console.log("Hittade en tid!");
     document.getElementsByClassName("timecell")[0].click()
     sleep(100).then(() => {
    play_sound();
     document.getElementsByName("Next")[0].click();

   })


  } else {
  sleep(15000).then(()=>{
  document.getElementsByName("TimeSearchFirstAvailableButton")[0].click()
  })
   
  }
});

Här kan du ändra till

innan vilket datum du

vill hitta en tid.
<-----
Ändra t ex till 
new Date('2022-04-11') 

om du vill försöka hitta en tid innan den 11e april.

3.1 Kort förklaring vad som händer i skriptet

Skriptet kommer att vänta en halv sekund efter sökningen slutförts och sedan titta vilket datum vi fick en träff för. Sedan om datumet är innan vårt önskade kommer vi spela ett ljud (ganska högt ljud..) som notifierar användaren att det finns en tid som man kan boka. Annars kommer skripte trycka på knappen Första lediga tid och man söker om. Detta upprepas tills man hittar en tid så det kan ta en stund men man behöver inte aktivt sitta och söka om.


Uppdatering: Skriptet väljer nu första bästa tid den hittar och trycker sedan på nästa. Dock kan någon annan fortfarande hinna före vilket leder till att man får starta om sökningen genom att trycka på Första lediga tid igen.

4. Starta sökningen

Om du har följt den här guiden så kan du nu gå tillbaka till söksidan hos polisen och trycka på Första lediga tid för att starta processen.

Sedan vara i närheten av datorn för att kunna springa dit om man hittar en tid och sedan välja en tid & plats som passar och sedan slutföra bokningen.

Lycka till och förhoppningsvis trevlig resa.



5. När du bokat en tid

När du lyckats boka en tid kan du antingen ta bort posten i Resource Override eller avinstallera pluginet helt.

6. Frågor

Har ni några frågor når ni mig via anton@susapp.se eller varför inte skriva en anonym en arg lapp i knutna näven om hur värdelös detta skript var och att guiden inte går att följa med i för fem öre.