RFID Rajapinta

Kuvaus on tarkoitettu DTimen kanssa integrointia tekeville ohjelmistoyrityksille. Loppukäyttäjällä on tuskin tälle käyttöä.

Rajapinta on DTimen (web-sovellus) ja rfid_time.exe (windows GUI-ohjelma) välillä. Rajapintaa voi testata selaimella, lisää alla olevat URL-polut kehitys- tai tuotantopalvelimen URL:n “dtime.dll” jälkeen. HUOM! Kannattaa käyttää kahta eri selainta tai eri hostname:lla, jos haluaa rinnakkain pitää istuntoa varsinaisessa selainliittymässä.

DTimessa on seuraavat rajapintaa tukevat URL:it:

Versiotarkistus (vain sisäiseen käyttöön)

Login

URL /public/login_rfid.zml
Aloittaa istunnon (clientin tulee muistaa ja lähettää SESSION-cookie)
Input-argumentit (kuten HTML-lomaketta käytettäessä, sekä POST että GET toimii, käytä mieluummin POST kirjautumiseen):

tstamp={oma kellonaika Helsingin aikavyöhykkeessä, esim muodossa YYYY-MM-DD hh:mm}
ticket={shared secret avain joka antaa pääsyn rajapinnan käyttöön}
rfid={työntekijän RFID-tunnisteen numero, näkyy DTimessa Asetukset→Työntekijät takaa}
name={käyttäjätunnus, ei tarvita jos rfid annettu, käytä “__=null=__” jos aiot tallentaa offline-tilassa tehtyjä kellotuksia}
password={salasana, tarvitaan vain name:n kanssa}
client_id={aikaisemmin annettu}
client_mac={laitteen tai tietokoneen yksilöivä tunniste, max 64 merkkiä)

Virhetilanteen vastaus:

ERROR: {virheilmoitus}

Onnistuneen kirjautumisen vastaus:

OK: {Sukunimi, Etunimi, html-quotesilla}
id: {työntekijän employee_id DTimessa, säilytä tämä, se tarvitaan jatkossa}
name: {Sukunimi, Etunimi, ilman html-quotes}
worktime_group: {palkkaryhmän nimi}
client_offset: {tstampin ero palvelimen kellonaikaan sekunteina}
client_id: {laitteen tai tietokoneen id, tämän voi antaa client_mac:n sijasta}
activity: {ID=nimi, näitä tulee useampia, esim. “15=Työaika (digi)” ja “16=Ajoaika (digi)”, activity 0 on aina “Lopeta”}
activity_shortcut: {sama kuin activity, mutta ID=pikanäppäin, voidaan muokata palkkaryhmän asetukisssa, esim. “15=T” ja “16=A”}
available_vernum: {rfid_time.exe:n uusin versio, numerona}
available_version: {rfid_time.exe:n uusin versio, tekstinä}

Login-vastauksen jälkeen tulee vielä työntekijän viimeisimmät aktiviteetit (getevents)

Get Events

URL /rfidtime/getevents.zml
Vaatii aina kirjautumisen. Täta on harvoin tarvetta käyttää suoraan.
Näyttää 10 viimeisintä kellotusta
Sisältö:

event: {aktiviteettityypin ID, aloitusaika}
event: {0, lopetusaika}

Jos työvuorosuunnittelu on käytössä näytetään lisäksi seuraavan 14 vuorokauden työvuorot:

plan: {aloitus, lopetus, aktivitetti id, työvuoron pituus, resurssi, kommentti}

Set Event

URL /rfidtime/setevent.zml
Vaatii aina kirjautumisen
Input-argumentit:

activity={aktiviteettityppin id}
tstamp={kellonaika Helsingin aikavyöhykkeessä, muoto esim YYYY-MM-DD hh:mm, sekunteja ei tallenneta}
employee={työntekijän id, tarvitaan vain kun tallennetaan offline-tilassa kellotettuja tapahtumia}
reg_nr={kuljettajille auton rekisterinumero, saa jättää pois}

Vastaus virhetilanteessa:

ERROR: {virheilmoitus}

Vastaus ok:

OK!