The Orange County Library System Environment: Connecting Sierra with Custom Applications

The Orange County Library System (OCLS) was formed in the 1980s as an independent tax district that provides library services to the residents of Orange County, florida. it consists of a main library and 14 branches. the system also has a robust online presence and an extensive home delivery service.

When OCLS was formed, it was organized with a large degree of operational autonomy. In addition to providing circulation, reference, and acquisitions functions, OCLS was responsible for its own payroll, accounting, facilities, and information systems functions.

The Information Systems department is responsible not only for providing traditional ILS support, but also for managing the Library’s telephone and network infrastructure and the Call Center. It is also involved in researching, selecting, implementing, and supporting all technology-based systems. From the very inception, this has included finding ways for the various, disparate systems to work in concert to provide better service and efficiency.

The Millennium Environment

In 2004, OCLS purchased library management software from Innovative Interfaces. The platform was named Millennium and provided basic acquisitions, circulation, and Web OPAC functions.

In addition, Millennium provided tools to connect to non- ILS technology.

  1. Integration with online resources was provided via Web access management (Wam). WAm provides patron authentication for remote access to online resources by functioning as a proxy server. this provides for easy setup and maintenance, but can lead to strain on the ILS server by proxying each packet. As streaming media evolved, this service began to noticeably degrade server performance. Also, some online resources were not compatible with a WAm implementation.
  2. A second tool to support interoperability was Standard Interchange Protocol (SIP) support. innovative licenses siP support on a per-connection basis. Again, this is generally easy to set up, but siP support can be limited with certain external systems. the per-connection pricing can also serve as a brake to innovation by increasing overall cost. At OCls, this has restricted the use of siP to the support of various self check-out/check-in platforms.
  3. A third tool for interoperability was the PatronaPI, which provides basic authentication and querying of patron records. this APi is licensed on a site- wide basis. Although the initial cost is rather high, the library is not restricted in the number of licensed connections. initially, OCls purchased this product to reduce the overall cost of supporting its implementation of PC reservation® software from envisionWare®. Over time, we have found a number of additional applications for this simple, but powerful, APi.

The Sierra Environment

In 2011, OCLS entered into a development partnership agreement with Innovative Interfaces to migrate to its new Sierra platform, which is being released in successive phases. In its first phase, Sierra focuses on Millennium compatibility while providing for greater data access via an open Postgres database implementation. All previous interoperability tools remain intact, providing for seamless continuity when migrating from Millennium to Sierra. During this phase, the increased functionality is restricted to read-only data access; this maintains the integrity of the business logic. Sierra organizes the Postgres tables into Sierra Views, which provide easier access to data in
a more accessible logical relationship (i.e., a Patron-Record, an Item-Record, etc.). Innovative has provided the Sierra Database Navigator (DNA) as a tool to document data relationships and provide SQL examples. Innovative has stopped short of providing custom SQL code, but has given libraries the tools they will need to construct their own.

As Sierra development moves to its next phase, Innovative will begin to provide access to the business logic via a set of robust read/write APIs. As this new functionality is developed, there will be increased opportunity for coupling technology platforms.

OCLS migrated from Millennium to Sierra on October 22, 2012. Because of the similarity of the Millennium staff client to the Sierra staff client, there was an extremely low learning curve for staff. We also did not implement changes to our Web OPAC, so the impact on library customers was minimal. The Information Systems department has begun migrating some of its PatronAPI-based customizations to use the new Postgres/Sierra Views data access methodology.

Integration with other Systems

Call Center

OCLS purchased a telephony and call center system from Lucent (now Avaya) in 1999. After implementing Millennium in 2004, we began to look for ways
to interconnect the two systems. We have been able to do this via a custom-written php application (Questline), MySQL, and an eIVR server (Integrated Voice Response). Information Systems staff wrote an application to track customer phone calls. Each call can be a simple account issue or quick reference, or it can be a detailed inquiry that is routed to a service department that is not part of the call center. The difficulty was connecting the incoming call to the patron record in the ILS. In order to streamline the process, our Call Center software routes the incoming call through an eIVR server. This server prompts the user to enter their Library Card number and then uses Innovative’s PatronAPI to validate the patron and write the Library Card number to a MySQL table. Then when the Call Center agent takes the call, the Questline program uses the PatronAPI to retrieve additional information about the patron—including name, address, patron-type, and money- owed—and displays it to the staff member in real-time. This results in a smoother, more informed initial interaction between staff and customer.

Another recent modification we made to the Call Center workflow was to insert an option to transfer the call to Innovative’s Telephone Renewal System (TRS) to renew circulated material at the beginning of the call, or when the customer is on hold. This means the customer does not need to remember a separate phone number for telephone renewal. It has led to a significant increase in the utilization of the Telephone Renewal System. Unfortunately, the Innovative TRS product has not been refreshed in a number of years and does not provide the ability to transfer back into the call flow at the end of the renewal call. It should be noted that there may be third-party TRS systems that might provide more flexible integration.

