Smos Logo Smos

A comprehensive self-management system

The Notification Tool

Documentation for the Smos Notification Tool, for sending desktop notifications about entries

This tool exists to send desktop notifications about events.

The tool should be run every minute to notify you in time. It will still work as-expected if it is run late, but you might miss notifications if an event has already started by the time the tool is run, for example.

Dependencies

The smos-notify tool will use the notify-send tool from libnotify to send notifications. This means that you need to have set up a notification server. (If you don't know what that is, chances are that it's already set up for you.) See the relevant page on the arch wiki for more information.

The smos-notify tool will also use play from sox to play a sound when there are any notifications. If play is not available, it will still send notifications but not play any sound.

Reference

Arguments

Usage: smos-notify [--config-file FILEPATH] [--workflow-dir FILEPATH] 
                   [--archive-dir FILEPATH] [--projects-dir FILEPATH] 
                   [--archived-projects-dir FILEPATH] [--database FILEPATH] 
                   [--log-level ARG]
  
  Smos Notification Tool version: 0.1.0
  
  Oldest parseable Smos data format version: 0.0.0
  Newest parseable Smos data format version: 1.0.0

Available options:
  -h,--help                Show this help text
  --config-file FILEPATH   The config file to use
  --workflow-dir FILEPATH  The workflow directory to use
  --archive-dir FILEPATH   The archive directory to use
  --projects-dir FILEPATH  The projects directory to use
  --archived-projects-dir FILEPATH
                           The archived projects directory to use
  --database FILEPATH      The path to store the notification database at
  --log-level ARG          The log level to use, options:
                           ["Debug","Info","Warn","Error"]

Environment

Available environment variables:

  SMOS_ARCHIVED_PROJECTS_DIR
                         Archived projects directory
  SMOS_ARCHIVE_DIR
                         Archive directory
  SMOS_CONFIG_FILE
                         Workflow directory
  SMOS_LOG_LEVEL         log level
  SMOS_PROJECTS_DIR
                         Projects directory
  SMOS_SESSION_PATH
                         The path to store the notification
                         database at
  SMOS_WORKFLOW_DIR
                         Workflow directory

Configuration

# Configuration
workflow-dir: # optional
  # The workflow directory
  <string>
archive-dir: # optional
  # The archive directory
  <string>
projects-dir: # optional
  # The projects directory
  <string>
archived-projects-dir: # optional
  # The archived projects directory
  <string>
notify: # optional
  # Notification Configuration
  # NotifyConfiguration
  database: # optional
    # Database to store sent notifications in
    <string>
  log-level: # optional
    # Log level
    <string>