Quick jump:  What's new

 
Go to:
 
Weblog: recent changes   
in KOHA
FFZG MARC frameworks
permalink
Fotokopirni strojevi

SafeQ integration
Integracija podataka o korisnicima iz sustava za kopiranje, Koha knjižničnog sustava i AAI sustava uz pomoć LDAP protokola

Podaci na korisničkim karticama
Opis procesa pripreme podataka na karticama za korištenje u 3M RFID sustavu i u sustavu za fotokopiranje

Printanje i programiranje kartica
Opis trenutne procedure printanja i programiranja kartica. Bilješke o razvoju nove procedure.

Iskaznice za kopiranje za grupu korisnika

Upute za otklanjanje problema

RFID čitači na kopirkama javljaju "Zabranjen pristup", i stroj nije pripremljen (tako nešto...)

Pobrisati jobove na kopirci

Ne radi printanje

Da bi radilo printanje sa studentskih računala, korisnik mora imati AAIedu korisnički račun (za logiranje u računala, oblika login@ffzg.hr) i mora imati isti login u Kohi pod OPAC login.

AAIedu login i zaporka se mogu provjeriti logiranjem na https://ldap.ffzg.hr/

permalink
Printanje i programiranje kartica


Printanje u Beču

Beč = batch (eng.) - u jednom cugu, za razliku od po potrebi

Napisati postojeću proceduru printanja kartica (pokretanje skripte)

Naručivanje praznih kartica

Paziti da zadnja strana bude bijela, jer i tako moramo printati dvostrano, pa nam to daje veću fleksibilnost.

Plan

  • čitač postaviti ispod printer-a tako da programirana kartica padne na čitač i isprogramira se (možda malo alu-folije ako čitač bude hvatao kartice iz spremnika)
  • Linux stroj sa podrškom za pritanje kartica i barkoda na njima koji podatke sprema nazad direktno u Kohu

Workflow

  • link sa intranet-a na lokalnu mašinu (linux stroj) gdje se pokreće pitanje na printer (možda lokalno spojen, možda mrežom)
  • kartica pada na čitač koji je programira i šalje podatak u kohu sa postom na neki ssl cgi (možda sa svojim certifikatima?)

CUPS driver



Tehnical test card:

Firmware 0821 f:200 E
X-Y-Smart Offsets 16 - 20 - 409
Printed lines 994 L / 636 W

PageSize[243.84 155.52]

Upstream CUPS support

Programming guide

Encode the three tracks

Ss                                    // Sequence Start
Pmc;h                                 // Set the coercivity to Hico
Dm;1;EVOLISPEBBLE                     // Download EVOLISPEBBLE on track 1
Dm;2;1234567890                       // Download 12345679890 on track 2
Dm;3;0987654321                       // Download 9876543210 on track 3
Se                                    // Sequence eject

Use the internal font and rotate them

Wcb ;k                                // Clear Monochrome Panel
Ss                                    // Sequence Start
Pwr ;0                                // Set the text orientation to 0
Wt ;100 ;300 ;0 ;10 ;Test rotations   // Write the Text "Test Rotation"
Wt ;500 ;250 ;0 ;50 ;0                // Write the text "0"
Pwr;90                                // Set the Text orientation to zero
Wt ;500 ;250 ;0 ;50 ;90               // Write the text "90"
Pwr;180                               // Set the Text orientation to 180
Wt ;500 ;250 ;0 ;50 ;180              // Write the text "180"
Pwr;270                               // Set the Text orientation to 270
Wt ;500 ;250 ;0 ;50 ;270              // // Write the text "270"
Se                                    // Sequence eject

Pr;ymcko                              // Parameter ribbon ymcko
Pc;a;=;10                             // Set the contrast to 10 for all panel
Pl;a;=;10                             // Set the luminosity to 10 for all panel
Ps;k;=;0                              // Set the Speed for black panel to 0
Ss                                    // Sequence start
Db;y;32;xxxxxxxxxxxxxxx               // Download the data for yellow pannel
Db;m;32;xxxxxxxxxxxxxx                // Download the data for magenta pannel
Db;c;32;xxxxxxxxxxxxxxx               // Download the data for cyan pannel
Db;o;32;xxxxxxxxxxxxxxx               // Download the data for overlay pannel
Se

Network administration

Escape sequence Syntax Arguments
Read the printer's IP address Rip  
Set the IP address or DHCP Rip;value IP address in xxx.yyy.ttt.uuu format or dhcp
Read Hostname Rehn  
Set Hostname Pehn;value Hostname (16 characters max.)
Read Subnet mask Renm  
Set Subnet mask Penm;value Subnet mask in xxx.yyy.ttt.uuu format
Read the gateway address Regw  
Set the gateway address Pegw;value Gateway address in xxx.yyy.ttt.uuu format
Read the WINS server address Rews  
Read the WINS server address Pews;value WINS server address in xxx.yyy.ttt.uuu format

