Vad du åstadkommer med detta:

Varje lördagsmorgon klockan 08:00 skickas ett SMS automatiskt till samtliga gymmedlemmar med en länk till kommande veckas passchema.

Vad du behöver för den här guiden:

OBS: Om du är en Websupport-kund kan den här guiden vara mer lämplig ... How to schedule SMS with Websupport (Loopia)

Steg

  1. Skapa en PHP-fil som skickar SMS
  2. Upprätta ett cron-script

Skapa en PHP-fil som skickar SMS

Den här PHP-filen skickar ett förutbestämt meddelande till en given mottagarlista. Skapa en PHP-fil i valfritt kodredigeringsprogram och kopiera in koden nedan, men byt ut de indikerade strängarna mot dina 46elks-autentiseringsuppgifter enligt kommentarerna.


    

Cron-kommandots olika delar

Det är en fördel att ha en bra generell förståelse för cron innan vi dyker ner i exemplet. Nedan är en kortfattad översikt över cron-kommandot och hur det fungerar (hoppa över det här steget). Här är ett enkelt cron-exempel:


    

Ett cron-script har två huvudkomponenter:

Först har du tidsinställningar: 10 * * * * - här skriver du inställningar för minuter, timmar, dagar, månader och veckodag (se mer nedan).

Sedan har du själva kommandot:


    

Själva kommandot i sig har i det här exemplet tre delar:

/usr/bin/php - PHP-script går vanligtvis inte att köra direkt i sig själva, så därför behöver vi använda en PHP-parser. Använd kommandot which php för att kontrollera filsökvägen.

/www/virtual/username/cron.php - Detta är scriptets filsökväg.

> /dev/null 2>&1 - (valfritt) Den här delen hanterar scriptets utmatning.

I ovanstående exempel är cron-scriptet inställt på att skicka var tionde minut - eller, mer specifikt, var tionde minut varje timme, varje dag, varje månad, alla veckodagar. Asterisken är ett jokertecken som står för 'alla'.

Här är en uppdelning av tidskomponenterna:

Här är några grundläggande exempel som förklarar hur det funkar:

Syntax Förklaring
0 * * * * Kör en gång i timmen (varje timme vid minut 0)
0 0 * * * Kör en gång per dag (varje dag vid midnatt och minut 0)
0 0 1 * * Kör en gång per månad (första dagen varje månad vid midnatt och minut 0)

Utifall saker och ting inte fungerar som de ska är crontab.guru ett utmärkt stöd.

Upprätta ett cron-script

Nedan finns all information du behöver för att skapa ett cron-script som körs varje lördagsmorgon klockan 08:00. När du fått tillgång till din server kan du se om det finns några aktuella script som körs med detta kommando som listar alla crontabs. Kör följande på kommandoraden:


    

Kommandot listar allt crontab-innehåll
((OBS: Listan kan vara tom).)

Då ska vi redigera crontab-funktionen. Kör det här kommandot i terminalen:


    

I det här skedet, förutsatt att du inte ändrat standardredigeraren för din server, borde du befinna dig i vim-editorn. Om det istället är något annat redigeringsverktyg bör du kunna följa instruktionerna för den editorn. Vim kan vara lite förvirrande och skrämmande första gången du använder det, så här är vad du ska göra:

  1. Tryck Esc.
  2. Knappa in “i” (“insert”) för att börja redigera filen.
  3. Klistra in den här cron-funktionen i filen:
  4. 
        
  5. Tryck Esc.
  6. Knappa in “:wq” (“write and quit”) för att spara och stänga.

Då var det klart! 🥳 Nu kan du luta dig tillbaka och dina gymmedlemmar kommer att bli glada när de får sina uppdateringar.

Några andra potentiella användningsområden för cron-script:

Skrivet 2020-12-18 av Ben Chatwin och översatt 2021-01-11 av Oskar Calais.