The Inout Management System is a web tool for keeping track of individuals entering and leaving library spaces like study areas and reading rooms. Using barcode scanning, the system records entry and exit times, pulling user data and images from the Koha database. It has separate interfaces for barcode scanning and report access. Four report types can be generated as downloadable Excel files. Three default users manage the system: a master user with access to all locations, and two others for specific areas. Utilizing the Koha database, the system retrieves patron information and stores it with location and time stamps in a separate database. This data can be accessed through the admin panel with various filters like date, time, and user identification.
System Needs:
Software:
- Apache (Existing on the Koha server)
- PHP
- MySQL (Existing on the Koha server)
- Any basic text editor such as vim, mousepad, leafpad, or gedit.
Hardware:
A computer equipped with a widescreen monitor
Automatic barcode scanner
Installation:
PHP Installation: for Debian 10 & Ubuntu 20.04 LTS
Access your terminal and input the commands below.
sudo apt-get install -y git php libapache2-mod-php php-{bcmath,bz2,intl,gd,mbstring,mysql,zip}
cd /usr/share/koha/opac/htdocs
git clone –recursive https://github.com/omkar2403/inout.git
sudo chmod 755 -R inout
sudo chown www-data:www-data -R inout
Database Setup:
Access the MySQL shell to establish a database, user, and password for Inout.
sudo su
mysql -uroot -p
[Input your MySQL Root password]
CREATE database libinout;
CREATE USER ’libinout’@’localhost’ IDENTIFIED BY ’libinout123’;
GRANT ALL PRIVILEGES ON *.* TO ’libinout’@’localhost’ WITH GRANT OPTION;
FLUSH PRIVILEGES;
quit;
In this example, ‘libinout’ represents the database, ’libinout’ the database username, and ’libinout123’ the database password. Remember to customize these with your chosen credentials. Now, restore the sample database located in the ‘inout/DB’ directory.
Input the following command in the terminal
sudo su
**mysql -uroot -p libinout < ***/usr/share/koha/opac/htdocs/inout/DB/**inout.sql **
[Input your MySQL Root password, for example, mysqlroot]
Update the database name, username, and password in the dbconn.php file, found within the ‘inout’ directory at line number 3, to match your chosen connection details.
**sudo vim /usr/share/koha/opac/htdocs/inout/**functions/dbconn.php
Restart Apache
sudo systemctl reload apache2 && sudo systemctl restart apache2
The system is now operational.
You can reach it at the following address:
http://127.0.0.1/inout/login.php
Important: If you encounter a 404 Error Page Not Found, take the following steps.
Confirm the ‘inout’ Directory
Ensure the system is installed within the /usr/share/koha/opac/htdocs/ directory.
Verify the Port Number
Many libraries modify their default OPAC port number.
Typically, the Inout system is accessed through http://127.0.0.1/inout using the default port 80.
However, in cases where a different OPAC port number is used, for example, http://127.0.0.1:8001,
Access Inout with the corresponding port: http://127.0.0.1:8001/inout
Backing Up the libinout Database
sudo su
mysqldump -ulibinout -plibinout123 libinout | xz > libinout-$(date +%d-%m-%Y-%H.%M).sql.xz
Resolving Character Length Issues
Card numbers exceeding 11 characters might not function correctly with Inout. To address this:
Open the MySQL shell
sudo mysql -uroot -p
USE libinout;
ALTER TABLE ‘inout’ CHANGE ‘cardnumber’ ‘cardnumber’ VARCHAR(50);
FLUSH PRIVILEGES;
quit;
References:
https://github.com/omkar2403/inout
https://writeride.com/how-to-install-in-out-management-system/