Debian

apt-cache show evolisprinter

Package: evolisprinter
Status: install ok installed
Priority: extra
Section: checkinstall
Installed-Size: 160
Maintainer: root@klin
Architecture: i386
Version: 3.0-2
Provides: evolisprinter
Depends: cups
Description: New Pebble Card Printer CUPS driver

Compilation

apt-get install libcups2-dev libcupsimage2-dev
make
sudo checkinstall

dmesg

[88415.288187] usb 2-4.3: new full speed USB device using ehci_hcd and address 10
[88415.381054] usb 2-4.3: New USB device found, idVendor=058f, idProduct=9254
[88415.381058] usb 2-4.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[88415.381061] usb 2-4.3: Product: Generic USB Hub
[88415.381063] usb 2-4.3: Manufacturer: ALCOR
[88415.381149] usb 2-4.3: configuration #1 chosen from 1 choice
[88415.381333] hub 2-4.3:1.0: USB hub found
[88415.381555] hub 2-4.3:1.0: 4 ports detected
[88415.652178] usb 2-4.3.1: new full speed USB device using ehci_hcd and address 11
[88415.745545] usb 2-4.3.1: New USB device found, idVendor=0f49, idProduct=0400
[88415.745549] usb 2-4.3.1: New USB device strings: Mfr=4, Product=18, SerialNumber=0
[88415.745552] usb 2-4.3.1: Product: Evolis Dualys
[88415.745554] usb 2-4.3.1: Manufacturer: EVOLIS
[88415.745639] usb 2-4.3.1: configuration #1 chosen from 1 choice
[88415.747080] usblp0: USB Bidirectional printer dev 11 if 0 alt 0 proto 2 vid 0x0F49 pid 0x0400

[90082.139083] rastertoevolis[8692]: segfault at 0 ip b7ddf657 sp bfd60bc8 error 6 in libc-2.9.so[b7d67000+158000]
[90122.522505] usb 2-4.3.1: USB disconnect, address 11
[90122.522690] usblp0: removed
[90133.216207] usb 2-4.3.1: new full speed USB device using ehci_hcd and address 13
[90133.309579] usb 2-4.3.1: New USB device found, idVendor=0f49, idProduct=0400
[90133.309582] usb 2-4.3.1: New USB device strings: Mfr=4, Product=18, SerialNumber=0
[90133.309585] usb 2-4.3.1: Product: Evolis Dualys
[90133.309587] usb 2-4.3.1: Manufacturer: EVOLIS
[90133.309676] usb 2-4.3.1: configuration #1 chosen from 1 choice
[90133.311236] usblp0: USB Bidirectional printer dev 13 if 0 alt 0 proto 2 vid 0x0F49 pid 0x0400
[94350.140355] gs[27363]: segfault at 197 ip b79fb9a6 sp bf9bf070 error 6 in libgs.so.8.70[b790d000+3fc000]
[94393.919251] gs[27502]: segfault at 197 ip b79be9a6 sp bfefe230 error 6 in libgs.so.8.70[b78d0000+3fc000]
[94459.139970] gs[27726]: segfault at 197 ip b78459a6 sp bfdbcb90 error 6 in libgs.so.8.70[b7757000+3fc000]

lsusb

Bus 002 Device 013: ID 0f49:0400  
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x0f49 
  idProduct          0x0400 
  bcdDevice            6.02
  iManufacturer           4 EVOLIS
  iProduct               18 Evolis Dualys
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           32
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration         52 Standard Configuration
    bmAttributes         0x40
      (Missing must-be-set bit!)
      Self Powered
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         7 Printer
      bInterfaceSubClass      1 Printer
      bInterfaceProtocol      2 Bidirectional
      iInterface             98 Printer Interface
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
Device Status:     0x0001
  Self Powered

CUPS

printer options

