{"id":15374697,"url":"https://github.com/mrtazz/disrupt","last_synced_at":"2025-03-21T02:29:08.876Z","repository":{"id":20251283,"uuid":"23523990","full_name":"mrtazz/disrupt","owner":"mrtazz","description":"send notifications via multiple providers","archived":false,"fork":false,"pushed_at":"2015-12-10T00:13:57.000Z","size":2000,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-25T23:17:21.231Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mrtazz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-08-31T21:58:24.000Z","updated_at":"2023-07-25T13:53:00.000Z","dependencies_parsed_at":"2022-09-04T00:23:47.394Z","dependency_job_id":null,"html_url":"https://github.com/mrtazz/disrupt","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrtazz%2Fdisrupt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrtazz%2Fdisrupt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrtazz%2Fdisrupt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrtazz%2Fdisrupt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mrtazz","download_url":"https://codeload.github.com/mrtazz/disrupt/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244724904,"owners_count":20499505,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-01T13:59:32.547Z","updated_at":"2025-03-21T02:29:08.849Z","avatar_url":"https://github.com/mrtazz.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# disrupt [![Build Status](https://travis-ci.org/mrtazz/disrupt?branch=master)](https://travis-ci.org/mrtazz/disrupt)\n\n## Overview\nLibrary to enable notifications via multiple providers. Because nothing is\nmore useful than being interrupted more easily. It's possible to register\nmultiple notifiers and when the `NotifyAll` call is run, all of them will be\nnotified.\n\n## Usage\n\n### Library\ndisrupt can be used as a library from other applications like this:\n\n```\n  disrupt.RegisterPushoverNotifier(*pushover_token, *pushover_user)\n  disrupt.RegisterTwilioNotifier(*twilio_sid, *twilio_token, *twilio_from, *twilio_to, *sms_max_char)\n  disrupt.NotifyAll(title, content)\n```\n\n### CLI\ndisrupt also comes with a simple CLI notifier that takes input via STDIN. The\nfirst line is used as the notification title and all subsequent lines are sent\nas the message body. It uses config.ini style parsing for easy scripting and\nalso allows params to be passed in on the command line:\n```\n% ./cli-notifier -help\n  -debug=false: set debug mode\n  -help=false: show help\n  -maxchar=160: max number of characters to use for SMS\n  -pushover=false: send notifications via pushover\n  -pushover_token=\"\": API token for pushover\n  -pushover_user=\"\": pushover user key\n  -twilio=false: send notifications via twilio\n  -twilio_from=\"\": from address for twilio\n  -twilio_sid=\"\": twilio sid\n  -twilio_to=\"\": address to send to via twilio\n  -twilio_token=\"\": twilio token\n\n% cat ~/.config/cli-notifier/config.ini\npushover_token = 999999999999999999\npushover_user  = uuuuuuuuuuuuuuu\npushover       = true\n\ntwilio_sid     = ooooooooooooooooooooooo\ntwilio_token   = 88888888888888888888\ntwilio_from    = +11111111\ntwilio_to      = +2222222\ntwilio         = false\nmaxchar        = 160\n```\n\n## Installation\ngo get it like it's hot.\n\n```\ngo get github.com/mrtazz/disrupt\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrtazz%2Fdisrupt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmrtazz%2Fdisrupt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrtazz%2Fdisrupt/lists"}