Old_presence_checker is a project mainly written in RUBY and JAVASCRIPT, it's free.
Register and Confirm Students Presence (collaborate with Moodle)
== Presence Checker
Presence Cheker checks students presence by authenticating user using Single Sign On (SSO) and source IP address. It can be used with Moodle to omitting user information input (However if you do not federate Moodle with SSO, user must be authenticated twice by Moodle and SSO).
== Installation
You can checkout latest version from github.com
% git clone git://github.com/toyokazu/presence_checker.git
% cd presence_checker
This application requires the following Gems:
rails >= 2.3.5 (rails, activesupport, activerecord, actionpack) rubycas-client >= 2.1.0
About installation of RubyGems, refer the URL below: http://docs.rubygems.org/read/chapter/3
After installing RubyGems, you can install required gems by the command below:
% sudo gem install rails rubycas-client
== DB configuration
If you use SQLite3 as a repository, just copy config/database.yml.sample to config/database.yml.
% cp config/database.yml.sample config/database.yml
Then initalize database,
% rake db:migrate
You can create initial data by using db/seeds.rb script.
% vi db/seeds.rb
% rake db:seed
== Starting server
For testing, just use WEBrick.
% script/server
and access http://localhost:3000/.
For production, thin may be good for now.
% sudo gem install thin
% thin config --config config/thin.conf --servers 4 --prefix /presence-checker --daemonize --environment production --port 4030
% rake db:migrate RAILS_ENV=production % rake db:seed RAILS_ENV=production
% thin start --config config/thin.conf
You can use Apache 2.2 as a reverse proxy to the thin servers.
% sudo vi /etc/apache2/httpd.conf ... LoadModule proxy_balancer_module libexec/apache2/mod_proxy_balancer.so ... ProxyPass /presence-checker balancer://presence-checker ProxyPassReverse /presence-checker balancer://presence-checker <Proxy "balancer://presence-checker"> BalancerMember http://localhost:4030/presence-checker loadfactor=1 BalancerMember http://localhost:4031/presence-checker loadfactor=1 BalancerMember http://localhost:4032/presence-checker loadfactor=1 BalancerMember http://localhost:4033/presence-checker loadfactor=1
== Collaborate with Moodle
Create web link to URL https://pchecker-host/pchecker-path/presences/new at Moodle course by setting "extended parameters" named as follows:
login = User - User Name name = User - Sir & Given Name mail = User - Mail Address moodle_course_id = Course - id
Assumed new window size (width, height) = (800, 600) for default css (precense_checker.css).
Create course at Presence Checker (access URL https://pchecker-host/pchecker-path/courses/new) The new course should have the moodle_course_id of your course.
== Use without Moodle
You can also register presence without Moodle. In this case, students must input their profiles manually. This function is basiclly for the students unregistered to the Moodle.