NEMO-rs2-access


NameNEMO-rs2-access JSON
Version 1.5.4 PyPI version JSON
download
home_pagehttps://gitlab.com/nemo-community/atlantis-labs/nemo-rs2-access
SummaryInstall RS2 access plugin for NEMO
upload_time2024-04-20 19:58:02
maintainerNone
docs_urlNone
authorAtlantis Labs LLC
requires_python>=3.8
licenseMIT
keywords nemo
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # NEMO RS2 Access plugin

This plugin for NEMO allows to sync up area access with the RS2 Access system.

# Installation

1. `pip install NEMO-rs2-access`
2. in `settings.py` add to `INSTALLED_APPS`:
```python
INSTALLED_APPS = [
  '...',
  'NEMO_rs2_access',
  '...'
]
```
3. add the RS2 access information:
```python
RS2_ACCESS = {
  "url": "",
  "timeout": 30, # timeout in seconds
  "public_key": "",
  "auth": {
    "user_id": "",
    "password": ""
  },
   # Uncomment to change the default CardHolder sync field 
   # Choices are "CardholderId", "CardNumber", "CardId", or cardholder attribute like "UserColumns.UserText1"
   # "user_sync_field": "CardNumber",
   # Uncomment to use the sync field as an attribute of Cardholder (default is False, meaning it is an attribute of the Event)
   # "cardholder_sync": False,
   # Uncomment to change the default NEMO sync field, for example `details__employee_id`
   # "nemo_user_sync_field": "badge_number",
   # Uncomment to change the default buffer in seconds, used to prevent potential duplicates and potential missing events between calls to readers
   # "buffer_in_seconds": "7",
}

```
4. enable and start systemd tasks (examples in this [systemd folder](https://gitlab.com/nemo-community/atlantis-labs/nemo-rs2-access/-/tree/main/resources/systemd)):
   * nemo_rs2_sync_readers (every hour or every day)
   * nemo_rs2_sync_access (every minute)

Notes:
1. In Detailed administration -> Customization, a customization with key `rs2_event_begin_date` and date value for example `2023-05-18T19:30:16` can be set prior to the first run to grab data starting at that date.
2. If not set, the system will start syncing from the beginning of the current day
3. The systemd tasks can also be run manually from Detailed admin -> RS2 Access -> Reader -> select any reader (doesn't matter which one) and use the action dropdown to run the sync.

## Usage
1. Run the `sync reader` action via systemd or Detailed administration
2. Edit the relevant readers and associate them with an Area and a type (Entrance or Exit)
3. Set Badge numbers in NEMO users
4. Run the `sync access` action via systemd or Detailed administration

## Project selection rules
Upon login, the first active project is selected since all that matters is that we have a placeholder.

When updating the record on logout, the project is set using the following rules:
 1. If the user has only one active project, use it
 2. Check tool usage for this user since login time (non-remote) and create one record for each distinct account
 3. If there is no tool usage, use the default project (set in user preferences)
 4. If there is no default project, use the first active project by relation id (first added)

            

Raw data

            {
    "_id": null,
    "home_page": "https://gitlab.com/nemo-community/atlantis-labs/nemo-rs2-access",
    "name": "NEMO-rs2-access",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "NEMO",
    "author": "Atlantis Labs LLC",
    "author_email": "atlantis@atlantislabs.io",
    "download_url": null,
    "platform": null,
    "description": "# NEMO RS2 Access plugin\n\nThis plugin for NEMO allows to sync up area access with the RS2 Access system.\n\n# Installation\n\n1. `pip install NEMO-rs2-access`\n2. in `settings.py` add to `INSTALLED_APPS`:\n```python\nINSTALLED_APPS = [\n  '...',\n  'NEMO_rs2_access',\n  '...'\n]\n```\n3. add the RS2 access information:\n```python\nRS2_ACCESS = {\n  \"url\": \"\",\n  \"timeout\": 30, # timeout in seconds\n  \"public_key\": \"\",\n  \"auth\": {\n    \"user_id\": \"\",\n    \"password\": \"\"\n  },\n   # Uncomment to change the default CardHolder sync field \n   # Choices are \"CardholderId\", \"CardNumber\", \"CardId\", or cardholder attribute like \"UserColumns.UserText1\"\n   # \"user_sync_field\": \"CardNumber\",\n   # Uncomment to use the sync field as an attribute of Cardholder (default is False, meaning it is an attribute of the Event)\n   # \"cardholder_sync\": False,\n   # Uncomment to change the default NEMO sync field, for example `details__employee_id`\n   # \"nemo_user_sync_field\": \"badge_number\",\n   # Uncomment to change the default buffer in seconds, used to prevent potential duplicates and potential missing events between calls to readers\n   # \"buffer_in_seconds\": \"7\",\n}\n\n```\n4. enable and start systemd tasks (examples in this [systemd folder](https://gitlab.com/nemo-community/atlantis-labs/nemo-rs2-access/-/tree/main/resources/systemd)):\n   * nemo_rs2_sync_readers (every hour or every day)\n   * nemo_rs2_sync_access (every minute)\n\nNotes:\n1. In Detailed administration -> Customization, a customization with key `rs2_event_begin_date` and date value for example `2023-05-18T19:30:16` can be set prior to the first run to grab data starting at that date.\n2. If not set, the system will start syncing from the beginning of the current day\n3. The systemd tasks can also be run manually from Detailed admin -> RS2 Access -> Reader -> select any reader (doesn't matter which one) and use the action dropdown to run the sync.\n\n## Usage\n1. Run the `sync reader` action via systemd or Detailed administration\n2. Edit the relevant readers and associate them with an Area and a type (Entrance or Exit)\n3. Set Badge numbers in NEMO users\n4. Run the `sync access` action via systemd or Detailed administration\n\n## Project selection rules\nUpon login, the first active project is selected since all that matters is that we have a placeholder.\n\nWhen updating the record on logout, the project is set using the following rules:\n 1. If the user has only one active project, use it\n 2. Check tool usage for this user since login time (non-remote) and create one record for each distinct account\n 3. If there is no tool usage, use the default project (set in user preferences)\n 4. If there is no default project, use the first active project by relation id (first added)\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Install RS2 access plugin for NEMO",
    "version": "1.5.4",
    "project_urls": {
        "Homepage": "https://gitlab.com/nemo-community/atlantis-labs/nemo-rs2-access"
    },
    "split_keywords": [
        "nemo"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "86cef40c09a89130851be1dba6b59c24b931f4ffd4621f9e8af303a7a3cb3e1f",
                "md5": "fb6d417e8b843eff5193021343f27766",
                "sha256": "5143284963d3abd0150789bcedd8a291268b70e1a8838f740a6c15bf749468b6"
            },
            "downloads": -1,
            "filename": "NEMO_rs2_access-1.5.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "fb6d417e8b843eff5193021343f27766",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 26075,
            "upload_time": "2024-04-20T19:58:02",
            "upload_time_iso_8601": "2024-04-20T19:58:02.499851Z",
            "url": "https://files.pythonhosted.org/packages/86/ce/f40c09a89130851be1dba6b59c24b931f4ffd4621f9e8af303a7a3cb3e1f/NEMO_rs2_access-1.5.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-04-20 19:58:02",
    "github": false,
    "gitlab": true,
    "bitbucket": false,
    "codeberg": false,
    "gitlab_user": "nemo-community",
    "gitlab_project": "atlantis-labs",
    "lcname": "nemo-rs2-access"
}
        
Elapsed time: 0.24211s