Well, you all are welcome! :-( Anyway, I found the way of doing it. I'm sure there's a neater way, but this one seems to work. Add this line to /etc/koha/sites/"your library"/koha-conf.xml: <listen id="publicauthorityserver">tcp:@:10000</listen> You may use any free port. Then add the following section. You may need to tweak it a bit: <!-- PUBLICSERVER'S AUTHORITY RECORDS --> <!-- This can be used to set up a public Z39.50/SRU server. --> <server id="publicauthorityserver" listenref="publicauthorityserver"> <directory>/var/lib/koha/biblioteko/authorities</directory> <config>/etc/koha/sites/biblioteko/zebra-authorities-dom.cfg</config> <cql2rpn>/etc/koha/zebradb/pqf.properties</cql2rpn> <xi:include href="/etc/koha/marc21-retrieval-info-auth-dom.xml" xmlns:xi="http://www.w3.org/2001/XInclude"> <xi:fallback> <retrievalinfo> <retrieval syntax="marc21" name="F"/> <retrieval syntax="marc21" name="B"/> <retrieval syntax="xml" name="F"/> <retrieval syntax="xml" name="B"/> <retrieval syntax="xml" name="marcxml" identifier="info:srw/schema/1/marcxml-v1.1"> <backend syntax="marc21" name="F"> <marc inputformat="marc" outputformat="marcxml" inputcharset="utf-8"/> </backend> </retrieval> <retrieval syntax="xml" name="dc"> <backend syntax="marc21" name="F"> <marc inputformat="marc" outputformat="marcxml" inputcharset="utf-8"/> <xslt stylesheet="/usr/share/koha/intranet/htdocs/intranet-tmpl/ prog/en/xslt/MARC21slim2DC.xsl"/> </backend> </retrieval> <retrieval syntax="xml" name="mods"> <backend syntax="marc21" name="F"> <marc inputformat="marc" outputformat="marcxml" inputcharset="utf-8"/> <xslt stylesheet="/usr/share/koha/intranet/htdocs/intranet-tmpl/ prog/en/xslt/MARC21slim2MODS.xsl"/> </backend> </retrieval> <retrieval syntax="xml" name="rdfdc"> <backend syntax="marc21" name="F"> <marc inputformat="marc" outputformat="marcxml" inputcharset="utf-8"/> <xslt stylesheet="/usr/share/koha/intranet/htdocs/intranet-tmpl/ prog/en/xslt/MARC21slim2RDFDC.xsl"/> </backend> </retrieval> <retrieval syntax="xml" name="rss2"> <backend syntax="marc21" name="F"> <marc inputformat="marc" outputformat="marcxml" inputcharset="utf-8"/> <xslt stylesheet="/usr/share/koha/intranet/htdocs/intranet-tmpl/ prog/en/xslt/MARC21slim2RSS2.xsl"/> </backend> </retrieval> <retrieval syntax="xml" name="utils"> <backend syntax="marc21" name="F"> <marc inputformat="marc" outputformat="marcxml" inputcharset="utf-8"/> <xslt stylesheet="/usr/share/koha/intranet/htdocs/intranet-tmpl/ prog/en/xslt/MARC21slimUtils.xsl"/> </backend> </retrieval> </retrievalinfo> </xi:fallback> </xi:include> <xi:include href="/etc/koha/zebradb/explain-authorities.xml" xmlns:xi="http://www.w3.org/2001/XInclude"> <xi:fallback> <explain xmlns="http://explain.z3950.org/dtd/2.0/"> <serverInfo> <host>__ZEBRA_SRU_HOST__</host> <port>__ZEBRA_SRU_BIBLIOS_PORT__</port> <database>authorities</database> </serverInfo> </explain> </xi:fallback> </xi:include> </server> <serverinfo id="publicauthorityserver"> <ccl2rpn>/etc/koha/zebradb/ccl.properties</ccl2rpn> <user></user> <password></password> </serverinfo> As usual, restart the Zebra server or the entire machine. Rubén Fernández Asensio El dissabte, 10 de febrer de 2018, a les 21:48:13 CET, vau escriure:
Hello, I'm trying to set up my Koha as a Z39.50 server. So far I can serve biblio data, but can't serve authorities. Has anybody achieved a working configuration?
This is what yaz-client reports: yaz-client tcp:biblioteko.esperanto.cat:9999 Connecting...OK. Sent initrequest. Connection accepted by v3 target. ID : 81 Name : Zebra Information Server/GFS/YAZ Version: 4.2.30 98864b44c654645bc16b2c54f822dc2e45a93031 Options: search present delSet triggerResourceCtrl scan sort extendedServices namedResultSets Elapsed: 0.360845 Z> base biblios Z> find Zamenhof Sent searchRequest. Received SearchResponse. Search was a success. Number of hits: 509, setno 1 SearchResult-1: term=Zamenhof cnt=509 records returned: 0 Elapsed: 0.066083 Z> base authorities Z> find Zamenhof Sent searchRequest. Received SearchResponse. Search was a bloomin' failure. Number of hits: 0, setno 2 Result Set Status: none records returned: 0 Diagnostic message(s) from database: [109] Database unavailable -- v2 addinfo 'authorities' Elapsed: 0.054520
So, the biblio database is served, but the authority database is unavailable.
To activate the server, I uncommented all the relevant parts of the file /etc/ koha/sites/esperanto/koha-conf.xml:
<!-- Uncomment the following entry if you want to run the public Z39.50 server. Also uncomment the <server> and <serverinfo> sections for id 'publicserver' under PUBLICSERVER'S BIBLIOGRAPHIC RECORDS title-->
<listen id="publicserver" >tcp:@:9999</listen>
However, if you uncomment that aforementioned section, you see it only relates to bibliographic records:
<!-- PUBLICSERVER'S BIBLIOGRAPHIC RECORDS --> <!-- This can be used to set up a public Z39.50/SRU server. -->
<server id="publicserver" listenref="publicserver"> <directory>/var/lib/koha/esperanto/biblios</directory> <config>/etc/koha/sites/esperanto/zebra-biblios-dom.cfg</config> <cql2rpn>/etc/koha/zebradb/pqf.properties</cql2rpn>
<xi:include href="/etc/koha/marc21-retrieval-info-bib-dom.xml" xmlns:xi="http://www.w3.org/2001/XInclude"> <xi:fallback> <retrievalinfo> <retrieval syntax="marc21" name="F"/> <retrieval syntax="marc21" name="B"/> <retrieval syntax="xml" name="F"/> <retrieval syntax="xml" name="B"/> <retrieval syntax="xml" name="marcxml" identifier="info:srw/schema/1/marcxml-v1.1"> <backend syntax="marc21" name="F"> <marc inputformat="marc" outputformat="marcxml" inputcharset="utf-8"/> </backend> </retrieval> <retrieval syntax="xml" name="dc"> <backend syntax="marc21" name="F"> <marc inputformat="marc" outputformat="marcxml" inputcharset="utf-8"/> <xslt stylesheet="/usr/share/koha/intranet/htdocs/intranet-tmpl/ prog/en/xslt/MARC21slim2DC.xsl"/> </backend> </retrieval> <retrieval syntax="xml" name="mods"> <backend syntax="marc21" name="F"> <marc inputformat="marc" outputformat="marcxml" inputcharset="utf-8"/> <xslt stylesheet="/usr/share/koha/intranet/htdocs/intranet-tmpl/ prog/en/xslt/MARC21slim2MODS.xsl"/> </backend> </retrieval> <retrieval syntax="xml" name="rdfdc"> <backend syntax="marc21" name="F"> <marc inputformat="marc" outputformat="marcxml" inputcharset="utf-8"/> <xslt stylesheet="/usr/share/koha/intranet/htdocs/intranet-tmpl/ prog/en/xslt/MARC21slim2RDFDC.xsl"/> </backend> </retrieval> <retrieval syntax="xml" name="rss2"> <backend syntax="marc21" name="F"> <marc inputformat="marc" outputformat="marcxml" inputcharset="utf-8"/> <xslt stylesheet="/usr/share/koha/intranet/htdocs/intranet-tmpl/ prog/en/xslt/MARC21slim2RSS2.xsl"/> </backend> </retrieval> <retrieval syntax="xml" name="utils"> <backend syntax="marc21" name="F"> <marc inputformat="marc" outputformat="marcxml" inputcharset="utf-8"/> <xslt stylesheet="/usr/share/koha/intranet/htdocs/intranet-tmpl/ prog/en/xslt/MARC21slimUtils.xsl"/> </backend> </retrieval> </retrievalinfo> </xi:fallback> </xi:include>
<xi:include href="__KOHA_CONF_DIR__/zebradb/explain-biblios.xml" xmlns:xi="http://www.w3.org/2001/XInclude"> <xi:fallback> <explain xmlns="http://explain.z3950.org/dtd/2.0/"> <serverInfo> <host>__ZEBRA_SRU_HOST__</host> <port>__ZEBRA_SRU_BIBLIOS_PORT__</port> <database>biblios</database> </serverInfo> </explain> </xi:fallback> </xi:include> </server> <serverinfo id="publicserver"> <ccl2rpn>/etc/koha/zebradb/ccl.properties</ccl2rpn> <user>Carles</user> <password>Puigdemont</password> </serverinfo>
So, do I need a similar 'server' and 'serverinfo' section for authorities? In that case, should I also create a 'listen' entry with a different port? What's your configuration? Has anybody got an authority server running?
Rubén Fernández