Closed piiaseme closed 6 months ago
Katsotaan, onko tilanne edelleen sama salasanan vanhenemisaika-ominaisuuden mukaantultua.
Tein muutoksen nexteille, jossa tilin ollessa lukkiutunut, viestikentässä näkyy teksti "Account expired". Muuten logiikka ei ole muuttunut ja välitetään N edelleen CQ-kentässä vaikka pin olisikin syötetty oikein. Voiko tätä käyttää ratkaisuna?
Korjaan, "Account locked".
Tein muutoksen nexteille, jossa tilin ollessa lukkiutunut, viestikentässä näkyy teksti "Account expired". Muuten logiikka ei ole muuttunut ja välitetään N edelleen CQ-kentässä vaikka pin olisikin syötetty oikein. Voiko tätä käyttää ratkaisuna?
AF-kentästä ei tässä ole apua, koska perusongelmana on edelleen tuo CQ=N, eli asiakkaalle näkyy joka tapauksessa vain viesti että PIN-koodi on väärä. Toki AF-kentästä näkee sitten jälkeenpäin ongelmaa selvitellessä, mistä on kyse, mutta se kyllä selviää jo Kohasta asiakastiedoistakin, jos tili on lukittu. Ongelmana on juurikin se että automaatti käyttäytyy ikään kuin PIN-koodi olisi väärä, mikä saa asiakkaan vain takomaan sitä uudestaan.
Lähtökohtaisesti kaikki AF-kentän viestit on piilotettu asiakkailta, koska ne ovat englanninkielisiä eivätkä kerro sinänsä asiakkaalle paljonkaan. Toiminnallisuutta niiden kääntämiseen tai reagoimiseen niiden perusteella ei automaattisoftissa ole, koska AF-kenttä on vapaamuotoinen ja siellä voi tulla periaatteessa mitä tahansa, ihan kirjastojärjestelmästä riippuen.
Jos ACCOUNT LOCKED toimisi samalla tavalla kuin PATRON EXPIRED, eli AF-kentän tekstin lisäksi tulisi myös ne lainaus-, varaus- jne. kiellot), sillä voisi ilmoittaa asiakkaalle yleisviestin, että "Kortillasi ei voi lainata. Kysy neuvoa kirjaston työntekijältä" jne.
Pitää itse asiassa miettiä vielä, miten tämä omatoimissa menee - joudun tarkistamaan vähän yksityiskohtia huomenna ja tuoreemmilla aivoilla.
Vanhentuneella kortilla (PATRON EXPIRED) meillä on päätetty että pitää päästä omatoimeen, mutta lukitusta kortista ei ole ehkä erikseen puhuttu. Voisin olettaa että sillä ei haluta päästää, mutta palataan tähän asap, meillä katsotaan tätä vielä laajemmalla (ylemmällä x) porukalla.
Sain tehtyä muutoksen, jolla paluuviesti reagoi tilin lukkiutuneena ollessa samoin kuin expired-tapauksessa:
<response>64YYYY 00020240320 155728000100000001000000000002AOJOE_JOE|AA66666666|AELari
Strand|BLY|CQN|BV0|CC14.99|AU167N11434925|BD- Joensuu 80100|BF0503292976|PB20000202|PCHENKILO|PIN|AFGreetings from Koha. ACCOUNT LOCKED -- Invalid password|PA1|</response>
En edelleenkään ymmärrä, missä tuo tieto virheellisestä pinistä lisätään virheellisesti. Pystyisikö tätä paluuviestiä käsittelemään automaatilla "oikein" vai tulkitseeko automaatti tällaisesta viestistä edelleen, että pin-koodi oli vain väärin?
Tuosta ei taas käytännön riemua ole, koska PIN-koodi = CQ = N eli edelleen se ilmoittaa PIN-koodin vääräksi, ja vielä tuolla AF-kentässäkin.
Oulussa mietitään nyt mitä tämä tarkoittaa muutenkin omatoimen kannalta, koska vanhentuneella kortilla meillä on pitänyt päästä sisään (muttei lainaamaan), ja tuo 64YYYY tekee juuri sen - lainaus-, uusinta-, recall (ei käytössä Suomessa)- ja varauskiellot mutta sinänsä pääsee muuten sisään. Tämä siis ok.
Mutta jos lukittuneella kortilla ei haluta päästää sisään (kuten todennäköisesti on), niin SIP2:ssa ei ole oikein keinoja erotella näitä eli vanhentunutta ja lukittunutta "tiliä", koska omatoimea varten ei ole SIP2-viestintää. Pitäisi joko mennä asiakaslajilla tai PA-kentällä, joka on nyt käytössä vain määräaikaiseen, kirjastokohtaiseen käyttörajoitukseen. CQN toki sen pääsyn estää, mutta väärällä tavalla.
Sain tehtyä muutoksen, jolla paluuviesti reagoi tilin lukkiutuneena ollessa samoin kuin expired-tapauksessa:
<response>64YYYY 00020240320 155728000100000001000000000002AOJOE_JOE|AA66666666|AELari Strand|BLY|CQN|BV0|CC14.99|AU167N11434925|BD- Joensuu 80100|BF0503292976|PB20000202|PCHENKILO|PIN|AFGreetings from Koha. ACCOUNT LOCKED -- Invalid password|PA1|</response>
En edelleenkään ymmärrä, missä tuo tieto virheellisestä pinistä lisätään virheellisesti. Pystyisikö tätä paluuviestiä käsittelemään automaatilla "oikein" vai tulkitseeko automaatti tällaisesta viestistä edelleen, että pin-koodi oli vain väärin?
Eli summa summarum: viedään tämä muutos eteenpäin. Lisätieto tuolla AF-kentässä auttaa edes jälkikäteen selvittämisessä. CQN on nyt ainoa tapa estää lukittuneella kortilla sisään pääsy, joten sen nyt on vain pakko antaa mennä näin. Ohjeistetaan meillä henkilökuntaa asiasta.
Tämä on versiopäivityksenkin jälkeen kunnossa tuotannossa, joten tämän voi sulkea. Ehkä joskus tulee fiksumpia keinoja hoitaa tämä (custom SIP-kenttä esimerkiksi), mutta nyt pitää mennä tällä.
Suljen tiketin.
Kehitysehdotukseni
Siirretty tiketti Reminesta: https://tiketti.koha-suomi.fi/issues/5577#change-28276
Jos asiakas antaa PIN-koodinsa liian monta kertaa väärin, asiakastili menee lukkoon Kohassa. Tämä ei kuitenkaan välity automaateille, vaan automaatille päin asia ilmoitetaan aina vääränä PIN-koodina, mikä on virheellistä viestintää:
64 00020220818 093542000000010001000100000001AOOUPK|AA564A|AE|BLY|CQN|CC11.99|BD|BE|PB|PC|PIY|AFGreetings from Koha. -- Invalid password|PA1|AY8AZB584
CQ-kenttä = valid patron password = N. Näin asiakkaalle ilmoitetaan väärää tietoa. Tunnushan voi olla lukittu jo aikaisemmin, ja vaikka PIN-koodi olisi oikein, asiakkaalle kuitenkin tulee tieto että se olisi väärin. Tämä saa asiakkaat vain yrittämään kirjautumista yhä uudelleen, jolloin tilanne turhauttaa kaikkia osapuolia - asiakasta ja tilannetta selvittävää henkilökuntaa.
Tieto pitäisi saada tulemaan samalla tavalla kuin asiakastilin ollessa vanhentunut, ja AF-kenttään selite esim. "Account locked" tai vastaavaa:
64YYYY 00020220818 093604000000000007000100000000AOOUPK|AA564A|AE|BLY|CQY|BV0.1|CC11.99|BD|BE|PB|PC|PIN|AFGreetings from Koha. PATRON EXPIRED -- Patron owes 0.10|PA1|AY6AZB020
Tuossa 64-viestin alussa olevat neljä Y-kirjainta ovat lainaus-, uusinta-, recall- ja varauskiellot (charge, renewal, recall, hold privileges denied). Lisäksi AF-kentän tieto "PATRON EXPIRED" kertoo logia tutkivalle heti, että tili on vanhentunut, kun näitä tilanteita selvitellään jälkikäteen. CQ-kentässä on Y eli PIN-koodi on ollut oikein.
Jos tässä tilanteessa – tili vanhentunut - antaa lisäksi väärän PIN-koodin, automaatti ilmoittaa sen vääränä PIN-koodina, koska se on tässä olennaista ja saa myös todennäköisesti asiakkaan reagoimaan. Kahta eri tietoa ei pystytä asiakkaalle automaatilla kertomaan, mutta CQ-kenttä on N ja kumpikin asia päätyy logille AF-kenttään, josta sekin selviää logia tutkivalle:
64YYYY 00020220818 104315000000000007000100000000AOOUPK|AA564A|AE|BLY|CQN|BV0.1|CC11.99|BD|BE|PB|PC|PIN|AFGreetings from Koha. PATRON EXPIRED -- Patron owes 0.10 -- Invalid password|PA1|AY8AZA93D
Vastaavat tiedot pitäisi saada myös tilin lukittumistilanteessa.
Faktuaalisesti asiakkaan kannalta tilanne on sama, oliko tili vanhentunut vai lukittu, se vaatii joka tapauksessa henkilökunnan toimia. Tässä YYYY-tilanteessa asiakkaalle voidaan myös näyttää automaatilla viesti, joka kehottaa olemaan yhteydessä henkilökuntaan. Nyt sitä ei pystytä tekemään, koska väärän PIN-koodin ja tilin lukittumisen välillä ei ole SIP-viestinnässä mitään eroa.
Jotain muuta?
Koha-Suomen asiantuntijaryhmän päätös 16.1.2023: Tutkitaan korjausta ja tarjotaan mahdollinen ratkaisu yhteisölle.