Skip to content

jordangarrison/whats-my-status

Repository files navigation

What's My Status?

What's my status? is a command line utility that allows you to set your status on multiple platforms at once.

Installation

GUI

To install the GUI, download the binary for your platform from the latest release.

MacOS

Simply unzip the file and drag it into your Applications folder.

Windows

Simply unzip the file and drag it into your Start Menu.

Linux

To install run the following after downloading the tarball:

tar -Jvf whats-my-status-linux-*.xz
cd whats-my-status-linux-*
sudo make install

To uninstall run the following:

sudo make uninstall

CLI

To install the cli, download the binary for your platform from the latest release and place it in your $PATH.

You can install from the go command:

go install github.com/jordangarrison/whats-my-status/wms@latest

Setup

Copy the .wms.example.yaml file to ~/.wms.yaml and edit it to your liking.

The general stucture of the file is as follows:

# workspaces are the places you want to set your status
workspaces:
  - name: <your-slack-org>
    type: slack
    token: <your-slack-token>
  - name: <your-github-user>
    type: github
    token: <your-github-user-scope-token>
aliases:
  - name: myalias
    status:
      StatusMessage: "I'm doing something"
      Emoji: :smile:
      Time: "30m"

Aliases

You can set up aliases for your status commands. For example, if you want to set your status to "Focus time", you can do the following:

aliases:
  - name: focus
    status:
      StatusMessage: "Focus Time"
      Emoji: ":compute:"
      Time: "1h"

You can run this alias simply with the following command:

wms status focus

The clear alias is a preset alias which will clear your status on all your workspaces.

Tokens

You will need to generate tokens for access to your workspaces.

Slack

For now, slack uses an old style token. You can generate it following these steps from the Emacs Slack Repo (yuya373/emacs-slack):

  • Navigate to your Slack workspace customization portal at https://[your-workspace].slack.com/customize
  • Log in with your credentials for the workspace if needed
  • Open the console (Ctrl+Shift+J on Linux/Windows, Cmd+Opt+J on Mac)
  • Run the following command: window.prompt('your api token is: ', TS.boot_data.api_token)
  • Copy token to your ~/.wms.yaml file

GitHub

For github navigate to your profile tokens settings and generate a new token with the following scopes:

  • user

Platform Support

  • Slack
  • GitHub
  • Discord
  • Google Hangouts
  • Microsoft Teams
  • Nextcloud
  • Matrix (via Riot)