No description
Find a file
Patryk Hegenberg b083a8255c Merge branch 'dev/refactor-from-functioning-state'
* dev/refactor-from-functioning-state:
  feat: add filename to exported exceltable
  feat: add basic excel export
  refactor: seperate application into seperate files and add killForwarding
  refactor: introduce TimeWarrior struct
  refactor: introduce app struct
  feat: add cli commands for start, stop and show
  refactor: change FunctionNames to be more generic
  refactor(config): change config location and keyword names
2025-01-03 18:13:47 +01:00
.gitignore fix: remove config file from repo 2024-12-28 11:57:07 +01:00
app.go feat: add filename to exported exceltable 2025-01-03 17:14:19 +01:00
cmd.go feat: add filename to exported exceltable 2025-01-03 17:14:19 +01:00
config.go feat: add filename to exported exceltable 2025-01-03 17:14:19 +01:00
forwarder.go refactor: seperate application into seperate files and add killForwarding 2025-01-03 12:50:04 +01:00
go.mod feat: add basic excel export 2025-01-03 16:56:03 +01:00
go.sum feat: add basic excel export 2025-01-03 16:56:03 +01:00
main.go refactor: seperate application into seperate files and add killForwarding 2025-01-03 12:50:04 +01:00
README.md docs(README): add README 2024-12-28 11:49:24 +01:00
ssh.go refactor: seperate application into seperate files and add killForwarding 2025-01-03 12:50:04 +01:00
timewarrior.go feat: add filename to exported exceltable 2025-01-03 17:14:19 +01:00

Work Time Management and Remote Connection Tool

Description

This Golang program is a versatile tool for work time management and remote connections. It offers various functions such as starting and stopping work time tracking, displaying work time summaries, waking remote computers, and establishing SSH and RDP connections.

Main Features

  • Work time tracking with timew (TimeWarrior)
  • Remote computer wake-up function (Wake-on-LAN)
  • SSH tunneling and port forwarding
  • RDP connection establishment

Prerequisites

  • Go (Golang) installed
  • TimeWarrior (timew) installed
  • SSH access to remote systems
  • xfreerdp for RDP connections

Configuration

The program expects a configuration file with the following settings:

  • SSHHost, SSHPort, SSHUser
  • VardaHost, VardaUser
  • LouIP, LouHost, LouMac
  • RDPUser, RDPPassword

Make sure these configuration details are correctly set before running the program.

Usage

The program provides various commands that can be invoked through a user interface or command line:

  • Start: Starts work time tracking and establishes connections
  • stop Work: Stops work time tracking
  • start break / stop break: Manages breaks
  • show week summary / show month summary: Displays work time summaries
  • wake lou: Wakes the remote computer "Lou"
  • connect to varda / connect to lou: Establishes connections to remote systems
  • start rdp connection: Initiates an RDP connection

Security Notes

  • Use secure passwords and SSH keys.
  • Check network security settings for port forwarding.
  • Be cautious when using ssh.InsecureIgnoreHostKey() in production environments.

Troubleshooting

If you encounter issues, check:

  • Network connections and firewalls
  • SSH keys and permissions
  • Correct IP addresses and port numbers in the configuration

Contribution

Contributions to improve this tool are welcome. Please create a pull request or report issues using the repository's Issues feature.