Giter Club home page Giter Club logo

ases_hours_logger's Introduction

ases_hours_logger

Python Selenium-Based Hour Logger for ASES

Description

This tool is designed to streamline the process of booking work hours for employees using the ASES tool from ATOSS. It is optimized for websites in German.

demo-gif

Key Features

  • Time-Saving Automation: The tool automates the process of logging hours, aiming to save employees valuable time.
  • Intelligent Booking: It excludes vacation days and weekends from the booking process, ensuring hours are only logged on available workdays.
  • Error Prevention: The script avoids duplicating entries on days that have already been booked, minimizing errors in the logging process.

Usage Instructions

Run the script, taking note of the following considerations:

  • Language Assumption: The tool assumes the website language is German. Adjust if necessary.
  • Post-Script Verification: After running the script, it is essential for the employee to verify the accuracy of the logged hours, make any necessary adjustments, and manually click on the SAVE button (or activate the AUTOSAVE setting at your own risk).

By leveraging this tool, employees can enhance efficiency in the hours booking process while maintaining control over the final submission. Feel free to customize settings and provide feedback for further improvements.

Setup

To run the script, follow these steps:

  1. Install the required dependencies:

    pip3 install -r requirements.txt
  2. Create your settings file as settings.json. You can use settings.json.example as a template. Adjust the following setting parameters:

    Key Description Default
    ASES_URL The URL to access the ASES webpage of your employer your_ases_url
    USE_ASES_CREDENTIALS Boolean describing if ASES credentials are to be used false
    ASES_USERNAME Username to your ASES account your_ases_username
    ASES_PASSWORD Password to your ASES account your_ases_password
    LOGIN_DROP_DOWN_INDEX Index of the item to be selected in the login page drop down menu 5
    AUTOSAVE For automatically saving your changes after the script run set this to true. Do this at your own risk false
    TIME_SLOTS Define the time slots you want to log. These assume an 8-hour shift with a 1-hour lunch break each day. On Fridays only 7 hours are booked. You can adjust this at will see settings.json.example file
    USE_KEEPASS_CREDENTIALS Boolean describing if KeePass credentials are to be used false
    KEEPASS_DATABASE_FILE_PATH Path to your KeePass database .kdbx file your_keepass_database_file_path
    KEEPASS_ENTRY_TITLE Title of the KeePass entry containing the user credentials for ASES your_keepass_ases_entry_title
    BUFFER_TIME The time in seconds that passes between each browser action. We need a bit of time between actions for performance reasons. Only adjust if needed, for example, if your internet connection is slow 0.3
    FINAL_WAIT_IN_SEC The time in seconds that the browser window will remain open after completing all booking actions 60
    VERBOSE Set the output of log messages for the developer mode to display more information during processing true
  3. Connect to your employers VPN if necessary.

  4. Run the script. You can do this by giving the username and password as command line arguments:

    python3 hour_logger.py "ASES_USERNAME" "ASES_PASSWORD"

    Or by using the ASES credentials or credentials stored in your KeePass. Be sure to configure the setting parameters USE_ASES_CREDENTIALS, ASES_USERNAME, ASES_PASSWORD, USE_KEEPASS_CREDENTIALS, KEEPASS_DATABASE_FILE_PATH and KEEPASS_ENTRY_TITLE accordingly. After this, run the following command:

    python3 hour_logger.py

    You will be asked to enter then the KeePass master password.

  5. See the magic happen ๐Ÿง™.

  6. Ensure everything was logged correctly and manually click on the "SAVE" button (or activate the AUTOSAVE setting at your own risk).

Feel free to customize the settings to match your specific needs. If you encounter any issues, consider adjusting the waiting times or reaching out for support. Happy logging!

Buy Me a Coffee at ko-fi.com

ases_hours_logger's People

Contributors

jdmbg avatar flesser avatar kori2000 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.