Obsah
SIP2 server Evergreenu
Aktuální kód SIP2 serveru SIP se nachází v repozitáři Evergreen git
Instalace SIP serveru
Získání zdrojového kódu SIP2 serveru:
cd /opt git clone git://git.evergreen-ils.org/SIPServer.git SIPServer
Konfigurace serveru
1. Zadejte následující příkazy z příkazového řádku:
$ sudo su opensrf $ cd /openils/conf $ cp oils_sip.xml.example oils_sip.xml
2. Upravte soubor oils_sip.xml. Změňte komentovanou sekci <server-params> na následující:
<server-params min_spare_servers=‚1‘ max_spare_servers='2' min_servers=‚3‘ max_servers=‚25‘ />
3. max_servers bude přímo odpovídat počtu povolených SIP klientů. Nastavte počet odpovídajícím způsobem, ale mějte na paměti, že příliš mnoho připojení může vyčerpat paměť. Na serveru s 4 GB RAM/4 CPU (na kterém také může běžet Evergreen) se nedoporučuje překročit 100 připojení SIP klienta.
Nastavení kódování
SIPServer vyhledávání informace o kódování na následujících místech:
- Atribut kódování v prvku účtu pro aktuálně aktivní účet SIP.
- Prvek kódování, který je podřízeným prvkem prvku instituce aktuálně aktivního účtu SIP.
- Prvek kódování, který je podřízeným prvkem prvku implementation_config, který je sám podřízeným prvkem prvku instituce aktuálně aktivního účtu SIP.
- Pokud nic z výše uvedenéo není k dispozici, použije se výchozí kódování (ASCII).
Možnost 3 je starší možnost. Doporučujeme změnit konfiguraci tak, aby byl tento prvek přesunut z prvku implementation_config do nadřazeného prvku institution. V ideálním případě by SIPServer v konfiguraci implementace neměl hledat a mělo by být možné tuto kontrolu v budoucnu odstranit.
Datové typy
Nastavení msg64_hold_datatype je podobné nastavení msg64_summary_datatype, ale ovlivňuje rezervace namísto výpůjček. Pokud je nastaveno na čárový kód, budou informace o rezervacích pro požadavky na informace o čtenářích doručeny jako sada čárových kódů exemplářů namísto řetězců názvů titulů. Pomocí čárových kódů mohou SIP klienti SIP nejen získat řetězce názvů pro zobrazení (prostřednictvím požadavků na informace o jednotkách) a také následně vykonat požadavky na akce související s rezervacemi, jako je zrušení rezervace.
Přidání SIP uživatelů
1. Do příkazového řádku zadejte následující příkazy:
$ sudo su opensrf $ cd /openils/conf
2. V sekci <accounts> zadejte přihlašovací údaje klienta SIP. Ujistěte se, že všechny <logins> používají stejný atribut instituce a že instituce je uvedena v <institutions>. Všechny atributy v sekci <login> budou použity SIP klientem.
3. V Evergreenu vytvořte novou skupinu profilů s názvem SIP. Tato skupina by měla být podskupinou Users (Uživatelé), nikoliv Staff (Personál) nebo Patrons (Čtenáři). Nastavte editační oprávnění na group_application.user.sip_client a přidělte skupině následující oprávnění:
COPY_CHECKIN COPY_CHECKOUT
CREATE_PAYMENT RENEW_CIRC VIEW_CIRCULATIONS VIEW_COPY_CHECKOUT_HISTORY VIEW_PERMIT_CHECKOUT VIEW_USER VIEW_USER_FINES_SUMMARY VIEW_USER_TRANSACTIONS CANCEL_HOLDS
Alternativně můžete použít použijte SQL:
INSERT INTO permission.grp_tree (name,parent,description,application_perm)
VALUES ('SIP', 1, 'SIP2 Client Systems', 'group_application.user.sip_client');
INSERT INTO
permission.grp_perm_map (grp, perm, depth, grantable)
SELECT
g.id, p.id, 0, FALSE
FROM
permission.grp_tree g,
permission.perm_list p
WHERE
g.name = 'SIP' AND
p.code IN (
'COPY_CHECKIN',
'COPY_CHECKOUT',
'RENEW_CIRC',
'VIEW_CIRCULATIONS',
'VIEW_COPY_CHECKOUT_HISTORY',
'VIEW_PERMIT_CHECKOUT',
'VIEW_USER',
'VIEW_USER_FINES_SUMMARY',
'VIEW_USER_TRANSACTIONS',
'CANCEL_HOLDS'
);
Kontrola nastavení pomocí SQL:
SELECT *
FROM permission.grp_perm_map pgpm
INNER JOIN permission.perm_list ppl ON pgpm.perm = ppl.id
INNER JOIN permission.grp_tree pgt ON pgt.id = pgpm.grp
WHERE pgt.name = ‚SIP‘;
Pro každý účet vytvořený v sekci <login> souboru oils_sip.xml vytvořte uživatele (pomocí editoru uživatelů klienta staff) se stejným uživatelským jménem a heslem a zařaďte tohoto uživatele do skupiny SIP.
Datum vypršení platnosti ovlivní připojení uživatelů SIP, proto si jej raději někde poznamenejte.
Spuštění serveru
Chcete-li spustit server SIP, zadejte do příkazového řádku následující příkazy:
$ sudo su opensrf $ oils_ctl.sh -a [start|stop|restart]_sip
Chyba formátu data SIP serveru ve verzi 3.13
V současné době se v Evergreenu vyskytuje chyba formátu data, která může ovlivnit fungování rezervačního boxu. Při žádosti o informace o jednotce (žádost 17 v terminologii protokolu SIP), je vrácena odpověď 18, ta však obsahuje hodnotu pole CM (datum vyzvednutí) ve formátu RRRRMMDD, který neodpovídá standardu SIP2. 1).
Řešením této chyby je změna nastavení formátu data v souboru /usr/local/share/perl/5.36.0/OpenILS/SIP/Item.pm.
Původní kód v řádku 415:
return OpenILS::SIP→format_date($date) if $date;
změňte na:
return OpenILS::SIP->format_date($date, 'due') if $date;
Další informace o SIP serveru Evergreeenu
Oficiální anglická dokumentace k SIP serveru Evergreenu je k dispozici na adrese https://docs.evergreen-ils.org/docs/latest/admin/sip_server.html