Under Sierra, we will be using Sierra Views to enhance the information that can be retrieved from the Postgres database. For example, the PatronAPI can only provide the total number of items a customer has checked out. With Sierra Views, we will be able to list the individual items. This will lessen the need for the Call Center agent to toggle back and forth between the Questline application and the Sierra Desktop Application. As the APIs are developed in phase 2 of Sierra, we hope to integrate read/write functions such as renewing items into the Questline application. These will enforce the business logic that will ensure data integrity. It should also be said that OCLS is actively looking for an alternate to the current Avaya telephony architecture and will likely be moving to an IP/cloud-based system in the near future. This will provide a new set of opportunities and challenges.

Wireless Infrastructure

OCLS has been offering customers WiFi access at all locations for a number of years. This was accomplished via a number of Access Points (APs) tied to a Radius server for authentication. This Radius server was tied to a MySQL database, which contained a list of MAC addresses and corresponding patron Library Card numbers. To enroll, library staff would take a patron’s Library Card number and MAC address. They would check the account status in the ILS and then enter the card number and MAC into the database. As wireless use accelerated, the inefficiency of this process became harder to work with. There was also no cleanup done as patron accounts became delinquent or when they changed laptops (resulting in a changed MAC address). There was also no ability to provide meaningful statistics concerning wireless use.

In the summer of 2008, OCLS upgraded its wireless infrastructure. We chose an integrated Cisco-based platform that uses a robust wireless controller. This Cisco Controller interfaces with an upgraded Radius server, which is able to interface with a custom php application. We explored using SIP2 for its simple implementation, but we did not like the reporting options of the platforms we reviewed. We also wanted greater control when granting/denying access. Here again the Information Systems staff went to work connecting the Cisco and Innovative platforms.

What we implemented is a separate wireless network with a broadcasted ssid. The Cisco Controller pushes a logon screen to customers as they connect to the PublicWireless network where they provide their Library Card number
and PIN. The Controller passes these credentials to a Radius server, which executes a php script that uses the PatronAPI to query the Postgres

As Short Message Services (SMS) began to emerge, OCLS recognized early
on that customers would want to get text message notifications from the Library. The concept of getting text reminders database. The php application verifies the Patron-Type and Money-Owed fields. If they meet the thresholds, the application writes information to a MySQL table for statistical purpose and passes a grant code to the Controller, which then connects the user’s session to the network. If the account is delinquent or not eligible, then information is also written to the MySQL table and a deny code is sent to the Controller. The Controller then pushes an informational page to the user directing them to library staff, and disconnects the user from the network.

This system allows OCLS to enforce a wide set of access parameters. It also provides historical information that allows us to examine wireless use including the number of sessions per month, the number of unique customers served, the most used APs, wireless use by branch, etc.

SMS Notification

As Short Message Services (SMS) began to emerge, OCLS recognized early on that customers would want to get text message notifications from the Library. We experimented with short codes and text-based reference, but found it to be expensive and underutilized. However, the concept of getting text reminders of materials coming due and upcoming programs was popular. At the time, Innovative Interfaces did not have a model in place to provide this. By now you should be able to guess the OCLS response: build it ourselves using any available tool.

In 2007, Information Systems staff wrote a system we call OCLS Alerts. This consists of a php application, a MySQL table, a low-cost SMS gateway service, and the Innovative Review File function. We also connect it to our program registration software, Events from Evanced Solutions, to provide reminders of classes that the patron has registered to attend.

The way it works is that customers enroll in OCLS Alerts via a webform keying in their Library Card number and PIN. They provide their cellular number and configure what kind of notices they want to receive. They
can select Materials-Due, Classes, or both. If they select Materials-Due reminders, they can select detailed notifications (one message per item including title) or digest (number of materials due). The digest option can help minimize carrier charges.

On a daily basis, Library staff will run a query using the Sierra Desktop Client to select materials that will be due in three days. They export information into a text file and transfer it to separate server. A php application will then parse the file and load it into the OCLS Alerts MySQL table. A cron job on the server will then send the messages out at a pre-set time.

This process has been in place and working well for several years. However, it does mean that staff must manually run tasks to generate the report and download the file. Innovative does provide a separately priced Scheduler product that could automate parts of this task, but there would still be a lag because of the asynchronous nature of the workflow. OCLS plans to use the power of Sierra Views to provide a real-time link between the Postgres database and the php application that sends the notice.