dpavlin@klin:~$ lpoptions -p EVOLIS_Dualys -l
ColorModel/Output Mode: *RGB
PageSize/Media Size: *Card
Collate/Collate: *True False
MediaType/Media Type: *Blank
InkType/Ink Type: YMCKO YMCKOS YMCKOK KO *Black Blue Gold Green Red Silver White Scratch BlackWax Hologram
Duplex/Two-sided Printing: None *DuplexNoTumble
Brightness/Luminosity: 0 1 2 3 4 5 6 7 8 9 *10 11 12 13 14 15 16 17 18 19 20
Contrast/Contrast: 0 1 2 3 4 5 6 7 8 9 *10 11 12 13 14 15 16 17 18 19 20
BlackIn/Black Panel : *N Y
TreatementK/Effect: *G L
SensibilityK/Intensity black panel: 0 1 2 3 4 5 6 7 8 9 *10 11 12 13 14 15 16 17 18 19 20
OverlayPannel/Define : *FO SCI SCA MS NO
SensibilityO/Intensity overlay panel: 0 1 2 3 4 5 6 7 8 9 *10 11 12 13 14 15 16 17 18 19 20
BrightnessV/Luminosity: 0 1 2 3 4 5 6 7 8 9 *10 11 12 13 14 15 16 17 18 19 20
ContrastV/Contrast: 0 1 2 3 4 5 6 7 8 9 *10 11 12 13 14 15 16 17 18 19 20
BlackInV/Black Back Panel : *N Y
TreatementKV/Effect: *G L
SensibilityKV/Intensity black panel: 0 1 2 3 4 5 6 7 8 9 *10 11 12 13 14 15 16 17 18 19 20
OverlayBackPannel/Define : FO SCI SCA MS NO
SensibilityOV/Intensity Overlay Back Panel: 0 1 2 3 4 5 6 7 8 9 *10 11 12 13 14 15 16 17 18 19 20
EjectCard/Specific Action : *None iSmart iCtless Eject Reject Test TestTech Clean
Coercivity/Coercivity: *None Hico Loco JIS
Track1/Track1 : *1 2 3 4 5 8 6 7
Track2/Track2 : 1 *2 3 4 5 8 6 7
Track3/Track3 : 1 2 *3 4 5 8 6 7

duplex printing

dpavlin@klin:~$ lpoptions -p EVOLIS_Dualys -l | grep Duplex
Duplex/Two-sided Printing: None *DuplexNoTumble

dpavlin@klin:~/klin/evolis-dualys-3$ lpr  -Pdualys3 -o Duplex=DuplexNoTumble out/200900000042.print-duplex.pdf 

cups raster

sudo apt-get install libfltk1.1-dev libcups2-dev libcupsimage2-dev


gs cups rasterizator

/usr/bin/gs -dQUIET -dPARANOIDSAFER -dNOPAUSE -dBATCH -sDEVICE=cups -sstdout=%stderr -sOutputFile=%stdout -I/usr/share/cups/fonts -sMediaColor=k -sMediaType=Card -r300x300 -dDEVICEWIDTHPOINTS=243 -dDEVICEHEIGHTPOINTS=155 -dcupsBitsPerColor=8 -dcupsColorOrder=0 -dcupsColorSpace=1 -scupsPageSizeName=Card -c -f -

evolis rasterizator

/usr/lib/cups/filter/rastertoevolis 42 dpavlin foobar 0 Duplex=DuplexNoTumble duplex.ras > foo.evolis

permalink
Kronologija implementacije

Kronologija događanja relevantnih za implementaciju softvera u Knjižnici Filozofskog fakulteta

kraj 2005.

U NSK osnovan Centralni tim za provođenje projekta implementacije programskog paketa Voyager u knjižnice u sustavu znanosti i visokog obrazovanja.

Knjižnice FF-a odgovaraju na Upinik o implementaciji, potreban NSK u svrhu planiranja čitavog sustava.

24. studenoga 2005. godine potpisan je Stalni ugovor o računalnom programu između Endeavor Information Systems Inc. i Nacionalne i sveučilišne knjižnice u Zagrebu koji predsttavlja glavni ugovor u odnosu na sve ostale akademske i istraživačke institucije u Republici Hrvatskoj.

2006.

Započinje implementaicija Voyager-a u NSK. Otvorene su demo baze za sva ostala sveučilišta i održani orijentacioni treninzi.

Krajem 2006. dovršeni građevinski radovi nove Knjižnice Filozofskog fakulteta. Čeka se II. faza kredita kako bi se moglo započeti s unuranjim uređenjem i opremanjem.

Više od 20. dislociranih knjižnica FF-a nema softver zadovoljavajućih karakteristika. Postoji samo primitivna softverska podrška pri obradi građe i samostalno razvijen online katalog za pretraživanje fonda zadovoljavajućih osobina.

Filozofski fakultet imenuje koordinatora za implemeteciju Voyager-a u svojoj ustanovi.

početak 2007.

NSK počinje s produkcijskim radom u Voyager softveru.

Filozofski fakultet aktivno se uključije u projekt implementacije Voyager-a.

