New question #386621 on Epoptes:
https://answers.launchpad.net/epoptes/+question/386621

The problem

1.      The computer lab is a limiting resource, as there are far more users 
than time and PCs available
2.      Users are therefore restricted to 1 hour a day
3.      Because of gender issues and inter-generational issues at play in the 
community, it is difficult for the young, female lab administrators to enforce 
the restriction
4.      Even if enforcement wasn’t a challenge, it is also difficult to 
manually track who has used up their time allocation in a busy lab

The solution

1.      A user administration area where user time allocations are set, and 
remaining hours viewed
2.      A tool which tracks user time based on when they logged in
3.      A remote control app that notifies users and then locks them out when 
their time is up

The technical parameters

Time allocations

Complex mapping of users to time allocations and rolling windows, with groups 
and rules
Group   Hours per week  Max per day
1       5       1
2       5       2
3       10      2
4       10      5

Usage logging

•       Time starts on login and is tracked against the usage for the current 
date
•       The time used must accumulate against a user’s allocation, even if they 
use different client PCs each time, and even if they log on and off multiple 
times in a day.

Notification and logout

1.      User is warned 10 minutes before deadline
2.      User is warned 2 minutes before deadline
3.      Logout happens at deadline

Note: It would be very useful if users could see all previous usage, usage 
remaining for the day, and usage remaining for the week, so that they can 
prioritise their work in terms of the remaining time available.

Platforms

The software has to work on a somewhat rare configuration:

•       The device to be locked is a Raspberry Pi running as a fat client using 
PiNet and booting Raspbian OS
•       User login occurs on the Pi, but is logged on the PiNet server
•       The PiNet server has Epoptes for client management
•       Epoptes has routines for broadcast to user, and logging off/restarting 
specific devices
•       There are other logging tools that know how many hours the user was 
logged in for – e.g. psacct or acct

Challenges

•       Cannot log only a single continuous user session of 1 hour – what 
happens if the computer logs off, reboots etc.
•       A accidental or forced reboot should suspend the user time tracking 
until they login again
•       The final logout should happen no matter if files are open, but should 
ideally not commonly result in loss of data
•       “an hour a day” doesn’t necessarily match resource allocations and load 
balancing.  5 hours in a week, no more than 2 hours a day might be better.
•       Lab managers have to make sure that users don’t register multiple times
•       Administrative override is probably necessary, but then puts pressure 
on lab administrators to bend the rules
•       Epoptes appears not to have a plugin or API architecture
•       If we build for epoptes, then the benefit is spread to all epoptes 
users on all platforms, not just fat client RPi
•       Does epoptes know anything about users, or only about clients?  Client 
PCs are identified by client name, not user name
•       Where should the locus of control be?
o       It can't be on the RP itself, because then the user could just go to 
another RP.
o       It could be PiNet istelf, since PiNet knows about the users.
o       It could be Epoptes, since that also knows about the users, and has 
logout and broadcast capabilities.  However, there is no API or plugin system 
for Epoptes, so development could be hard.
o       Finally, could it be the Ubuntu server itself, if the server knows when 
a user is logging into the RP?

Questions

Please contact me if you have any questions regarding the scope.

Assistance sought

We are seeking developers to assist with the coding as follows:

•       International developers on a voluntary basis – we will highlight your 
contribution online, in our media, and in the system documentation
•       South African developers on a voluntary basis – all of the above, plus 
points on your BEE scorecard, and/or a tax deduction certificate (the software 
recipient is a accredited non-profit organisation)

Please respond if you are able to help



-- 
You received this question notification because your team Epoptes
Developers is an answer contact for Epoptes.

-- 
Mailing list: https://launchpad.net/~epoptes
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~epoptes
More help   : https://help.launchpad.net/ListHelp

Reply via email to