Skip to content

groupboard/tutor-scheduler

Repository files navigation

                        PHP Tutor Scheduler

INTRODUCTION

This is a very basic scheduling system for an online tutoring website. It is designed to integrate with Groupworld (https://www.groupworld.net), both hosted and enterprise versions, but could easily be modified to support other online tutoring systems.

FEATURES

- Admin control panel for creating users and sessions.
- Automatically tracks login and logout times for users in the session.
- Ability to set start time and length for session, which is enforced.
- Users can log in 5 minutes before session (this can be configured).
- When users log in they can see their scheduled sessions for the next 24
  hours and prior 2 hours. Users can log into sessions starting within the 
  next 5 minutes, or sessions that have already started.
- Reminders automatically emailed to users 1 day and 1 hour before session.

INSTALLATION

[1] Edit config.php and db.php to your requirements.
[2] Create the database:

mysql -u root < tutor_scheduler.sql
mysql_setpermission -u root
(add a user "groupworld" to database "tutor_scheduler" with extended user 
privileges)

[3] Create an admin user:
mysql -u groupworld
use tutor_scheduler
insert into user values(null, 'admin', 'A', now(), '[email protected]', 'password', 'admin', 'user', '', '', '', '', '', '', 101);

(replace '[email protected]' and 'password' with the admin username and password you want to use)

[4] To automatically send out reminders, add a line like this to crontab (use the correct path to the send_reminders.php script):

0,5,10,15,20,25,30,35,40,45,50,55  *  * * * nice -19 php /home/tutor_scheduler/admin/send_reminders.php

[5] Log on as admin:

https://yourserver.com/tutor_scheduler/

USING THE SYSTEM

[1] Create students and teachers in the admin control panel.
[2] Create sessions for those users in the admin control panel.
[3] Teacher and students log in at the appointed time and are directed to their Groupworld conference room.
[4] After the session has ended, users are automatically logged off. The start time is determined by the time that both users have logged in, and the end time is the start time + the scheduled session length.
[5] Users' login and logout times are stored in the session list.

Admin users can log into any session.

CUSTOMIZATION

See http://www.groupworld.net/api.shtml

API parameters can be added to room.php, just before the groupworld.htmlgen call.

By default each session is allocated its own Groupworld room, with its own storage space and whiteboard state. To make it so that the whiteboard is not persistent (i.e. that the contents are deleted when all users log off), just set the persistent_whiteboards Groupworld server option to false (/usr/local/groupworld/data/options in the enterprise license, or the "server configuration" page in the hosted control panel).

About

Basic php/mysql scheduling system for online tutoring

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published