An open API service indexing awesome lists of open source software.

https://github.com/brand07/python--apex-connect-and-go

Python program that allows you to automatically enter new users into the Apex locker system.
https://github.com/brand07/python--apex-connect-and-go

apex apexconnectandgo automation helium pandas python selenium selenium-python selenium-webdriver trajectory

Last synced: 2 months ago
JSON representation

Python program that allows you to automatically enter new users into the Apex locker system.

Awesome Lists containing this project

README

          

# (Work in Progress)

# Apex User Management Automation

This project automates the process of adding and editing users in the Apex system using Python and the Helium library for browser automation.

## Prerequisites

- Python 3.14 or higher
- Firefox browser
- `pip` for managing Python packages

## Installation

1. Clone the repository:
```sh
git clone https://github.com/Brand07/Python--Apex-Connect-And-Go.git
```

2. Install the required Python packages:
```sh
pip install -r requirements.txt
```

3. Create a `.env` file in the root directory with the following content:
```dotenv
APEX_URL=www.apexconnectandgo.com
APEX_USERNAME=your_username
APEX_PASSWORD=your_password
```

4. Place the `New_Apex_Users.xlsx` file in the root directory. This file should contain the user data to be added or edited.

## Usage

Run the script to start the automation process:
```sh
python main.py
```

## Logging

Logs are written to both the console and a file named `apex.log` in the root directory. The log file contains information about the users added or edited and any errors encountered during the process.

## Exception Handling

Custom exceptions are defined in the `exceptions.py` file. The `LoginError` exception is raised if there is an issue with logging into the Apex system.

## Project Structure

- `main.py`: The main script that performs the automation.
- `fresh_import.py`: Controls the optional ticket logging.
- `exceptions.py`: Contains custom exception classes.
- `requirements.txt`: Lists the Python dependencies for the project.
- `.env`: Contains environment variables for the Apex URL, username, and password.
- `apex.log`: Log file for the automation process.

## (Optional) FreshService Ticket Logging

Using the official FreshService API, automatic ticket logging can be achieved by setting the ``LogTickets`` bool to ``True`` and having the following information:
- ``requester_id``
- ``responder_id``
- ``group_id``
- ``api_key``
- ``api_url``

See the ``fresh_import.py`` file for more details.

## Note
This project is geared mostly to my environment. With that being said, you will more than likely need to change some things such as the group assignments, badge number format, etc.
Open an issue if you'd like some assistance with this.

## License

This project is licensed under the MIT License. See the `LICENSE` file for more details.