It should be noted that Innovative now has a product to provide SMS messaging. There are also several third-party services available, but these tend to be subscription based and can have a significant ongoing cost. The system we have in place costs very little in ongoing charges. We also use an XML interface to our Events software to gather program registration information and send out class registration reminders.

Remote Access to Online Databases

The standard way to provide patron authentication for remote database access on Innovative Interface platforms is their Web Access Management (WAM) product. Over the years, we have found that some emerging electronic resource vendors’ databases did not work well in a WAM environment. OCLS has used the PatronAPI to address this on a case-by-case basis. We developed an authentication gateway using a php application that collects the patron’s Library Card number and PIN. It will query the Sierra database and evaluate our custom policies (pseudo loan rules). If access is granted, it will perform a referring URL authentication. If denied, it sends a message back to the user. We have been doing this for a number of years for resources that provide streaming media.

In recent years, we have also used this process to integrate authentication with products from OverDrive and Library Ideas (Freegal Music and Freading). These vendors can support SIP authentication, which can be easier to implement, but we have found several advantages to using our customized method. Services such as OverDrive perform authentication against the Library ILS, but then create a local record in their own system. Patron holds on e-books are then tracked and managed from the vendor’s storefront. Each time the customer visits the site, the vendor will check back with the ILS to ensure the customer is still valid and in good standing.

A weakness of using SIP to enable this workflow is that SIP authentication is based on the Library Card number. This means that the Library Card number is typically used as the unique identifier for the customer in the vendor’s database. The problem creeps in when the customer loses or damages the physical Library Card. If these cards have a pre-printed card number, then a new one is issued from the ILS. Now the vendor’s database and the ILS are out of sync and ongoing authentication becomes problematic. How do you authenticate using the new Library Card number, but not lose the association with existing electronic holds placed under the old number? With our PatronAPI method, we are able to pass the Innovative patron record unique identifier to the e-book vendor instead of the Library Card number. Now, the Library Card number associated with the record can change without impacting the unique identifier associated with the account. This means the ILS and e-book vendor databases remain in sync.

Mobile Applications

OCLS has several mobile applications for patron use. These applications tend to use the same asynchronous query and download process to provide catalog data to the application as is used in our SMS application. Using the real-time Sierra View capabilities, we will be able to begin pulling data in real time. The first application of this will be in our reader’s advisory app, Shake It. Staff currently gather the information on a weekly basis and populate a MySQL database with titles and holding information that the app uses to make recommendations. With Sierra Views, this link can be made without staff intervention, resulting in fresher, more up-to- date results.

In phase 2, we hope to have this application as well as others we develop provide simple interactivity for easy renewing and requesting of materials. Currently, our apps must vector out to Innovative’s SmartPhone-enabled AirPac.

Upcoming Projects

OCLS is involved in additional development projects where we will be calling upon the Sierra platform to provide us with the tools to connect with traditional ILS data. These include implementing our own e-book platform based on the Adobe Content Server (ACS). There is already a lot of work underway between Innovative and other e-content vendors such as OverDrive. We are currently working to develop our own ACS storefront and anticipate having something available in 2013.

Additionally, we have done some preliminary research in building access control systems (ACS). Essentially, these are door locks that can interact with databases and/or APIs. The ACS could be used to control access to study rooms, work- pods, and other small group spaces. Should we develop this type of application, it will likely come online in 2014.

Deprecated Projects

It is worth noting that sometimes it is the right decision to abandon a customization. This occurs as new industry standards develop or when the ILS vendor can provide more powerful functionality at a lower cost. Prior to running Millennium, we used DRA-Classic as an ILS. At that time, the system did not provide for credit card payment of fines and fees. In response, we wrote our own e-commerce application using .Net technologies. As soon as the ILS began supporting e-commerce, we moved to its native solution. It was clearly easier and less expensive to use the integrated solution than to maintain a separate solution.


OCLS has been connecting disparate technology platforms to its library data for decades. This process will continue even as we implement new library solutions, such as the Sierra platform. We have worked with multiple ILS vendors and looked closely at open source projects such as Koha and Evergreen. The choice of individual ILS is important, but on its own, no system can meet all the interoperability needs of an organization. Also, the systems with which these platforms must communicate are constantly evolving. The Information Systems department of any library organization will constantly face this challenge. OCLS has been able to successfully meet this challenge with the Sierra platform from Innovative Interfaces, but we will continue to push the limits of the tools they provide. i iP i doi: 10.3789/isqv24n4.2012.05

William Eric Atkinson ( is Sierra Project Specialist with the Orange County Library System.


Relevant Links

Adobe Content Server

Events (Evanced Solutions)

Library Ideas

Millennium ILS (Innovative Interfaces)

Orange County Library System (OCLS)


PC Reservation Software (EnvisionWare)

Sierra Services Platform (Innovative Interfaces)

SIP Protocol (3M & NISO project)