This is a middle-front-burner issue for us, so I'll just jump right in here.

First of all, "for Koha" probably isn't quite the words we want to use. There are a number of systems that work fine with Koha right now, including Userful which we use, PC-Cop and Envisionware, et al. These are external programs that work with Koha through the SIP interface. I don't think logical design would suggest a pc reservation module be incorporated in Koha itself.

However, there are a couple of now apparently abandoned open-source pc reservation projects. I should perhaps emphasize "apparently", since the status isn't entirely clear and I can't get in contact with the authors. There is Jesse Weaver's Powerline, written in Python, and Kyle Hall's Libki. Code for both is available, and we've tried Libki quite a bit. It was our feeling that Libki v1 was an excellent start, but needed some additional features. Kyle was going to do a complete re-write of the system, but that has apparently not been done. If you want to give Libki a try, you will probably need to look at our git repo where we did a couple of fixes.

The local university where I graduated is looking for php projects for their Jr-Sr level programming classes, and 1 project for a grad student. I met with the faculty advisers just yesterday, and submitted two projects to them. One was a Koha VM project suggested by sekjal (Ian Walls). The second was, in fact, a computer reservation system à la Libki and Powerline. They will consider these two projects with others they have and decide within a week on which they will work. If they chose either or both, then I intend to work closely with them on the specs and functionality. If the undergrads take the reservation system, then it will be a two semester project, the first for doing the design and project planning and specs, the second semester the students and project pass to a second class and instructor for coding.

Whether either of these are picked up by the university or not, this is important enough that while I have a tech assistant with the expertise we may try to hack something ourselves, but it must be harder than it seems at first, so we may need some dev assistance. Again, that depends on me being able to find/retain a tech good at coding. If anybody else wants to start a project we'll be glad to help with coding or testing.

I would like to encourage a public discussion on this subject.

I'm going to cut-paste part of the doc I gave to the school yesterday since it has lots of good links. The formatting got stripped but it's still readable.


--

Greg Lawson
Rolling Hills Consolidated Library
1912 N. Belt Highway
St. Joseph, MO 64506


-----------------------------------------paste------------------

Libraries and schools need a public access control system. Public access
controls permit individuals to login to and use computers based on a number of
controls.



Typical characteristics and features of a public access control system:

Policies enforce:

1. Time restrictions
Time maybe limited to a certain number of minutes/hours per day, for example, 60
minutes. The time needs to be a system configuration on the server/staff
interface.
--need to be able to set max number of sessions while still enforcing the max
total minutes
--staff need the option to manually override and extend time
--need to reset at end of day
--need popup warnings at configurable times before end of session notifying user
their time is about to expire.

2. Authentication

The user must authenticate, typically via account ID and password, that they are an authorized user. This is frequently done by querying a database using the
SIP interface.

There should also be a local user database for guest users who are temporary or do not have a database entry. This feature is obviously controlled by staff. For legal accountability reasons, there should also be a free-text field for staff
to enter credentials, like name and driver's license details.

3. Print controls
When a user prints from an application (web browser, text editor, etc), there should be a popup which calculates the price of the print job, based on policies assigned to printers which are also configured in the system, and requires the
user to click-through the popup, accepting the charges.
4. Prohibit changes to the operating system;

5. Miscellaneous
Policies also enforce end-of-day shutdown times. This requires the creation of "buildings" (or better, areas or sections). If a facility closes, for example, at 8:00pm, and a user logs on at 7:15pm, the system must only allocate enough
time to the session up to the closing time. Most systems will have a "real"
closing time, but have a forced logoff time configurable for a certain number of
minutes before closing.

I am aware of two systems available under open licenses that can be used for
examples, Libki and Powerline.

Libki

The sites below list his original version only, I think. I'm not aware that any
of his intended rewritten code was ever posted anywhere.

The existing codebase, however, does still work and can be downloaded and
installed from sourceforge. Even though it is open source however, I strongly
recommend that the new system---your creation--be written from scratch.


Libki-related Sites:

http://libki.org/
note link to rewrite status update*

http://kylehall.info/index.php/2009/02/11/libki-updates/


Important site---contains numerous enhancements we requested. I recommend that all relevant contents of this site be downloaded soonest---with the Libki project possibly
abandoned there is no guarantee this data will remain available.

http://kylehall.info/index.php/projects/libki-kiosk-system/
old site

http://libki.git.sourceforge.net/git/gitweb.cgi?p=libki/server;a=summary

https://sites.google.com/site/rhclpac/home
Not much content, but has phpsip connector code under docs


* "I thought everyone might appreciate knowing how the rewrite is coming along. So far, the server side administration app is nearing completion. Authentication is all that is left to do. The entire app is fully ajax powered and is a single page for everything! It works very well, but could still use some tweaking here and there. After the admin app is done, I will write the REST api, and then be able to finish the client. At that point, phase 1 will be complete!" (comment:
this would be great code to get if you can find it anywhere)




Powerline

Powerline was written by Jesse Weaver. I have never used Powerline, but suspect
it has great potential, and may be a candidate framework for a public access
computing project.


Sites:

http://code.google.com/p/powerline/

http://techsoupforlibraries.org/blog/stop-flipping-burgers-and-come-to-the-
library


Commercial systems:

Userful (http://userful.com)

PC Cop (http://www.cmsdiginet.com/pccop.htm)

Envisionware (http://www.envisionware.com/)

Cassie    (http://www.librarica.com/index.shtml)


Philosophy:

We've used one system with a distributed database, and found that it had trouble sharing data. I would recommend a centralized database, using either Postgresql
or MySql.

Code license should be under the terms of the Gnu Public License (GPL) version 3
or any subsequent version.

Git is highly recommended since it's used for Koha development.



------------------------


Greg

---------------------



On 08/31/2011 08:01 PM, Melissa Parker wrote:
I was doing some research to try and see if there is any sort of computer reservation/ computer management system module in the pipeline for koha. If there is not, is a module of this type even feasible to create for koha?

Thanks

Melissa Parker
SEKLS


_______________________________________________
Koha mailing list  http://koha-community.org
Koha@lists.katipo.co.nz
http://lists.katipo.co.nz/mailman/listinfo/koha


_______________________________________________
Koha mailing list  http://koha-community.org
Koha@lists.katipo.co.nz
http://lists.katipo.co.nz/mailman/listinfo/koha

Reply via email to