Kimai maintainer since 2007
Sie können das Plugin testen auf demo-branch.kimai.org:
Benutzername: susan_super
Passwort: kitten
A Kimai plugin, which allows using barcodes for punch-in
and punch-out
time tracking with Kimai.
You can use it with an attached barcode scanner, or you run Kimai on a device (e.g. tablet) with a built-in camera.
It also supports a “freestyle” mode, which allows to enter any free configurable code (up to 120 characters), so you can also use other devices for starting/stopping:
If you want to use Kimai in a kiosk mode, where your users should only register their attendance time through
punch-in and punch-out mode when entering/leaving the building, then this bundle is the solution for you.
It could be as simple as:
You can test it in the “Plugins” demo.
Code 128
Code 39
UPC-A
(scanner needs to transmit check digit)Code 2 of 5
Code 2 of 5 interleaved
Codabar
(scanner needs to transmit start & stop digits)You need to configure a non-global activity for starting the record via this plugin. This will be used for every recorded timesheet that is created using the kiosk mode.
This is NOT a hardware recommendation, but more an idea for possible use-cases.
I tried the linked products and even though all scanner are rather cheap, they work without problems.
The above are affiliate links for Amazon (germany) where I bought them myself.
You have to configure the bundle before you can use it - you reach the configuration via
Plugin
screen (Preferences
in action dropdown behind the plugin)Kiosk & Barcode
section)The following configurations are available:
Configuration | Description |
---|---|
Login mode |
whether to use camera or usb mode |
Code format |
you have to decide which code format you want to use |
Barcode includes readable code |
whether the barcode in the user profile will include the human readable code |
Duration to display confirmation dialog (in seconds) |
how long the start/stop screens will be shown after a successful scan |
Activity |
the non-global activity that will be used to track the times |
This bundle introduces new permissions, which limit access to certain functions:
Permission Name | Description |
---|---|
barcode_own_profile |
allows to see and administrate barcode for the own user profile |
barcode_other_profile |
allows to see and administrate barcode for all user profiles |
kiosk_own_profile |
allows to configure user specific kiosk settings (eg. start and end time) for the own user profile |
kiosk_other_profile |
allows to configure user specific kiosk settings (eg. start and end time) for all user profiles |
By default, these are granted to each user with the role ROLE_SUPER_ADMIN
.
Die folgende Tabelle enthält einen Vergleich zwischen Plugin und benötigter Kimai Version.
Plugin Version | Minimale Kimai Version |
---|---|
2.1.0 | 2.0 |
1.9 | 1.15 |
1.7 | 1.14 |
Extract the ZIP file and upload the included directory and all files to your Kimai installation to the new directory:
var/plugins/KioskBundle/
The file structure needs to look like this afterwards:
var/plugins/
├── KioskBundle
│ ├── KioskBundle.php
| └ ... more files and directories follow here ...
After uploading the files, Kimai needs to know about the new plugin. It will be found once the cache was re-built. Call these commands from the Kimai directory:
bin/console kimai:reload --env=prod
It is not advised, but in case the above command fails you could try:
rm -r var/cache/prod/*
You might have to set file permissions afterwards:
You have to allow PHP (your webserver process) to write to
var/
and it subdirectories.
Here is an example for Debian/Ubuntu (to be executed inside the Kimai directory):
chown -R :www-data .
chmod -R g+r .
chmod -R g+rw var/
Test Kimai before executing these commands (they are likely not required in a shared-hosting environment).
You probably need to prefix them with sudo
and
the group might be called different than www-data
.
Run the following command:
bin/console kimai:bundle:kiosk:install
This will create the required database tables and update them to the latest version.
There are no commands defined in the "kimai:bundle:XYZ" namespace.
,
then either the directory has a wrong name (must be var/plugins/KioskBundle/) or you forgot to clear the cache (look above).
The following command will install the required assets (images, javascripts, styles):
bin/console assets:install