[16.0][ADD] hr_attendance_idsecure: iDSecure (ControliD) attendance integration - #262
Open
marcos-mendez wants to merge 1 commit into
Open
[16.0][ADD] hr_attendance_idsecure: iDSecure (ControliD) attendance integration#262marcos-mendez wants to merge 1 commit into
marcos-mendez wants to merge 1 commit into
Conversation
marcos-mendez
force-pushed
the
16.0-add-hr_attendance_idsecure
branch
7 times, most recently
from
March 12, 2026 12:45
13f9ec0 to
61296d7
Compare
This was referenced Mar 14, 2026
Merged
Closed
This was referenced Mar 16, 2026
Open
[16.0][IMP] purchase_sale_stock_inter_company: make pickings link configurable
OCA/multi-company#776
Closed
Merged
marcos-mendez
force-pushed
the
16.0-add-hr_attendance_idsecure
branch
from
August 21, 2026 16:29
ece6f2c to
d498f7e
Compare
marcos-mendez
force-pushed
the
16.0-add-hr_attendance_idsecure
branch
2 times, most recently
from
August 21, 2026 16:47
d86535d to
8613b63
Compare
…tion Imports access events from a ControliD iDSecure appliance and turns them into hr.attendance records. Features: * polls the appliance on a cron and pairs entry/exit events into attendances, inferring the direction from the open shift when the device does not report it reliably; * maps iDSecure groups to Odoo companies, so a single turnstile can feed several companies and skip the ones that must not be imported (visitors, contractors); * a wizard to link iDSecure users that have no employee yet, suggesting a match by name, and another to re-import a date range from the appliance; * posts to the employee chatter when a punch cannot be recorded, so HR sees the gap instead of losing it silently; * Odoo's own overlap errors are treated as success, since they mean the attendance already exists — but a real absence error is still surfaced. The appliance reports wall-clock time with no offset on its report endpoint, so the device timezone is a required field and the value is converted to UTC before storing. The monitor endpoint returns a .NET epoch, which is absolute and needs no conversion. Events coming from the report endpoint carry no idLog, so uniqueness is enforced by a partial index that only applies when idLog is set. Tested with 112 unit tests, 95% coverage. The appliance is always mocked: no test reaches a real turnstile.
marcos-mendez
force-pushed
the
16.0-add-hr_attendance_idsecure
branch
from
August 21, 2026 16:51
8613b63 to
b253081
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Automatic attendance from ControliD iDSecure access control turnstiles.
Features:
FU RV