Synchronizace uživatelů z externího zdroje - best practices
Doporučujeme následující praktiky synchronizace uživatelů z externího zdroje do Tritia. Tato doporučení vznikla na základě zkušeností s reálnými problémy a jejich uplatněním se vyhnete mnohým problémům, které je zbytečné opakovat.
Externím zdrojem je myšlena externí databáze uživatelů, kterou spravuje provozovatel knihovního systému - např. LDAP, univerzitní systém, ekonomický systém organizace, ...
Obecná doporučení:
- Je třeba vhodně vybrat párovací údaj, přes který se bude jednoznačně párovat uživatel v Tritiu s uživatelem z externího zdroje. Za nejvhodnější považujeme využít uživatelské jméno, případně položku externí id uživatele Tritia.
- Synchronizace uživatelů se provádí pravidelně (1x denně v noci) jednosměrně z externího zdroje do Tritia - tzn. počítá se s tím, že uživatel už bude v Tritiu existovat a může omezeně využívat její služby po přihlášení, i když v knihovně ještě nebyl.
- Synchronizace zahrnuje čtenáře i obsluhu knihovny. Nicméně přidělování práv pro obluhu je snadnější zařídit ručně v Tritiu.
- Pravidla pro archivaci uživatelů či jejich opětovné vytažení z archviu mohou být velmi individuální a je třeba pečlivě zvážit pro každý provoz.
Postup synchronizace:
- Zjistit seznam všech uživatelů z externího zdroje (zjištěná data se logují pro případné hledání chyb).
- Uživatelé, kteří nemají vyplněný párovací údaj, jsou vyřazeni ze seznamu pro další synchronizaci.
- Seznam uživatelů musí vracet více než 0 výsledků, jinak se předpokládá chyba synchronizace a je lepší ji ukončit.
- Volitelně: Archivovat uživatele (pravidla jsou individuální, například ty, kteří byli dříve z externího zdroje přeneseni a nyní již v něm neexistují)
- Uživatelská jména archivovaných uživatelů jsou změněna, aby byla uvolněna pro recyklaci, je-li to třeba (doporučený formát archivovaného uživatelského jména = "ARCHIVE_<TRITIUS_USER_ID>").
- Tento krok je třeba provádět před vlastní synchronizací, aby se případně uvolnila pro nové uživatele uživatelská jména uživatelů, kteří jsou archivováni.
- Seznam uživatelů z externího zdroje se prochází a provádí se synchronizace s Tritiem, přesněji pro každého uživatele:
- Hledá se uživatel v Tritiu podle párovacího údaje
- Pokud není nalezen (neexistuje) - kontroluje se existence jiného uživatele se stejným uživatelským jménem
- Uživatelské jméno již existuje - zaloguje se chyba, záznam není vytvořen (chybový stav, duplicitní uživatelé)
- Uživatelské jméno neexistuje - je vytvořen nový uživatel (viz Vytvoření nového uživatele)
- Pokud je nalezen (existuje) - kontroluje se ještě shoda datum narození záznamů z obou systémů (pojistka proti špatnému párování uživatelů, předpokládá se, že by mělo sedět v obou systémech)
- Datum narození je různé - zaloguje se chyba, záznam není aktualizován
- Datum narození je shodné - provede se aktualizace uživatele (viz Aktualizace existujícího uživatele)
- Volitelně: Pokud je uživatel archivován, je automaticky vytažen z archivu zpět na výchozí oddělení knihovny (opět záleží na konkrétních potřebách knihovny, uživatelé z archivu nemusejí být vytahování).
- Pokud není nalezen (neexistuje) - kontroluje se existence jiného uživatele se stejným uživatelským jménem
- Hledá se uživatel v Tritiu podle párovacího údaje
Vytvoření nového uživatele
Při vytváření nového uživatele dopuručujeme přenášet:
- párovací údaj (pokud to není přihlašovací jméno) jako External ID,
- přihlašovací jméno,
- jméno a příjmení,
- kontaktní adresa - ulice, město, psč, stát,
- trvalá adresa - ulice, město, psč, stát,
- telefon, email.
Jako čtenářské číslo - přiřadit další v pořadí.
Jako uživatelovu výchozí uživatelská skupinu i výchozí čtenářskou skupinu - nastavit výchozí čtenářskou skupinu v systému.
Jako výchozí oddělení uživatele - nastavit vybrané oddělení v knihovně, které není typu archiv.
Aktualizace existujícího uživatele
Při aktualizaci se aktualizují všechny údaje jako při vytváření nového uživatele.
Adresu doporučujeme aktualizovat jen pokud je v externím systému neprázdná (pokud ji někdo v Tritiu vyplní), aby se nepřepsala z externího systému prázdnou hodnotou.
Zvážit aktualizaci položek telefon a email - pokud jej knihovnice v Tritiu aktivně opravují, může být výhodné aktualizovat jen pokud je v Tritiu stále nevyplněný (a preferovat tedy hodnotu v Tritiu).