Bez softverskog rješenja koje će podržati sve najfrekventnije poslovne procese u novoj Knjižnici nije moguće pustiti u pogon novu Knjižnicu. Trebalo je automatizirati minimalno obradu u posudbu (žalosna je činjenica da su u tom trenutku Knjižnice FF-a bilježile podatke o posudbi ručno!)
Trebalo je pripremiti građu za smještaj na police u novim čitaonicama, osmisliti novi sustav za smještaj građe, svakom primjerku knjge pridijeliti odgovarajuću oznaku i zapisati to u računalnu bazu.

sredina 2007.

Započinje se sa samostalnim razvojem softvera (WebPAC2) za uređivanje i konverziju podataka kako bi se proces implementacije novoga softvera maksimalno ubrzao.

Knjižnice FF-a imale su u tome trenutku više od 300.000 zapisa o knjigama i drugoj građi, razlomljenih u više od 20 odvojenih baza u softveru CDS/ISIS. Koristile su softver različit od softvera kojeg je koristila NSK i zato je konverzija tih podataka uključivala drugačiju, prilagođenu proceduru. Velik broj knjižnica unutar Sveučilišta u Zagrebu koristi također CDS/ISIS. Softver za konverziju je objavljen pod slobodnom licencom i postojala je nada da će se iskoristiti i za druge knjižnice.

početak 2008.

Nastavljaju se radovi na unutrarnjem uređenju i opremanju zgrade nove Knjižnice. Raspisuje se natječaj za RFID opremu i u dokumentaciji toga natječaja treba navesti koji softver se koristi za knjižnično posovanje (sustavi moraju znati komunicirati).

