Skip to content

A small utility to sync your Luxafor flag with your Toggl activity

Notifications You must be signed in to change notification settings

gee-forr/luxafor-toggl

Repository files navigation

Luxafor Toggl Syncer

This is a small utility to synchronise your Luxafor Flag with your Toggl activity

  • The utility will turn your flag red if you're busy tracking time to indicate that you're busy
  • The utility will turn your flag green you have stopped tracking time to indicate that you're free
  • The utility will switch off your flag if you haven't tracked any time within 2 hours to indicate that you're idle

NOTE It might work with other webhook enabled Luxafor devices. I don't have any other ones besides the flag, which is a pretty cool gadget.

Installation

This gem is not meant for integration into a project via a Gemfile. It is meant for running as a standalone utility.

gem install luxafor-toggl

Usage

export LUXAFOR_KEY=abc123 # Get me from your luxafor app webhook settings
export TOGGL_KEY=123abc   # Get me from your toggl user account

luxafor-toggl

Cron Usage

Have it sync once every 2 minutes

*/2 * * * * LUXAFOR_KEY=abc123 TOGGL_KEY=123abc /path/to/luxafor-toggl

Configuration

You can control certain aspects of the utility by setting a few environment variables:

  • LUXAFOR_KEY: Required for controlling your Luxafor flag
  • TOGGL_KEY: Required for reading from your Toggl account
  • LUXAFOR_TOGGL_STATE_FILE: Optional. Default: /tmp/myuser-luxafor-toggl-state.json. Keeps state between runs. Delete this file to reset the utility's state.
  • LUXAFOR_TOGGL_IDLE_TIME: Optional. Default: 7200. Time in seconds before you're considered idle.

Development

After checking out the repo, run bin/setup to install dependencies. Then, run rake spec to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and tags, and push the .gem file to rubygems.org.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/gee-forr/luxafor-toggl. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.

Code of Conduct

Everyone interacting in the Luxafor::Toggl project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.

About

A small utility to sync your Luxafor flag with your Toggl activity

Topics

Resources

Code of conduct

Stars

Watchers

Forks

Packages

No packages published