Warning: This page has not been updated in over over a year and may be outdated or deprecated.
videos:ils_drivers_1
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
videos:ils_drivers_1 [2021/10/06 12:31] – created demiankatz | videos:ils_drivers_1 [2021/10/22 14:31] (current) – [Video 19: ILS Drivers, Part 1: Introduction to ILS Drivers] demiankatz | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Video 19: ILS Drivers, Part 1: Introduction to ILS Drivers ====== | ====== Video 19: ILS Drivers, Part 1: Introduction to ILS Drivers ====== | ||
- | The nineteenth | + | The nineteenth |
- | Video is available as an [[https:// | + | Video is available as an [[https:// |
===== Related Resources ===== | ===== Related Resources ===== | ||
- | - // coming soon // | + | - [[configuration: |
+ | - [[development: | ||
===== Transcript ===== | ===== Transcript ===== | ||
- | // Coming soon... // | + | // This is a machine-generated transcript and will be corrected as time permits. // |
+ | |||
+ | hello and welcome to this month' | ||
+ | viewfind tutorial video an introduction | ||
+ | to ils drivers | ||
+ | uh ils drivers are the connectors | ||
+ | between viewfind and back-end systems | ||
+ | which allow the viewfind software to | ||
+ | provide useful library related | ||
+ | functionality to your users | ||
+ | in this video i'm going to talk a little | ||
+ | bit about what an ils is | ||
+ | what ils drivers are available what they | ||
+ | can do and how to set them up and i'll | ||
+ | have some demonstrations along the way | ||
+ | so first of all to make sure that we' | ||
+ | all on the same page here let's talk | ||
+ | about what an ils actually is | ||
+ | ils stands for integrated library system | ||
+ | this is the software used by most | ||
+ | libraries to manage library functions | ||
+ | like cataloging and circulation and so | ||
+ | forth | ||
+ | in some regions it may actually be | ||
+ | called an lms or library management | ||
+ | system | ||
+ | and in more recent years a number of | ||
+ | products calling themselves library | ||
+ | services platforms have come along but | ||
+ | all of these serve the same basic | ||
+ | functionality there are many products in | ||
+ | this space and viewfind is capable of | ||
+ | interoperating with many of the | ||
+ | available options | ||
+ | as i said | ||
+ | viewfind does this interoperation | ||
+ | through pieces of code called ils | ||
+ | drivers | ||
+ | which allow viewfind to connect to a | ||
+ | back-end system | ||
+ | in order to accomplish some things | ||
+ | those things include | ||
+ | retrieval of real-time availability | ||
+ | status of items | ||
+ | so | ||
+ | the viewfinder index contains | ||
+ | bibliographic data | ||
+ | but we need to rely on an ils to get | ||
+ | information about item level data such | ||
+ | as is a book checked out is it on the | ||
+ | shelf where is it located etc so | ||
+ | viewfind uses an ils driver | ||
+ | to look up this information from your | ||
+ | ils in real time whenever a user wants | ||
+ | to know the status of a particular | ||
+ | bibliographic record | ||
+ | the ils driver is also responsible for | ||
+ | user authentication | ||
+ | in other words when the user wants to | ||
+ | get information about their account from | ||
+ | the ils | ||
+ | viewfinder needs to be able to figure | ||
+ | out who they are and whether they' | ||
+ | allowed to see that information | ||
+ | and the ils drivers have built-in | ||
+ | authentication functionality to make | ||
+ | this happen | ||
+ | uh if you want you can also configure | ||
+ | viewfinder so that the entire viewfind | ||
+ | system relies on your ils for | ||
+ | authentication this is one of several | ||
+ | authentication options available in | ||
+ | viewfind | ||
+ | the ils driver is responsible for | ||
+ | fetching information about user accounts | ||
+ | things like their current profile what' | ||
+ | their address and phone number uh what | ||
+ | fines do they have what transactions | ||
+ | like checkouts or holds are currently | ||
+ | active | ||
+ | the ios driver can also | ||
+ | handle user requests so if a user wants | ||
+ | to place a hold on a book renew a book | ||
+ | etc that can be done in the viewfind | ||
+ | interface utilizing the ils driver in | ||
+ | the background | ||
+ | the ios driver can also retrieve | ||
+ | information about course reserves if | ||
+ | your library uses that functionality and | ||
+ | your ils supports it | ||
+ | and finally in some situations the ils | ||
+ | driver can be used to identify newly | ||
+ | added items in your collection | ||
+ | although there are also other ways to do | ||
+ | this outside of the ils driver if you | ||
+ | prefer | ||
+ | uh many of the ils drivers bundled with | ||
+ | viewfind uh simply correspond to | ||
+ | particular products so for example in | ||
+ | the open source space we have drivers | ||
+ | for coha evergreen | ||
+ | folio and new gen lib all of which are | ||
+ | open source ils systems | ||
+ | but there are a few additional ils | ||
+ | drivers that aren't just a | ||
+ | straightforward | ||
+ | product based | ||
+ | piece of code | ||
+ | these are the sample driver | ||
+ | which is sort of the simplest possible | ||
+ | ils driver code | ||
+ | simply designed to demonstrate sort of a | ||
+ | minimum viable product when you install | ||
+ | viewfind the sample driver is the one | ||
+ | that's turned on | ||
+ | though you're not going to want to keep | ||
+ | it on because all the sample driver does | ||
+ | is tell you that every book is available | ||
+ | on the shelf uh it has a call number | ||
+ | called one two three four five six seven | ||
+ | and its location is main library third | ||
+ | floor which is obviously not true but | ||
+ | again this was just designed to | ||
+ | demonstrate | ||
+ | how things fit together | ||
+ | and it is assumed that you will change | ||
+ | it when you set up your system | ||
+ | another special ios driver is demo and | ||
+ | like the sample driver the demo driver | ||
+ | returns fake information the difference | ||
+ | is that the sample driver is extremely | ||
+ | simple and does very little whereas the | ||
+ | demo driver is quite complex and | ||
+ | actually simulates all of the ils | ||
+ | functionality that viewfind offers by | ||
+ | generating fake data | ||
+ | it also simulates error conditions so | ||
+ | it's useful for testing that the | ||
+ | viewfind code is robust enough to handle | ||
+ | all kinds of behavior on the part of the | ||
+ | ils | ||
+ | so the demo driver is useful for | ||
+ | development and testing but like sample | ||
+ | you would never want to use this in a | ||
+ | production environment | ||
+ | uh the next two special ils drivers | ||
+ | though are options you would consider in | ||
+ | a production environment the first of | ||
+ | them is called no ils | ||
+ | and this is an ils driver designed for | ||
+ | users who don't have an ils | ||
+ | and it can be configured in two | ||
+ | different modes | ||
+ | there is offline mode which will cause | ||
+ | viewfind to display messages indicating | ||
+ | that the ils is currently offline uh | ||
+ | this is useful if you have an ils that | ||
+ | is down for maintenance um you can even | ||
+ | configure viewfind to detect errors in | ||
+ | your ils and switch over to no ios when | ||
+ | something is wrong | ||
+ | so that's useful to allow the viewfinder | ||
+ | interface to continue to function even | ||
+ | if there' | ||
+ | system | ||
+ | the other no ils mode | ||
+ | is called ils none mode and you use this | ||
+ | if you have no ils at all and never plan | ||
+ | to | ||
+ | and this simply disables all of the ils | ||
+ | related functionality and viewfind while | ||
+ | allowing everything else to function | ||
+ | this is what you would want to do if | ||
+ | you're say using viewfind to create a | ||
+ | bibliography or search a website or do | ||
+ | something where the ils is not relevant | ||
+ | uh there' | ||
+ | uh you can do of the no ils driver | ||
+ | uh to for example pull fields from your | ||
+ | marc records and use them as if they | ||
+ | were coming from the ils so there' | ||
+ | lot of flexibility here for sort of edge | ||
+ | cases where you can't talk directly to | ||
+ | your ils | ||
+ | so if you're in that kind of situation | ||
+ | give this one a look | ||
+ | finally the last special ils driver is | ||
+ | called multi-back end | ||
+ | and this is designed for a consortial | ||
+ | environment where there are actually | ||
+ | records being loaded from multiple | ||
+ | libraries and each library has its own | ||
+ | ils | ||
+ | a multi-backend allows you to set up a | ||
+ | separate ils driver for each library and | ||
+ | to proxy requests to the appropriate | ||
+ | places so that you can take advantage of | ||
+ | all of the ils functionality | ||
+ | across multiple systems | ||
+ | it's quite complex to set up and will be | ||
+ | the subject of a future video but for | ||
+ | now just be aware that it exists in case | ||
+ | you should need it | ||
+ | so with this background out of the way | ||
+ | let's uh do a bit of hands-on work | ||
+ | so i have here my test environment | ||
+ | and | ||
+ | i've never configured an ils driver in | ||
+ | any of the past videos so as i mentioned | ||
+ | viewfind has sample installed by default | ||
+ | and i can prove that by going to the | ||
+ | catalog and looking at my book format | ||
+ | items | ||
+ | as you can see | ||
+ | when i search for physical books | ||
+ | viewfind uses the ils driver to try to | ||
+ | fetch an availability status and i'm | ||
+ | getting this one two three four five six | ||
+ | seven call number third floor main | ||
+ | library | ||
+ | that's what the sample driver provides | ||
+ | and it's just going to tell me that | ||
+ | about everything | ||
+ | if i try to use any of the other | ||
+ | advanced ils functionality it won't work | ||
+ | because the sample driver doesn' | ||
+ | support any of that it just gives this | ||
+ | one status message | ||
+ | so | ||
+ | uh you may recall from when we installed | ||
+ | viewfind originally that there is a | ||
+ | web-based install page where you can set | ||
+ | some things up and it does a number of | ||
+ | tests that you can fix and as you can | ||
+ | see my ils test is failing | ||
+ | it's failing because if you have either | ||
+ | of these special testing oriented | ||
+ | drivers | ||
+ | installed either sample or demo | ||
+ | it considers that a failure because | ||
+ | they' | ||
+ | use them in production | ||
+ | so if i click on this fix button | ||
+ | it gives me a drop down list of all of | ||
+ | the currently available | ||
+ | ils drivers with the exception of sample | ||
+ | and demo | ||
+ | so i could choose one of these if i | ||
+ | happen to have that system | ||
+ | uh and | ||
+ | if i then | ||
+ | hit the submit button what this would do | ||
+ | is it would turn on the ils driver i | ||
+ | selected in my config.ini configuration | ||
+ | file which is where you tell if you find | ||
+ | which driver to use | ||
+ | and it would also copy an additional | ||
+ | driver specific | ||
+ | ini file into my local configuration | ||
+ | directory because every ils driver has | ||
+ | its own configuration file | ||
+ | where you set up you know how it needs | ||
+ | to be connected to by viewfind and what | ||
+ | your credentials are what features to | ||
+ | use and so forth every ils has its own | ||
+ | settings so you'll want to | ||
+ | read carefully the comments in that any | ||
+ | file to make sure that you set things up | ||
+ | correctly | ||
+ | i'm not actually going to use this form | ||
+ | here because what i'm going to | ||
+ | demonstrate i will do by hand | ||
+ | but i just wanted you to be aware that | ||
+ | the web-based installer does help you do | ||
+ | the first step | ||
+ | of getting the ils driver set up but you | ||
+ | then have to actually manually configure | ||
+ | that ios specific ini file or else | ||
+ | nothing is going to work because | ||
+ | all of these require some additional | ||
+ | configuration unique to the particular | ||
+ | ils | ||
+ | before you'll have full functionality | ||
+ | so i'm just going to switch over to my | ||
+ | code editor now so i can show you uh | ||
+ | some configuration files | ||
+ | so as you can see in the | ||
+ | main viewfind config viewfind core | ||
+ | directory where all of the default | ||
+ | configuration live | ||
+ | you can | ||
+ | find all of these ils specific any files | ||
+ | just as a note you'll see here there are | ||
+ | three different ils drivers for coha | ||
+ | and that's because different versions of | ||
+ | koha uh support different uh methods of | ||
+ | connection | ||
+ | and of these three the koha rest driver | ||
+ | is the newest and the most feature | ||
+ | complete | ||
+ | this uses a fairly recently added | ||
+ | restful | ||
+ | api in cohab | ||
+ | so | ||
+ | most cohort users should try to use koha | ||
+ | rest but if you have an older version | ||
+ | that doesn' | ||
+ | one of these older versions | ||
+ | but just for the sake of example let' | ||
+ | take a quick look at the koha rest ini | ||
+ | file to see what an ios driver | ||
+ | configuration file looks like | ||
+ | uh you'll see that at the top we have | ||
+ | this catalog section which has | ||
+ | connection credentials so in this | ||
+ | instance | ||
+ | because cohab rest uses a web-based api | ||
+ | we have the url of the api endpoint | ||
+ | we have some lengthy comments which | ||
+ | explain how to set up the restful api on | ||
+ | the coha side | ||
+ | and we have some credentials that need | ||
+ | to be used to connect to the api | ||
+ | most of the ils | ||
+ | configurations follow this pattern they | ||
+ | have connection credentials | ||
+ | often to an api sometimes directly to a | ||
+ | database | ||
+ | and then there are some additional | ||
+ | settings related to specific features so | ||
+ | for example in this instance | ||
+ | you can control how hold behavior works | ||
+ | uh you can control storage retrieval | ||
+ | requests | ||
+ | and you can adjust how item statuses are | ||
+ | mapped uh again this is different for | ||
+ | each driver | ||
+ | but the the important thing is read the | ||
+ | comments see what's available uh and | ||
+ | configure uh based on your local needs | ||
+ | so in order to show you uh some of the | ||
+ | ils functionality that exists i'm | ||
+ | actually going to set up the demo driver | ||
+ | today since as i mentioned that | ||
+ | simulates all of the functionality | ||
+ | available to viewfind | ||
+ | and setting it up is actually similar to | ||
+ | setting up a real ils | ||
+ | so first of all uh let me go to | ||
+ | config.ini and show you that here | ||
+ | there' | ||
+ | first setting in there is called driver | ||
+ | so you just set this to the name of the | ||
+ | driver that you want to use as you can | ||
+ | see it defaults to sample i'm going to | ||
+ | change it to demo | ||
+ | and that is really all i need to do to | ||
+ | turn on the demo driver | ||
+ | but the demo driver won't be fully | ||
+ | configured | ||
+ | before i get on to configuring the rest | ||
+ | of the demo driver though i wanted to | ||
+ | highlight a few other settings here that | ||
+ | might be interesting | ||
+ | if you scroll down through the catalog | ||
+ | section you'll see first of all there' | ||
+ | this load no ils on failure setting | ||
+ | which defaults to false | ||
+ | but as i mentioned earlier | ||
+ | if you turn this to true then viewfind | ||
+ | will detect any errors that occur when | ||
+ | connecting to your ils and automatically | ||
+ | switch to no ils if something goes wrong | ||
+ | which is useful if for example your ils | ||
+ | is offline for a period of time | ||
+ | overnight for maintenance or things like | ||
+ | that | ||
+ | if you do turn this setting on you also | ||
+ | will want to copy over no ils.ini and | ||
+ | configure the no ils driver | ||
+ | appropriately | ||
+ | but just be aware that that's something | ||
+ | you can do and it's useful in a lot of | ||
+ | situations | ||
+ | uh there are a lot of settings in here | ||
+ | uh and | ||
+ | i'm not going to cover all of them you | ||
+ | can read the comments to learn more as | ||
+ | as needed but some other useful ones are | ||
+ | holds mode which controls | ||
+ | where and how viewfind displays links to | ||
+ | place holds on books | ||
+ | by default it is all which will just | ||
+ | display a placehold link next to every | ||
+ | item as long as your driver supports | ||
+ | holds at all | ||
+ | if you don't want it you can switch it | ||
+ | to disabled and then users won't be able | ||
+ | to place holds | ||
+ | in many cases though you're going to | ||
+ | want to change the setting to driver | ||
+ | what the driver setting does is ask the | ||
+ | ils driver for each item | ||
+ | whether it is available to be put on | ||
+ | hold so if your ils has complex rules | ||
+ | about what is holdable and what is not | ||
+ | the driver setting allows viewfind to | ||
+ | delegate to the ils and follow its rules | ||
+ | not every ils driver is set up to | ||
+ | support this | ||
+ | but most of the commonly used ones will | ||
+ | work correctly in driver mode | ||
+ | uh there are some settings like whether | ||
+ | you allow users to cancel their holds | ||
+ | uh similar settings for storage | ||
+ | retrieval and interlibrary loan requests | ||
+ | uh you can set up title level holds | ||
+ | modes | ||
+ | so the holds mode setting | ||
+ | applies to placing holds on specific | ||
+ | items so you know if a bib record has 10 | ||
+ | items attached to it | ||
+ | there will be a hold link next to each | ||
+ | of those 10 and the user can pick a | ||
+ | specific one | ||
+ | but in some instances you want the user | ||
+ | to be able to place a title level hold | ||
+ | just say give me the first one of these | ||
+ | items that's available | ||
+ | in order to turn that on | ||
+ | you just switch on title level holds | ||
+ | mode | ||
+ | again not every ios driver supports this | ||
+ | so depending on your situation you may | ||
+ | or may not be able to use it but if you | ||
+ | want it give it a try see if it works uh | ||
+ | if it doesn' | ||
+ | needed to improve your ils driver but | ||
+ | again for many of the commonly used | ||
+ | drivers the functionality is already | ||
+ | there | ||
+ | uh scrolling down a little bit more | ||
+ | there are | ||
+ | some settings for | ||
+ | setting the page size for paginating | ||
+ | through lists of checked out items | ||
+ | um | ||
+ | and then a lot of these settings are are | ||
+ | for fairly narrow use cases that most | ||
+ | people won't need to worry about | ||
+ | the other thing i wanted to mention | ||
+ | while we're here in config.ini | ||
+ | is authentication related | ||
+ | so as i mentioned before the ils drivers | ||
+ | take care of authenticating the user | ||
+ | with the ils system | ||
+ | so that | ||
+ | viewfinders they' | ||
+ | know their transactions their profile | ||
+ | etc | ||
+ | but there are a few details related to | ||
+ | this that that may be of interest | ||
+ | the first is that as i mentioned | ||
+ | you can set viewfind to use your ils | ||
+ | driver as the primary authentication | ||
+ | method for the whole viewfind system | ||
+ | so as you can see by default | ||
+ | viewfind uses database authentication | ||
+ | which means that viewfind maintains its | ||
+ | own internal database of users | ||
+ | users can sign up for accounts and then | ||
+ | they log into the accounts they created | ||
+ | but viewfind is also able to delegate | ||
+ | authentication to other systems | ||
+ | and if you change this method from | ||
+ | database to ils it will use your ils for | ||
+ | all logins and when the user clicks the | ||
+ | login button at the top of viewfind | ||
+ | it's going to be using your ils | ||
+ | credentials instead of internal viewfind | ||
+ | credentials to log you in | ||
+ | the flip side of this coin is that if | ||
+ | you don't want to use the ios for your | ||
+ | primary authentication method but you | ||
+ | also don't want to make the user log in | ||
+ | twice that is you don't want them to log | ||
+ | into their viewfinder account and then | ||
+ | also have to log into their ils account | ||
+ | with different credentials | ||
+ | in some scenarios you can avoid that by | ||
+ | pre-populating viewfind' | ||
+ | the credentials for your ils | ||
+ | of course this depends on using an | ||
+ | authentication method that provides | ||
+ | attributes that can be used to access | ||
+ | the ils | ||
+ | such authentication methods include but | ||
+ | are not limited to | ||
+ | ldap and shibboleth | ||
+ | uh in if you're using one of these types | ||
+ | of | ||
+ | authentication | ||
+ | you'll find that there' | ||
+ | section in config.ini for additional | ||
+ | authentication settings | ||
+ | let's just look at the shibboleth one as | ||
+ | an example of this | ||
+ | so if i were using the shibboleth | ||
+ | authentication provider | ||
+ | i would have this section uncommented | ||
+ | and i'd have some of these settings | ||
+ | filled in but the most important part is | ||
+ | down near the bottom of the section | ||
+ | there' | ||
+ | and what this does | ||
+ | is it maps attributes provided by | ||
+ | shibboleth | ||
+ | to columns in viewfind' | ||
+ | the database | ||
+ | and as you can see there are these two | ||
+ | at the top cat username and cat password | ||
+ | these are | ||
+ | the credentials that are used to connect | ||
+ | to your ils | ||
+ | so if you have | ||
+ | attributes in your authentication system | ||
+ | that could be used for logging in | ||
+ | you can map them here and then the user | ||
+ | will have a seamless experience of | ||
+ | signing in once to viewfind and when | ||
+ | they try to access uh ils related | ||
+ | functionality they' | ||
+ | without being prompted to log in further | ||
+ | obviously the exact details of how you | ||
+ | set this up are going to depend on your | ||
+ | authentication system and your ils | ||
+ | um | ||
+ | this can vary quite a bit but you know | ||
+ | just as one example | ||
+ | uh in some voyager systems the uh | ||
+ | credentials to access the ils are the | ||
+ | user's barcode and last name | ||
+ | uh these tend to be attributes you can | ||
+ | get out of your uh | ||
+ | organizational authentication system | ||
+ | so you can map them here then the user | ||
+ | logs in | ||
+ | the login system sends their barcode and | ||
+ | last name into viewfind' | ||
+ | then when they try to access ios | ||
+ | specific functionality viewfinder looks | ||
+ | up the credentials in the database sends | ||
+ | them to the ils and everything works | ||
+ | seamlessly | ||
+ | if the credentials are rejected for | ||
+ | whatever reason only then will the user | ||
+ | be prompted to actually type those | ||
+ | things in | ||
+ | so that's a whole lot of configuration | ||
+ | let's uh let's get past that and | ||
+ | actually | ||
+ | look at what this stuff looks like when | ||
+ | it's working | ||
+ | so | ||
+ | as i mentioned | ||
+ | earlier i already set | ||
+ | my driver setting to demo up here but as | ||
+ | i said every | ||
+ | um | ||
+ | ios driver comes with its own any file | ||
+ | with additional settings and demo | ||
+ | is no exception | ||
+ | so if i go up to the default | ||
+ | configuration directory i'm going to | ||
+ | find a | ||
+ | demo.ini file here | ||
+ | but as with any other configuration file | ||
+ | i never want to edit the core copy of it | ||
+ | i want to create a local copy and make | ||
+ | my configuration changes there so i am | ||
+ | going to copy this file | ||
+ | and i'm going to go down to my local | ||
+ | config directory and i'm going to paste | ||
+ | my file in here | ||
+ | so now i have a local copy of demo.ini | ||
+ | now the demo driver doesn' | ||
+ | require a whole lot of configuration | ||
+ | because everything it does is fake | ||
+ | and uh it's all simulated so it really | ||
+ | doesn' | ||
+ | as i mentioned during the earlier part | ||
+ | of the presentation | ||
+ | uh one of the things that the demo | ||
+ | driver does is simulate failure | ||
+ | and | ||
+ | that's useful for testing how viewfind | ||
+ | responds to ils errors | ||
+ | but it's also kind of annoying if you | ||
+ | just want to test the functionality | ||
+ | so there' | ||
+ | configuration here called failure | ||
+ | probabilities | ||
+ | which is the percentage chance of | ||
+ | something going wrong in various | ||
+ | scenarios | ||
+ | so i'm just going to set all these | ||
+ | failure probabilities to zero | ||
+ | so that i won't see any errors during my | ||
+ | demo | ||
+ | another thing that i could potentially | ||
+ | do | ||
+ | if i wanted to | ||
+ | uh is set up | ||
+ | some fake users | ||
+ | in my simulated ios so if i uncommented | ||
+ | this user section | ||
+ | i could create username password pairs | ||
+ | and then | ||
+ | the ios driver would enforce i could | ||
+ | only log into the ils uh using the | ||
+ | credentials here if i leave this | ||
+ | commented out then it doesn' | ||
+ | i type into the login form it'll just | ||
+ | always let me log in and i'm going to | ||
+ | leave it that way for the purposes of | ||
+ | demonstration | ||
+ | so now that the demo driver is all set | ||
+ | up | ||
+ | uh let's switch back over here | ||
+ | and go back to my search results | ||
+ | which as you recall earlier we' | ||
+ | showing third floor main library but | ||
+ | let's refresh the page | ||
+ | it's still showing third floor main | ||
+ | library did i forget to hit save and | ||
+ | config.ini i sure did | ||
+ | so let me save the change to the driver | ||
+ | setting come back over here and refresh | ||
+ | the page | ||
+ | and now | ||
+ | all of my records are showing different | ||
+ | results because this is all being | ||
+ | randomly generated | ||
+ | by the ils driver | ||
+ | if i click into | ||
+ | the record page | ||
+ | i can see | ||
+ | considerably more detailed holdings | ||
+ | information this is all information that | ||
+ | comes in real time from the ils driver | ||
+ | and as you can see i have the place a | ||
+ | hold option | ||
+ | which if i click it is going to require | ||
+ | me to log in first | ||
+ | so let's see i have a fake account here | ||
+ | and now it's prompting me to log into my | ||
+ | catalog profile this is how the ils | ||
+ | driver authenticates and as i mentioned | ||
+ | i can put anything in here it doesn' | ||
+ | matter because i have the driver | ||
+ | configured to accept all credentials | ||
+ | so now i am fully logged in and i can | ||
+ | place my hold on test publication 201 | ||
+ | 700 | ||
+ | and if i go to my holds and recall | ||
+ | screen | ||
+ | i can see that | ||
+ | the hold that i placed is actually here | ||
+ | because even though the demo driver is | ||
+ | completely fake it does have an internal | ||
+ | memory and it really simulates these | ||
+ | things working from end to end | ||
+ | uh you'll notice it's showing that i | ||
+ | have some checked out items because it | ||
+ | will simulate random checked out items i | ||
+ | have some fines it simulates those as | ||
+ | well | ||
+ | and so on and so forth | ||
+ | so going back to holds and recalls you | ||
+ | may have noticed when i was highlighting | ||
+ | the configuration settings for ils | ||
+ | drivers that there' | ||
+ | holds to be cancelled | ||
+ | as you can see here that is off by | ||
+ | default i have no cancel option | ||
+ | but let's just demonstrate that i can | ||
+ | come back over here | ||
+ | set cancel holds enabled to true | ||
+ | save the file | ||
+ | refresh this page | ||
+ | and now i have cancel controls | ||
+ | and i can cancel my hold | ||
+ | there we go | ||
+ | uh there' | ||
+ | do with the ils | ||
+ | uh if you follow my my footprints here | ||
+ | and set up the demo driver you'll have | ||
+ | ample opportunities to play with all of | ||
+ | the options uh but hopefully this has | ||
+ | given you a little taste of what ils | ||
+ | drivers are and what's involved in | ||
+ | setting them up | ||
+ | um i also wanted to use the last couple | ||
+ | minutes of this video uh to mention a | ||
+ | couple of troubleshooting tips | ||
+ | because ils drivers can be among the | ||
+ | more tricky things to set up in viewfind | ||
+ | because it involves interoperability | ||
+ | between systems | ||
+ | so | ||
+ | uh | ||
+ | if you're trying to get an ils working | ||
+ | and you're having trouble i have a few | ||
+ | suggestions first of all as i already | ||
+ | mentioned uh be sure to read the | ||
+ | comments in the ils specific any file | ||
+ | because | ||
+ | there may be some hints and tips there | ||
+ | that are important | ||
+ | next make sure that there' | ||
+ | firewall or permission issue standing in | ||
+ | your way | ||
+ | obviously if you're using an api or | ||
+ | connecting to a database | ||
+ | this requires your | ||
+ | viewfinder server to be able to talk to | ||
+ | some other server somewhere | ||
+ | and you need to be sure that that server | ||
+ | is allowing connections that there' | ||
+ | intervening network device that' | ||
+ | blocking those communications etc | ||
+ | if you think things are set up but | ||
+ | they' | ||
+ | testing them in some other way for | ||
+ | example if you're trying to connect to a | ||
+ | database | ||
+ | use a database client program to connect | ||
+ | directly from your viewfind server to | ||
+ | the database that will tell you whether | ||
+ | it's a low-level connection problem or | ||
+ | something specific to viewfind | ||
+ | similarly if you're having trouble | ||
+ | connecting to an api use curl or wget or | ||
+ | something like that to try to talk to | ||
+ | the api directly from the command line | ||
+ | if that works then you have a problem in | ||
+ | viewfind if that doesn' | ||
+ | it's a lower level network issue | ||
+ | finally if some function is not working | ||
+ | correctly in viewfind | ||
+ | you can always try switching to the demo | ||
+ | driver | ||
+ | this will simulate the same | ||
+ | functionality and if that doesn' | ||
+ | as expected you've perhaps found a bug | ||
+ | in viewfind but if it works with the | ||
+ | demo driver but not with your real | ||
+ | driver then you've at least narrowed | ||
+ | down the cause of your problem to a | ||
+ | specific driver and you know how to | ||
+ | troubleshoot further from there | ||
+ | that's obviously just a nutshell it can | ||
+ | get more complicated and i certainly | ||
+ | encourage you to reach out to the | ||
+ | viewfinder mailing lists and other | ||
+ | community forums for support if you need | ||
+ | more help | ||
+ | but anyway | ||
+ | that's all i have for this month uh | ||
+ | thank you for listening i hope this is | ||
+ | helpful | ||
+ | and we'll have more soon | ||
+ | bye for now | ||
---- struct data ---- | ---- struct data ---- | ||
+ | properties.Page Owner : | ||
---- | ---- | ||
videos/ils_drivers_1.1633523469.txt.gz · Last modified: 2021/10/06 12:31 by demiankatz