U užoj i široj okolini nacionalnoga projekta za nabavu knjižničnoga softvera desile su se promjene zbog kojih su se aktivnosti usporile (http://www.nsk.hr/Info.aspx?id=642).

Knjižnice FF-a morale su krenuti u potragu za alternativnim rješenjem, a potraga je bila vođena s dva cilja na umu: rješenje mora biti cjelovito i softver mora omogućiti razmjenu podatake s drugim knjižnicama. Također, rješenje nije smjelo biti skupo jer se samostalna nabava softvera nije planirala.

ožujak 2008.

Odabrana je Koha, slobodno dostupan softver. Započela je intenzivna edukacija o administraciji sustava i pripremanje sustava za prihvat konvertiranih podataka (migracija) i ostala potrebna podešavanja.

srpanj 2008.

Odabran dobavljač RFID opreme. Započinje rad na implementaciji RFID sustava i integraciji s knjižničnim sustavom.

lipanj 2008.

Dovršena migracija podataka u Kohu. Započela obrada građe za čitaonice u otvorenom prisutpu - pridjeljivanje novih oznaka za smještaj građe i fizička obrada primjeraka.

ožujak 2009.

Knjižnica je svečano otvorena 11. ožujka 2009., a 16. ožujka krenuo je automatizirani upis korisnika i posudba. Podaci o korisnicima preuzimaju se iz fakultetskih sustava.

Na policama je čekalo preko 110.000 primjeraka knjiga opremljenih RFID oznakama i novim naljepnicama s oznakom smještaja, spremnih za korištenje i posudbu. Uskoro su stavljeni u pogon i uređaji za samoposudbu knjiga integrirani s Kohom.

lipanj 2009.

U tri mjeseca obrađeno je dodatnih oko 16.000 knjiga za čitaonice u otvorenom pristupu (oko 250 jedinica dnevno). U posudbi je učinjeno oko 30.000 transakcija (oko 500 jedinica dnevno). Nastavlja se s implementacijom ostatka knjižničnog poslovanja (nabava, obrada periodike, međuknjižnična posudba).

Bilo kakva brzopleta zamjena softvera nekim drugim u ovome trenutku ozbiljno bi narušila funkcioniranje informacijskog sustava u Knjižnici FF-a. Zbog kompleksnosti cijeloga postupka knjižnice općenito nemaju tendenciju migirati na drugi softver u ciklusima manjim od 5 godina.

permalink
Redizajn web stranica

stranica je preseljena na drugi wiki

permalink
RFID sustav

UPUTE ZA ČIPIRANJE



Aplikacije

(dogovoriti s dobavljačem)

označavanje građe RFID oznakama

radni proces:

  • pronaći primjerak u bazi, postaviti se na sučelje za editiranje primjerka
  • nalijepiti naljepnicu na odgovarajuće mjesto na knjizi
  • položiti knjigu na "ploču"
  • provjeriti podatak o novoj signaturi
  • kliknuti na polje barkod i izgenerirati barkod (alternativa: barkodi su unaprijed generirani)
  • pritiskom na tipku (koju?) podatak iz polja barkod upisuje se na čip
  • sustav mora signalizirati da je proces pisanja po čipu uspješno završen

Unos podataka odvija se preko Koha sučelja za unos podataka.
Može li i treba li zaštiti pisanje/čitanje čipa lozinkom?

Potrebno je nekako evidentirati da je knjiga prošla obradu.

Na sučelje za unos podataka treba dodati indikator o poziciji naljepnice.

(ovdje treba opisati šta brojač točno radi)

podaci na RFID oznaci

Konačni dogovor je da se naljepnice isporučuju prazne (bez podataka u čipu i bez isprinta na naljepnici).

Na RFID oznaku zapisuje se barkod. Barkod je serijski broj koji se sastoji od prefixa 130 i 7 znamenaka (ukupno 10 znamenaka). Brojevi se generiraju unutar knjižničnog softvera.

raspraviti:

čip se "zaključava" nakon što se podaci zakodiraju na njega - nemoguće ga je preprogramirati

prednost: isključuje se rizik da netko izvana izbriše, zamijeni podatak u čipu i time učini zbrku među inventarom ili ukrade knjige
nedostatak: isključuje mogućnost bilo kakvog pokušaja da se smanji rizik od povrede privatnosti

način na koji se može smanjiti rizik od povrede privatnih podataka:

svaki put kad se knjiga zaduzi, na nju se upisuje upravo izgenerirani slučajni broj. veza između tog broja i identifikatora primjerka čuva se u posebnoj tablici, dostupnoj samo knjižničnom sustavu. u trenutku povratka knjige, broj se briše i na čip se kodira stara oznaka.

printanje signatura

radni proces:

  • knjiga se postavi na ploču
    • pritisne se programska tipka (mora li to)?-
  • naljepnica izađe na printer

Na naljepnice treba isprintati:

  • signaturu
  • barkod
  • naziv ustanove

format naljepnica: 105x40
preko naljepnice ide zaštitna folija

inventura

  • snimanje stanja na policama uz pomoć ručnog čitača i dobivanje željenih izvještaja
    • koji izvještaji nam trebaju?
  • očitavanje podataka o čipovima i promjene u bazi
    • pročitati podatke s čipa za neki set knjiga
    • prekontrolirati i urediti te podatke prije daljneg procesiranja
    • učiniti promjene u bazi na tom setu podataka (pr. pročitati podatke na knjigama s police na 1. katu i u bazi označiti da su knjige na 1. katu)
  • u kom formatu su podaci koje pročita čitač? u kom obliku se mogu exportati?

evidencija prolazaka kroz vrata

zapisati statistiku prolazaka kroz vrata (u posebnu tablicu)

u tablicu treba zapisati:
datum i vrijeme
oznaku vrata
oznaku knjige

Ovo nije implementirano jer isporučena vrata ne znaju čitati identifikacijske podatke s čipa, samo binarni podatk o sigurnosti (otključano, zaključano). To je puno bolje s aspekta čuvanja privatnosti.

iskaznice

  • isporučiti bazu
  • nakon što stigne roba, istestirati iskaznice
  • probne imamo samo prazne

ostalo

  • tražiti protocol specification za komunikaciju s readerom (moded 810)

Bilješke

Za pročitati

Use of RFID Technology in Libraries: a New Approach to Circulation, Tracking, Inventorying, and Security of Library Materials
http://www.webpages.uidaho.edu/~mbolin/shahid.htm

Integracija ILS i RFID sustava

  • vrsta i format podataka koji će biti zapisani na čipove i kartice, imajući na umu cilj objedinjenoga sustava za knjižnično poslovanje na razini Sveučilišta
  • integracija na radnom mjestu

Sigurnost

  • opseg evidencije knjiga i korisnika na izlazu iz knjižnice
  • opseg evidencije o posudbi knjiga
  • pravila za sigurnost podataka u radu RFID i ILS sustava, popis 'uloga' u radu knjižničnoga sustava, pripadnost knjižničara i pomoćnoga osoblja pojedinim ulogama, ovlaštenja uloga za pojedine operacije u sustavu za knjižnično poslovanje, ovlaštenja uloga za uvid u podatke i izmjene podataka, rokova u kojima se zapisi mogu vidjeti odnosno nakon kojih se moraju brisati i sl.

Sigurnost podataka u sustavu knjižničnog poslovanja i RFID sustavu snažno ovisi o mogućnosti nadzora dohvata i upotrebe tih podataka. Prvi uvjet za to je mogućnost pristupa podacima samo autenticiranih korisnika, a drugi da autenticirani korisnici mogu doći do podataka u određenim operacijama samo ako su autorizirani za izvođenje tih operacija.

Podaci

U svakom čipu će biti trajno zapisan niz znamenki koji predstavlja jedinstveni identifikator svakog sveska koji je raspoloživ za posudbu.

U procesu posudbe na čip se zapisuje status „zaduženo“ a kod razduživanja status „nije zaduženo“. Izlazna vrata očitavaju ovaj podatak s čipa knjige koju korisnik iznosi kroz vrata i aktivira alarm ako knjiga ima u čipu zapisan status „nije zaduženo“.

Ako je uspostavljena veza sa sustavom za knjižnično poslovanje, izlazna vrata doznaju naslov knjige koja nije zadužena kako bi se lakše moglo pronaći problematičnu knjigu kad se na izlazu nađe nekoliko korisnika, svaki s po nekoliko knjiga. Alternativno, izlazna vrata drže popis svih naslova u knjižnici (i periodički ga osvježavaju) pa mogu znati naslov knjige i kad ne radi veza sa sustavom za knjižnično poslovanje.
(Ovo nije implementirano - to je argumentacija zašto ta mogućnost može biti korisna, ali pitanje je koliko je to zapravo korisno. Isporučena vrata, na sreću, mogu znati samo da li je knjiga uredno zadužena ili nije.)

workflow

  • naljepi naljepnicu s identifikacijskom oznakom na knjigu
  • upiši neki podatak o knjizi (nor. inventarni broj) u polje za pretraživanje
  • ako je rezultat samo jedan, otvara se editor s ovim poljima: * polje za unos identifikacijske oznake (preko barkod ili RFID čitača) * prikaz podataka koji omogućuju i olakšavaju identifikaciju građe: * identifikacijski brojevi iz koha.items (biblionumber, itemnumber, biblioitemnumber - odrediti koji su potrebni?) * inventarni broj * naslov
  • ako je rezultata više, ispisuje se lista s koje treba odabrati odgovarajući primjerak, odabire se odgovarajući, pa se onda otvara editor
  • da li se podaci upisuju direktno u bazu ili u posebnu? ako se pišu u posebnu imamo problem sinkronizacije.
  • da li možda dozvoliti mogućnost editiranja još nekih polja. zašto? ako da, kojih polja?

Protokoli za komunikaciju

NCIP, SIP2. SLNP, Z39.50

Koha razvija podršku za NCIP.

Samoposudba

  • u projektu nisu predviđene stanice za vraćanje knjiga u preriodu kad je knjižnica zatvorena. ta usluga je poželjna
  • stanice za self-check out moguće je napraviti preko podrške za self-checkout u ILS-u

Pitanja

  • koje podatke sadrži identifikacijska oznaka?
  • da li se RFID može ponovo kodirati - pr. sad upišemo samo neki automatski generirani redni broj, a kasnije se predomislimo i hoćemo još neke druge podatke?
  • izašla vijest u novinama/netu: mozda se tiče jedinstvenog broja korisnika: http://www.net.hr/vijesti/hrvatska/page/2008/03/14/0852006.html - pogotovo za sustav (voyager...)
  • Iva: što je s iskaznicama korisnika? hoće li one imati isti sustav identifikacije - barkode/rfid i kako/kad/tko će ih izrađivati?
  • preporuka za problem privatnosti
  • pojašnjenje "security" opcije u 3M softveru
  • da li tvornički broj na čipu ostaje zauvijek zapisan
  • što će osigurati da se naš čip zvoni na
  • na koji način zapisati
permalink
Greške u podacima

24.10.2010.

corrupted:
248612
249478
250682
251126
251127
251128
253059
253170
253916

22.09.2010.

corrupted:
253170
253059
251128
251127
251126
250682

(i još 2)

permalink
podaci o primjercima 952

Itemlost status

2010-10-24

mysql> update items set itemlost = 2 where ccode='KOM' and location <> 'IZC' and itype <> 'PER' and itemlost = 1 ;
Query OK, 859 rows affected (1.88 sec)
Rows matched: 859  Changed: 859  Warnings: 0

mysql> update items set itemlost = 1 where ccode='KOM' and location = 'ZSPO' and itype <> 'PER' and itemcallnumber is null and itemlost = 0 ;
Query OK, 677 rows affected (1.92 sec)
Rows matched: 677  Changed: 677  Warnings: 0


Inventarni broj - public note (items.itemnotes)

Koha dolazi s poljem 952z mapiranim u items.itemnotes. Sadržaj tog polja pokazuje se u tablici s primjercima u koloni "Notes".
U FFZG se pod "Notes" u OPAC-u prikazuje stari inventarni broj koji je zapisan u polje 952i koje je mapirano u items.itemnotes.
Polje 952i ne postoji u default Koha MARC frameworku.

Public note je tako potrošen za inventarni broj i nema mogućnosti unošenja stvarne javne napomene za primjerak.

Inicijalna implementacija učinjena je na ovaj način, što je kasnije promijenjeno.

Inventarni broj - copynumber

U veljači 2010. (?) inventarni broj je preseljen u copynumber

Javna napomena (items.itemnotes) može se sada upotrebljavati u svojem originalnom značenju.

Postoji sada novo polje u Koha items tablici (dodali BibLibre) - stocknumber. To polje bi se zapravo trebalo koristiti za inventarni broj - nije mapirano u MARC21 polje, a trebalo bi biti.

Konverzija i migracija podataka iz CDS/ISIS-a

Konvertirana polja

MARC naziv polja autorizirana vrijednost Koha baza značenje
952$8 Zbirka CCODE items.ccode oznaka zbirke
952$a home branch branches items.homebranch FFZG
952$b holding branch branches items.holdingbranch FFZG
952$c Lokacija LOC items.location kat i stručna skupina (taj podatak je kodiran u signaturi)
952$o Signatura   items.itemcallnumber signatura na primjerku
952$p barcode   items.barcode barkod, tj. broj u čipu
952$i Inventarni broj   items.itemnotes stari inventarni broj s prefiksom zbirke - kasnije preseljeno u copynumber = 952$t

Migracija

U migraciji Koha čita podatke o primjercima iz polja 952. Moguće je te podatke staviti i u neko drugo polje, no u tom slučaju treba napraviti odgovarajuće linkove u MARC framework.

Samo 1 MARC tag može biti mapiran u iteme (postoji framefork test).

    * https://koha-dev.rot13.org:8443/cgi-bin/koha/admin/marc_subfields_structure.pl?tagfield=952&frameworkcode=
    * https://koha-dev.rot13.org:8443/cgi-bin/koha/admin/marc_subfields_structure.pl?op=add_form&tagfield=952&frameworkcode=

Prilikom Konverzija podataka, podaci o primjercima generirani na temelju inventarnog broja iz ponovljivog polja 991 u CDS/ISIS bazi. Polje 991 je zadržano u konvertiranim bibliografskim zapisima, ali se više ne održava (ne brišu se oni koji su izbrisani u Kohi niti se nadopisuju novi). Inventarnom broju dodan je prefix - kratica sare knjižnice (sada zbirke).

permalink
Koha performance

Ova stranica dokumentira naša podešavanja (i pokušaje) za što bržom Koha instalacijom.



Apache deflate kompresija

Smanjuje veličinu stranice koja se isporučije browersu.

  • apache2

    deflate-test.sh

    apache2/deflate-test.sh
    #!/bin/sh
    
    if [ -z "$1" ] ; then
    	echo "Usage: $0 http://www.example.com/"
    	exit 1
    else
    	url=$1
    fi
    
    time wget $url -O /tmp/foo
    echo
    time wget --header="Accept-Encoding: gzip" $url -O /tmp/foo.gz
    echo
    
    orig_size=`ls -al /tmp/foo    | awk '{ print $5 }'`
    comp_size=`ls -al /tmp/foo.gz | awk '{ print $5 }'`
    
    if [ $comp_size -lt $orig_size ] ; then
    	echo "OK $comp_size < $orig_size";
    else
    	echo "ERROR: no visible compression benefits"
    fi
    
    #ls -al /tmp/foo /tmp/foo.gz

    deflate.conf

    apache2/deflate.conf
    # /etc/apache2/conf.d/deflate.conf
    
    <IfModule mod_deflate.c>
    	AddOutputFilterByType DEFLATE text/html text/plain text/xml
    
    	SetOutputFilter DEFLATE
    	SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ 			no-gzip dont-vary
    	SetEnvIfNoCase Request_URI \.(?:exe|t?gz|zip|bz2|sit|rar)$	no-gzip dont-vary
    	SetEnvIfNoCase Request_URI \.pdf$							no-gzip dont-vary
    
    	BrowserMatch ^Mozilla/4 gzip-only-text/html
    	BrowserMatch ^Mozilla/4\.0[678] no-gzip
    	BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
    
    	DeflateFilterNote Input input_info
    	DeflateFilterNote Output output_info
    	DeflateFilterNote Ratio ratio_info
    	LogFormat '"%r" %{output_info}n/%{input_info}n (%{ratio_info}n%%)' deflate
    	CustomLog /var/log/apache2/deflate.log deflate
    </IfModule>

    server-status.conf

    apache2/server-status.conf
    <IfModule mod_status.c>
    
    # munin needs ExtededStatus
    ExtendedStatus On
    
    <Location /server-status>
    	SetHandler server-status
    	Order deny,allow
    	Deny from all
    #	Allow from all
    	Allow from 127.0.0.1
    	Allow from .ffzg.hr
    </Location>
    
    </IfModule>



Session

dpavlin@koha:~$ sudo ./mk-query-digest /var/log/mysql/mysql-slow.log

# Profile
# Rank Query ID           Response time    Calls R/Call   Item
# ==== ================== ================ ===== ======== ================
#    1 0xC7A803CDD4FE9A36 30517.0000 45.5%   349  87.4413 INSERT UPDATE sessions
#    2 0xB4F2B316DFE865C8  8027.0000 12.0%   119  67.4538 SELECT sessions
#    3 0x6019E0D94A244FF5  3952.0000  5.9%   275  14.3709 SELECT opac_news
#    4 0x1F809CA9753CDEE7  2753.0000  4.1%    23 119.6957 SELECT biblio
#    5 0x27CE7D5D2BC5F598  2305.0000  3.4%   206  11.1893 SELECT fieldmapping
#    6 0xB0F504DD073A49CB  2192.0000  3.3%    30  73.0667 SELECT issues items biblio biblioitems
#    7 0x8ED635CB153D27A5  2146.0000  3.2% 19313   0.1111 SELECT reserves reserveconstraints
#    8 0xDB6DC1962741AB10  1978.0000  3.0%     7 282.5714 SELECT biblio biblioitems itemtypes
#    9 0x32783383AEA5AD49  1642.0000  2.4%    10 164.2000 SELECT items
#   10 0x6DD9F09DA2455228  1361.0000  2.0%     8 170.1250 DELETE sessions

Promjeniti SessionStorage u "as temporary files" i opcionalno pomaknuti ih u /dev/shm umjesti o u /tmp/:

dpavlin@koha:~$ diff -urw /srv/koha/C4/Auth.pm /usr/share/koha/lib/C4/Auth.pm
--- /srv/koha/C4/Auth.pm        2010-02-20 21:41:34.000000000 +0100
+++ /usr/share/koha/lib/C4/Auth.pm      2010-04-26 16:03:17.671211497 +0200
@@ -1341,7 +1341,7 @@
     }
     else {
         # catch all defaults to tmp should work on all systems
-        $session = new CGI::Session("driver:File;serializer:yaml;id:md5", $sessionID, {Directory=>'/tmp'});
+        $session = new CGI::Session("driver:File;serializer:yaml;id:md5", $sessionID, {Directory=>

Profile

Devel::NYTProf

instalacija:

root@koha-dev-git-reorg:~# cpan Devel::NYTProf

profile search query:

root@koha-dev-git-reorg:/usr/share/koha/opac/cgi-bin/opac# time perl -d:NYTProf -I/usr/share/koha/lib/ opac-search.pl q=human | wc
   1553    3259   58648

real    0m4.001s
user    0m3.152s
sys     0m0.560s

generate html report:

root@koha-dev-git-reorg:/usr/share/koha/opac/cgi-bin/opac# nytprofhtml 
Generating report...
Reading nytprof.out
Writing report to nytprof directory

koha-240

First run

dpavlin@koha-240:/tmp$ time perl -d:NYTProf -I/usr/share/koha/lib/ /usr/share/koha/opac/cgi-bin/opac/opac-search.pl q=human | wc
Use of uninitialized value $borrowernumber in string eq at /usr/share/koha/opac/cgi-bin/opac/opac-search.pl line 483.
Use of uninitialized value in string eq at /usr/share/koha/opac/cgi-bin/opac/opac-search.pl line 486.
   1962    3177   64512

real    0m8.561s
user    0m5.708s
sys     0m0.724s

Second run

dpavlin@koha-240:/tmp$ time perl -d:NYTProf -I/usr/share/koha/lib/ /usr/share/koha/opac/cgi-bin/opac/opac-search.pl q=human | wc
Use of uninitialized value $borrowernumber in string eq at /usr/share/koha/opac/cgi-bin/opac/opac-search.pl line 483.
Use of uninitialized value in string eq at /usr/share/koha/opac/cgi-bin/opac/opac-search.pl line 486.
   1962    3177   64512

real    0m6.664s
user    0m5.636s
sys     0m0.816s

Drop caches and run profile:

dpavlin@koha-240:/tmp$ sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'

Zebra reindex

dpavlin@koha-240:/srv/koha$ sudo -u koha ./misc/migration_tools/rebuild_zebra.pl -b -v -r -d /tmp/indexing -k -x -nosanitize

permalink
Signature za zatvoreno spremište
permalink
Weblog Navigation
Loading...
Weblog Archives
  • Loading...