Manual Recording
This methodology is good for MR, PET, CT scanners where there is a dedicated operator at the machine, and it is acceptable for them to go to a Calpendo page and click a button when the session starts and again when it stops. This page allows them to provide information about who the user is, which booking this usage is associated with, what the project is, and any other custom information that needs to be recorded (such as the patient details). It also allows the recording of an "outcome" to specify whether the scan went well or there was a problem, perhaps with the scanner, a no-show or something else. (This is the only system that works with Calpendo LITE).
This creates Resource Usage information on the Resource Usage Calendar, linked to actual bookings.
View the Resource Usage chapter for more information on how this works.
Windows PC Based Instruments Where Everybody Logs in to the PC with a Unique Login Name
This methodology uses scripts that can be scheduled to run using the Windows Scheduler. These scripts will tell Calpendo when somebody logs in, and this information is updated every 5 minutes (or however frequently its been configured to update),with who is logged in and what processes are running.
This can be used to calculate actual usage, including checking for periods when particular software is running. This method also includes sending regular updates back to Calpendo using http, so that we know how long software is being used for, and also works properly when the PC crashes. These updates are loaded into a database table, Workflows can then be created to use this information to either create Resource Usage information on the Resource Usage Calendar, to adjust bookings on the Booking Calendar, or any other way a user would like to store usage information.
Windows PC Based Instruments Where We Can Install pGina
pGina is an open source Windows authentication and authorisation system. Along with a Calpendo plugin, this supports recording actual usage regardless of whether everybody has a different login on the PC.
On Windows Pro and Windows Enterprise, it can also prohibit running certain software on the computer, while still allowing them to log in.
This method also includes sending regular updates back to Calpendo so that we know how long software is being used for, and also works properly when the PC crashes. These updates are loaded into a database table (the same one used in the above methodology), Workflows can then be created to use this information to either create Resource Usage information on the Resource Usage Calendar, to adjust bookings on the Booking Calendar, or any other way a user would like to store usage information.
Calpendo Activity Recorder (CAR)
CAR (Calpendo Activity Recorder) is a stand-alone Windows native program that runs both as a service and also an instance in each user session.
•Authenticates the user, using the adminstartors choice of authentication method such as local Windows authentication, LDAP, Active Directory or sending a username/password to Calpendo.
•Keeps track of particular processes that are running.
•Asks Calpendo for authorisation for the user to run those processes.
•When CAR finds one of its target processes running, and the user has not been authorised, then CAR will can kill or close the process, or warn the user they shouldn't be using it, or do nothing.
•All activity is recorded in the Calpendo database.
•The format of the data sent over the network has changed, which means that if either the pGina or PowerShell are already installed as methods of gathering remote actual usage information, then Calpendo will need to be upgraded to the latest versions to remain compatible.
•The data recorded in the Calpendo database has also changed slightly.
Sign In/Sign Out System
This methodology allows the administrator to put a tablet next to an instrument, or possibly use a computer, and have a web page that lets people sign in. At the end, they sign out again. The tablet would be permanently set to be talking to a specific URL, which would display a custom Calpendo page for this purpose. The page could not only ask for login details, but could also display such things as a clock, to show how long they have been logged in, how long until the next booking is due to start, or just general information about the next booking. This page is generated by a Workflow inside Calpendo.
Also, Calpendo can be configured to turn a computer monitor on and off when somebody signs in and out allowing and stopping access. This is done by using some hardware on the network which the Calpendo talks to, to switch a relay on and off which switches the monitor on and off.
Workflows would use the login/logout information to either create Resource Usage information on the Resource Usage Calendar, to adjust bookings on the Booking Calendar, or any other way a user would like to store usage information.
Actual Usage Data Storage
The data from the remote Actual Usage systems is stored in two Biskits, Remote Process and Remote User Log.
Remote Process:
Property |
Type |
Details |
---|---|---|
name |
String |
Name of the process. |
userLog |
Biskit |
Pointing to Remote User Log (many to one) |
start |
Datetime |
Time the process started. |
processID |
Int |
Remote systems ID for the process |
Remote User Log:
Property |
Type |
Details |
---|---|---|
Type |
JavaEnum |
Possible values: AUTHENTICATION, AUTHORISATION, PING, LOGOUT. |
Accepted |
Boolean |
Whether the user login was accepted |
Comments |
String |
Additional comments to be stored. |
Process Tab |
Type |
Details |
---|---|---|
Processes |
Set |
Pointing to Remote Process |
JSON Tab |
Type |
Details |
---|---|---|
JSON |
. |
Time Tab |
Type |
Details |
---|---|---|
Created |
Datetime |
Time the log data was created. |
RemoteTime |
Datetime |
Time on the remote device. |
User Tab |
Type |
Details |
---|---|---|
Authorized Login Name |
String |
Login name of the authorised user. |
OS Domain Name |
String |
Name of the computer domain. |
OS Login Name |
String |
Name of the user. |
User |
Biskit |
Pointer to User Biskit |
Environment Tab |
Type |
Details |
---|---|---|
Hostname |
String |
Name of the Host sending the usage information. |
OS Version |
String |
OS Version of the host. |
IP Address |
String |
The IP Address Calpendo thinks the system is at. This can vary due to routing, address translation. |
Declared IP Addresses |
String |
The absolute IP Address(es) of the system. The address the system thinks it is. |
Remote Activity Recorder |
String |
Specifies which software is being used to return the Remote User Log information. |
Activity Recorder Version |
String |
Holds the version number of the activity recorder. |