Utvikler cookbook

4.18. Oppsett av planlagt oppgave

Bakgrunn

EasyPublish CMS har en innebygd motor for kjøring av planlagte oppgaver ("scheduled tasks"). Denne kjører hvert minutt (kjøres via crond) og henter ut ut oppgaver som er registrert i EP og kjører disse i bakgrunnen. 

I denne artikkelen vil du lære:

Fremgangsmåte

1. Opprette klasse for scheduled task

En "scheduled task" må arve klassen ScheduledTask og ha metoden execute. Eksempel på oppsett:

<?php

        class PullRemoteDataTask extends ScheduledTask {
                                
                function execute() {

                        // do something
                        
                        return true;                    
                }
                
        }

 

Filen kan i prinsippet plasseres i en vilkårlig katalog, men det er vanlig praksis å plassere filen i "tasks"-katalogen, relativ til rot-mappen for nettstedet.

Eksempel, dersom nettstedet er plassert under /var/www/www.example.com , bør filen plasseres i /var/www/www.example.com/tasks/remotedata.php

2. Angi kjøreplan for scheduled task

Gå til EP, ServerAdmin / Planlagte oppgaver og velg "Ny oppgave" fra verktøylinjen.

Med utgangspunkt i eksempel-koden over, angir vi følgende innstillinger:

Formatet for "Tidsskjema" følger i hovedsak cron-formatet, se Wikipedia for mer info. Eksempelet (*/10 * * * *) angir at oppgaven skal kjøres hvert 10. minutt.

Epost-varsling (valgfritt)

Angi e-postadresse som skal varsles når oppgaven er kjørt i feltet for "Epost-varsling". Flere e-postadresser kan angis med komma skille.

E-post format kan angis ved en pipe (|) og så formatet, støttede formater er: TEXT (standard), HTML, FULLTEXT og FULLHTML. Eks: jp@escio.no|FULLTEXT


FULLTEXT og FULLHTML viser utdata fra jobben kjørt, mens de andre viser kun status og sluttmelding.

 

Overvåke kjøring av oppgaver

EP sin scheduler logger all aktivtet til loggfilen /var/log/scheduler.log.

08.10.15

Hjelp / support

Jeg finner ikke det jeg leter etter

Vår dokumentasjon er stadig under utvikling. Vi endrer og legger til nye kapitler og bøker etter hvert som EasyPublish CMS endrer og vokser. Skulle du likevel ikke finne det du leter etter så ta kontakt med oss via support@escio.no.

Jeg har funnet en feil

Hvis du har funnet en feil i vår dokumentasjon så ønsker vi å rette på den. Send oss et hint til support@escio.no.

Translate

You can translate this documentation by using Google Translate. Select your language:

×