{"id":227,"name":null,"description":"A simple wrapper for posting to slack channels","url":"https://github.com/slack-notifier/slack-notifier","last_synced_at":"2026-04-30T16:30:28.888Z","repository":{"id":10457790,"uuid":"12629415","full_name":"slack-notifier/slack-notifier","owner":"slack-notifier","description":"A simple wrapper for posting to slack channels","archived":false,"fork":false,"pushed_at":"2023-04-24T07:03:26.000Z","size":204,"stargazers_count":1489,"open_issues_count":24,"forks_count":156,"subscribers_count":12,"default_branch":"main","last_synced_at":"2026-04-01T14:07:41.016Z","etag":null,"topics":["ruby","slack"],"latest_commit_sha":null,"homepage":null,"language":"Ruby","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/slack-notifier.png","metadata":{"files":{"readme":"readme.md","changelog":"changelog.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2013-09-05T21:29:45.000Z","updated_at":"2026-03-26T20:17:02.000Z","dependencies_parsed_at":"2024-05-01T13:20:14.568Z","dependency_job_id":"afba2fb0-8aeb-4292-8280-ed2a0738ba63","html_url":"https://github.com/slack-notifier/slack-notifier","commit_stats":null,"previous_names":["stevenosloan/slack-notifier"],"tags_count":30,"template":false,"template_full_name":null,"purl":"pkg:github/slack-notifier/slack-notifier","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slack-notifier%2Fslack-notifier","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slack-notifier%2Fslack-notifier/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slack-notifier%2Fslack-notifier/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slack-notifier%2Fslack-notifier/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/slack-notifier","download_url":"https://codeload.github.com/slack-notifier/slack-notifier/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slack-notifier%2Fslack-notifier/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31294814,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-02T01:43:37.129Z","status":"online","status_checked_at":"2026-04-02T02:00:08.535Z","response_time":89,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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"}},"owner":{"login":"slack-notifier","name":"slack-notifier","uuid":"83841768","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/83841768?v=4","repositories_count":1,"last_synced_at":"2024-03-27T11:17:53.811Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/slack-notifier","funding_links":[],"total_stars":1487,"followers":1,"following":0,"created_at":"2022-11-06T02:03:30.953Z","updated_at":"2024-03-27T11:17:53.838Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/slack-notifier","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/slack-notifier/repositories"},"packages":[{"id":13805345,"name":"ruby-slack-notifier","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/slack-notifier/slack-notifier","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/slack-notifier/slack-notifier","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-13T18:33:05.732Z","latest_release_published_at":"2026-02-13T18:33:05.732Z","latest_release_number":"1.5.1-3","last_synced_at":"2026-03-14T02:18:08.132Z","created_at":"2026-02-13T18:33:05.539Z","updated_at":"2026-03-14T02:18:08.132Z","registry_url":"https://launchpad.net/ubuntu/+source/ruby-slack-notifier","install_command":"apt-get install ruby-slack-notifier","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"ruby-slack-notifier","standards_version":"4.6.1","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, rake, ruby-rspec","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":"2026-02-13T18:33:06.250Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/ruby-slack-notifier?arch=source\u0026distro=ubuntu-23.10\u0026repository_url=https://launchpad.net/ubuntu/mantic","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/ruby-slack-notifier","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/ruby-slack-notifier","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/ruby-slack-notifier/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-slack-notifier/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-slack-notifier/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-slack-notifier/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-slack-notifier/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-slack-notifier/codemeta","maintainers":[],"registry":{"name":"ubuntu-23.10","url":"https://launchpad.net/ubuntu/mantic","ecosystem":"ubuntu","default":false,"packages_count":36642,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"ubuntu","metadata":{"codename":"mantic","mirror":"http://old-releases.ubuntu.com/ubuntu","funded_packages_count":387},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:48.636Z","updated_at":"2026-03-18T07:57:22.743Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/namespaces"}},{"id":13567204,"name":"ruby-slack-notifier","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/slack-notifier/slack-notifier","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/slack-notifier/slack-notifier","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-11T06:50:11.397Z","latest_release_published_at":"2026-02-11T06:50:11.397Z","latest_release_number":"1.5.1-3","last_synced_at":"2026-03-11T15:30:32.049Z","created_at":"2026-02-11T06:50:11.165Z","updated_at":"2026-03-11T15:30:32.050Z","registry_url":"https://launchpad.net/ubuntu/+source/ruby-slack-notifier","install_command":"apt-get install ruby-slack-notifier","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"ruby-slack-notifier","standards_version":"4.6.1","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, rake, ruby-rspec","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":"2026-02-11T14:57:15.259Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/ruby-slack-notifier?arch=source\u0026distro=ubuntu-23.04\u0026repository_url=https://launchpad.net/ubuntu/lunar","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/ruby-slack-notifier","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/ruby-slack-notifier","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/ruby-slack-notifier/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-slack-notifier/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-slack-notifier/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-slack-notifier/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-slack-notifier/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-slack-notifier/codemeta","maintainers":[],"registry":{"name":"ubuntu-23.04","url":"https://launchpad.net/ubuntu/lunar","ecosystem":"ubuntu","default":false,"packages_count":36116,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"ubuntu","metadata":{"codename":"lunar","mirror":"http://old-releases.ubuntu.com/ubuntu","funded_packages_count":73},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:49.117Z","updated_at":"2026-03-18T07:57:23.625Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/namespaces"}},{"id":13467304,"name":"ruby-slack-notifier","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/slack-notifier/slack-notifier","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/slack-notifier/slack-notifier","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-09T17:18:36.671Z","latest_release_published_at":"2026-02-09T17:18:36.671Z","latest_release_number":"1.5.1-3","last_synced_at":"2026-03-09T18:22:20.658Z","created_at":"2026-02-09T17:18:35.923Z","updated_at":"2026-03-09T19:02:23.652Z","registry_url":"https://launchpad.net/ubuntu/+source/ruby-slack-notifier","install_command":"apt-get install ruby-slack-notifier","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"ruby-slack-notifier","standards_version":"4.6.1","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, rake, ruby-rspec","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":null,"dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/ruby-slack-notifier?arch=source\u0026distro=ubuntu-24.10\u0026repository_url=https://launchpad.net/ubuntu/oracular","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/ruby-slack-notifier","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/ruby-slack-notifier","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/ruby-slack-notifier/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-slack-notifier/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-slack-notifier/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-slack-notifier/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-slack-notifier/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-slack-notifier/codemeta","maintainers":[],"registry":{"name":"ubuntu-24.10","url":"https://launchpad.net/ubuntu/oracular","ecosystem":"ubuntu","default":false,"packages_count":38437,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"ubuntu","metadata":{"codename":"oracular","mirror":"http://old-releases.ubuntu.com/ubuntu","funded_packages_count":145},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:48.028Z","updated_at":"2026-03-16T07:39:49.052Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/namespaces"}},{"id":13713368,"name":"ruby-slack-notifier","ecosystem":"debian","description":null,"homepage":"https://github.com/slack-notifier/slack-notifier","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/slack-notifier/slack-notifier","keywords_array":["misc"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-12T23:41:59.904Z","latest_release_published_at":"2026-02-12T23:41:59.904Z","latest_release_number":"1.5.1-3","last_synced_at":"2026-03-13T23:47:11.642Z","created_at":"2026-02-12T23:41:59.635Z","updated_at":"2026-03-14T00:02:13.644Z","registry_url":"https://tracker.debian.org/pkg/ruby-slack-notifier","install_command":"apt-get install ruby-slack-notifier","documentation_url":"https://packages.debian.org/bookworm/ruby-slack-notifier","metadata":{"component":"main","architecture":"all","priority":"optional","binary":"ruby-slack-notifier","standards_version":"4.6.1","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, rake, ruby-rspec","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":"2026-02-12T23:42:00.665Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/debian/ruby-slack-notifier?arch=source\u0026distro=debian-12","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/ruby-slack-notifier","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/ruby-slack-notifier","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/ruby-slack-notifier/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-slack-notifier/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-slack-notifier/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-slack-notifier/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-slack-notifier/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-slack-notifier/codemeta","maintainers":[],"registry":{"name":"debian-12","url":"https://packages.debian.org/bookworm","ecosystem":"debian","default":true,"packages_count":34734,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"debian","metadata":{"codename":"bookworm","funded_packages_count":341},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:49.459Z","updated_at":"2026-03-18T07:57:29.534Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/namespaces"}},{"id":13407354,"name":"ruby-slack-notifier","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/slack-notifier/slack-notifier","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/slack-notifier/slack-notifier","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-06T16:04:21.225Z","latest_release_published_at":"2026-02-06T16:04:21.225Z","latest_release_number":"1.5.1-3","last_synced_at":"2026-03-06T16:42:23.495Z","created_at":"2026-02-06T16:04:19.111Z","updated_at":"2026-03-06T16:42:23.496Z","registry_url":"https://launchpad.net/ubuntu/+source/ruby-slack-notifier","install_command":"apt-get install ruby-slack-notifier","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"ruby-slack-notifier","standards_version":"4.6.1","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, rake, ruby-rspec","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":null,"dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{},"purl":"pkg:deb/ubuntu/ruby-slack-notifier?arch=source\u0026distro=ubuntu-24.04","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/ruby-slack-notifier","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/ruby-slack-notifier","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/ruby-slack-notifier/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-slack-notifier/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-slack-notifier/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-slack-notifier/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-slack-notifier/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-slack-notifier/codemeta","maintainers":[],"registry":{"name":"ubuntu-24.04","url":"https://launchpad.net/ubuntu/noble","ecosystem":"ubuntu","default":true,"packages_count":37306,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"ubuntu","metadata":{"codename":"noble","funded_packages_count":137},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:45.928Z","updated_at":"2026-03-18T07:57:17.389Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/namespaces"}},{"id":13669562,"name":"ruby-slack-notifier","ecosystem":"debian","description":null,"homepage":"https://github.com/slack-notifier/slack-notifier","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/slack-notifier/slack-notifier","keywords_array":["misc"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-12T12:44:18.588Z","latest_release_published_at":"2026-02-12T12:44:18.588Z","latest_release_number":"2.4.0-1","last_synced_at":"2026-03-14T18:08:36.378Z","created_at":"2026-02-12T12:44:18.369Z","updated_at":"2026-03-14T18:08:36.378Z","registry_url":"https://tracker.debian.org/pkg/ruby-slack-notifier","install_command":"apt-get install ruby-slack-notifier","documentation_url":"https://packages.debian.org/trixie/ruby-slack-notifier","metadata":{"component":"main","architecture":"all","priority":"optional","binary":"ruby-slack-notifier","standards_version":"4.7.2","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, rake, ruby-rspec","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":"2026-02-12T12:44:19.207Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/debian/ruby-slack-notifier?arch=source\u0026distro=debian-13\u0026repository_url=https://packages.debian.org/trixie","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/ruby-slack-notifier","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/ruby-slack-notifier","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/ruby-slack-notifier/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-slack-notifier/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-slack-notifier/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-slack-notifier/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-slack-notifier/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-slack-notifier/codemeta","maintainers":[],"registry":{"name":"debian-13","url":"https://packages.debian.org/trixie","ecosystem":"debian","default":false,"packages_count":38024,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"debian","metadata":{"codename":"trixie","funded_packages_count":246},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:50.448Z","updated_at":"2026-03-18T07:56:27.898Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/namespaces"}}],"commits":{"id":3430,"full_name":"slack-notifier/slack-notifier","default_branch":"main","total_commits":190,"total_committers":29,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":6.551724137931035,"dds":0.21578947368421053,"past_year_total_commits":0,"past_year_total_committers":0,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":0.0,"past_year_dds":0.0,"last_synced_at":"2026-04-12T08:00:48.300Z","last_synced_commit":"e9aace740c9fb0b22e7da90a9d4e6ee7b3bf6075","created_at":"2023-03-07T09:17:49.040Z","updated_at":"2026-04-12T08:00:35.135Z","committers":[{"name":"Steven Sloan","email":"stevenosloan@gmail.com","login":"stevenosloan","count":149},{"name":"Richard Lee","email":"dlackty@gmail.com","login":"dlackty","count":5},{"name":"Aurélien Noce","email":"aurelien.noce@imagine-app.fr","login":"aurelien-iapp","count":4},{"name":"Ben Lavender","email":"bhuga@github.com","login":null,"count":3},{"name":"Rodion","email":"i6@bk.ru","login":null,"count":2},{"name":"Yuki Hattori","email":"yuki.hattori@speee.jp","login":null,"count":2},{"name":"kazuooooo","email":"matsumotokazuya7@gmail.com","login":"kazuooooo","count":2},{"name":"Elektron1c97","email":"Elektron1c97@gmail.com","login":"siegy22","count":2},{"name":"Patrick Davey","email":"patrick.davey@resolvedigital.co.nz","login":null,"count":1},{"name":"Alexander Fisher","email":"alex@linfratech.co.uk","login":"alexjfisher","count":1},{"name":"Bruce McIntyre","email":"bruce.mcintyre@gmail.com","login":"bruskiza","count":1},{"name":"Federico Ravasio","email":"ravasio.federico@gmail.com","login":"razielgn","count":1},{"name":"Grey Baker","email":"greysteil@gmail.com","login":"greysteil","count":1},{"name":"Iulian Onofrei","email":"iulian.onofrei@yahoo.com","login":"revolter","count":1},{"name":"Julien Vanier","email":"jvanier@gmail.com","login":"monkbroc","count":1},{"name":"Keith Pitty","email":"keith@keithpitty.com","login":"keithpitty","count":1},{"name":"Leonard Bogdonoff","email":"lkbgift@gmail.com","login":"rememberlenny","count":1},{"name":"Mark Quezada","email":"mark@mirthlab.com","login":"markquezada","count":1},{"name":"Masataka Kuwabara","email":"kuwabara@pocke.me","login":"pocke","count":1},{"name":"OSA Shunsuke","email":"hhelibebcnofnenamg@gmail.com","login":"s-osa","count":1},{"name":"Olivier Lacan","email":"hi@olivierlacan.com","login":"olivierlacan","count":1},{"name":"Olle Jonsson","email":"olle.jonsson@gmail.com","login":"olleolleolle","count":1},{"name":"Patrick Veverka","email":"veverkap","login":"veverkap","count":1},{"name":"Phil Pirozhkov","email":"pirj","login":"pirj","count":1},{"name":"Raphael Kallensee","email":"r.kallensee@getsafe.de","login":"rkallensee","count":1},{"name":"Snow Helsing","email":"snow","login":"snow","count":1},{"name":"Thorben Starsy","email":"thorben@easy-review.de","login":"walski","count":1},{"name":"Waynn Lue","email":"WLGades@gmail.com","login":"waynn","count":1},{"name":"Xavi Vila","email":"xavivm@gmail.com","login":"dormi","count":1}],"past_year_committers":[],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/slack-notifier%2Fslack-notifier/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-14T00:00:07.982Z","repositories_count":6213241,"commits_count":903338641,"contributors_count":34926820,"owners_count":1144256,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"slack-notifier/slack-notifier","html_url":"https://github.com/slack-notifier/slack-notifier","last_synced_at":"2026-04-10T07:02:06.055Z","status":"error","issues_count":55,"pull_requests_count":50,"avg_time_to_close_issue":6641557.275,"avg_time_to_close_pull_request":9020247.575,"issues_closed_count":40,"pull_requests_closed_count":40,"pull_request_authors_count":42,"issue_authors_count":53,"avg_comments_per_issue":3.672727272727273,"avg_comments_per_pull_request":1.66,"merged_pull_requests_count":24,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":0,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":0,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":null,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"created_at":"2023-05-12T17:28:23.544Z","updated_at":"2026-04-10T07:02:06.055Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/slack-notifier%2Fslack-notifier","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/slack-notifier%2Fslack-notifier/issues","issue_labels_count":{},"pull_request_labels_count":{},"issue_author_associations_count":{"NONE":51,"MEMBER":2,"CONTRIBUTOR":2},"pull_request_author_associations_count":{"NONE":24,"CONTRIBUTOR":22,"MEMBER":4},"issue_authors":{"stevenosloan":2,"llamicron":2,"rnhurt":1,"knagode":1,"Dirk23":1,"zedtux":1,"nburt":1,"alonhartal":1,"kmuthupa":1,"fabsrc":1,"cimm":1,"NourEldinShobier":1,"Falkor":1,"anchit-desai":1,"morshedalam":1,"benangsariwangi":1,"JeanMertz":1,"carolfly86":1,"bhushangahire":1,"castulo":1,"mlen108":1,"Vialonyx":1,"ShirNa10":1,"alexjfisher":1,"bs90":1,"patcon":1,"hopewise":1,"elloboblanco":1,"matthewkrom":1,"thromera":1,"mrudult":1,"korabh":1,"wendypalomino":1,"martijnrusschen":1,"RagnarGrootKoerkamp":1,"amokasha":1,"kcm":1,"technicalpickles":1,"kntmrkm":1,"praxeum":1,"uzaif313":1,"rodeezy":1,"jschwendt":1,"siegy22":1,"pedrofurtado":1,"ZombieHarvester":1,"giedriusr":1,"samstickland":1,"barmstrong":1,"migu0":1,"jayroh":1,"ghost":1,"amrrbakry":1},"pull_request_authors":{"HoneyEyesbot":4,"stevenosloan":4,"veverkap":2,"siegy22":2,"pirj":1,"rjrobinson":1,"pedrofurtado":1,"greysteil":1,"skcc321":1,"benhalpern":1,"revolter":1,"f-teruhisa":1,"lubekpl":1,"alexjfisher":1,"kouyaf77":1,"bhuga":1,"kyo-nanba":1,"dormi":1,"rkallensee":1,"Startouf":1,"stevebissett":1,"pocke":1,"tonytonyjan":1,"Kevinrob":1,"kazuooooo":1,"fabsrc":1,"tnir":1,"keithpitty":1,"absk1317":1,"danmaispace":1,"bruskiza":1,"snow":1,"nfedyashev":1,"yuuu":1,"essjayhch":1,"walski":1,"rememberlenny":1,"sars":1,"markquezada":1,"korzonek":1,"yhatt":1,"olleolleolle":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-12T00:00:13.218Z","repositories_count":14220466,"issues_count":34626561,"pull_requests_count":113130283,"authors_count":11232983,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{},"past_year_pull_request_labels_count":{},"past_year_issue_author_associations_count":{},"past_year_pull_request_author_associations_count":{},"past_year_issue_authors":{},"past_year_pull_request_authors":{},"maintainers":[{"login":"stevenosloan","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/stevenosloan"}],"active_maintainers":[]},"events":{"total":{"PullRequestEvent":3,"WatchEvent":6,"PullRequestReviewEvent":4},"last_year":{"WatchEvent":4}},"keywords":["ruby","slack"],"dependencies":[{"ecosystem":"rubygems","filepath":"Gemfile","sha":null,"kind":"manifest","created_at":"2022-08-27T04:02:03.760Z","updated_at":"2022-08-27T04:02:03.760Z","repository_link":"https://github.com/slack-notifier/slack-notifier/blob/main/Gemfile","dependencies":[{"id":2883536896,"package_name":"pry-byebug","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":2883536897,"package_name":"pry-debugger","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":2883536898,"package_name":"benchmark-ips","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":2883536899,"package_name":"rake","ecosystem":"rubygems","requirements":"~\u003e 12.0","direct":true,"kind":"development","optional":false},{"id":2883536900,"package_name":"rspec","ecosystem":"rubygems","requirements":"~\u003e 3.5.0","direct":true,"kind":"development","optional":false}]},{"ecosystem":"rubygems","filepath":"slack-notifier.gemspec","sha":null,"kind":"manifest","created_at":"2024-05-01T13:20:14.522Z","updated_at":"2024-05-01T13:20:14.522Z","repository_link":"https://github.com/slack-notifier/slack-notifier/blob/main/slack-notifier.gemspec","dependencies":[]}],"score":null,"created_at":"2024-12-15T21:38:07.348Z","updated_at":"2026-04-30T16:30:28.895Z","avatar_url":"https://github.com/slack-notifier.png","language":"Ruby","monthly_downloads":0,"readme":"A simple wrapper to send notifications to [Slack](https://slack.com/) webhooks.\n\n[![Build Status](https://travis-ci.org/slack-notifier/slack-notifier.svg?branch=master)](https://travis-ci.org/slack-notifier/slack-notifier)\n[![Code Climate](https://codeclimate.com/github/slack-notifier/slack-notifier.svg)](https://codeclimate.com/github/slack-notifier/slack-notifier)\n[![Gem Version](https://badge.fury.io/rb/slack-notifier.svg)](https://rubygems.org/gems/slack-notifier)\n[![SemVer](https://api.dependabot.com/badges/compatibility_score?dependency-name=slack-notifier\u0026package-manager=bundler\u0026version-scheme=semver)](https://dependabot.com/compatibility-score.html?dependency-name=slack-notifier\u0026package-manager=bundler\u0026version-scheme=semver)\n\n## Example\n\n```ruby\nrequire 'slack-notifier'\n\nnotifier = Slack::Notifier.new \"WEBHOOK_URL\"\nnotifier.ping \"Hello World\"\n# =\u003e if your webhook is setup, will message \"Hello World\"\n# =\u003e to the default channel you set in slack\n```\n\n\n#### Installation\n\nInstall the latest stable release:\n\n```\n$ gem install slack-notifier\n```\n\nOr with [Bundler](http://bundler.io/), add it to your Gemfile:\n\n```ruby\ngem \"slack-notifier\"\n```\n\n\n#### Setting Defaults\n\nOn initialization you can set default payloads by calling `defaults` in an initialization block:\n\n```ruby\nnotifier = Slack::Notifier.new \"WEBHOOK_URL\" do\n  defaults channel: \"#default\",\n           username: \"notifier\"\nend\n\nnotifier.ping \"Hello default\"\n# =\u003e will message \"Hello default\"\n# =\u003e to the \"#default\" channel as 'notifier'\n```\n\nTo get the WEBHOOK_URL you need:\n\n1. go to https://slack.com/apps/A0F7XDUAZ-incoming-webhooks\n2. choose your team, press configure\n3. in configurations press add configuration\n4. choose channel, press \"Add Incoming WebHooks integration\"\n\n\nYou can also set defaults through an options hash:\n\n```ruby\nnotifier = Slack::Notifier.new \"WEBHOOK_URL\", channel: \"#default\",\n                                              username: \"notifier\"\n```\n\nThese defaults are over-ridable for any individual ping.\n\n```ruby\nnotifier.ping \"Hello random\", channel: \"#random\"\n# =\u003e will ping the \"#random\" channel\n```\n\n\n## Links\n\nSlack requires links to be formatted a certain way, so the default middlware stack of slack-notifier will look through your message and attempt to convert any html or markdown links to slack's format before posting.\n\nHere's what it's doing under the covers:\n\n```ruby\nmessage = \"Hello world, [check](http://example.com) it \u003ca href='http://example.com'\u003eout\u003c/a\u003e\"\nSlack::Notifier::Util::LinkFormatter.format(message)\n# =\u003e \"Hello world, \u003chttp://example.com|check\u003e it \u003chttp://example.com|out\u003e\"\n```\n\n## Formatting\n\nSlack supports various different formatting options.  For example, if you want to alert an entire channel you include `\u003c!channel\u003e` in your message\n\n```ruby\nmessage = \"\u003c!channel\u003e hey check this out\"\nnotifier.ping message\n\n#ends up posting \"@channel hey check this out\" in your Slack channel\n```\n\nYou can see [Slack's message documentation here](https://api.slack.com/docs/formatting)\n\n## Escaping\n\nSince sequences starting with \u003c have special meaning in Slack, you should use `Slack::Notifier::Util::Escape.html` if your messages may contain \u0026, \u003c or \u003e.\n\n```ruby\nlink_text = Slack::Notifier::Util::Escape.html(\"User \u003cuser@example.com\u003e\")\nmessage = \"Write to [#{link_text}](mailto:user@example.com)\"\nnotifier.ping message\n```\n\n## Blocks\n\nThis plugin supports the [Slack blocks format](https://app.slack.com/block-kit-builder/) and [block kit builder](https://app.slack.com/block-kit-builder/). This is useful for displaying buttons, dropdowns, and images.\n\n```ruby\nblocks = [\n  {\n    \"type\": \"image\",\n    \"title\": {\n      \"type\": \"plain_text\",\n      \"text\": \"image1\",\n      \"emoji\": true\n    },\n    \"image_url\": \"https://api.slack.com/img/blocks/bkb_template_images/onboardingComplex.jpg\",\n    \"alt_text\": \"image1\"\n  },\n  {\n    \"type\": \"section\",\n    \"text\": {\n      \"type\": \"mrkdwn\",\n      \"text\": \"Hey there 👋 I'm TaskBot. I'm here to help you create and manage tasks in Slack.\\nThere are two ways to quickly create tasks:\"\n    }\n  }\n]\n\nnotifier.post(blocks: blocks)\n```\n\n## Additional parameters\n\nAny key passed to the `post` method is posted to the webhook endpoint. Check out the [Slack webhook documentation](https://api.slack.com/incoming-webhooks) for the available parameters.\n\nSetting an icon:\n\n```ruby\nnotifier.post text: \"feeling spooky\", icon_emoji: \":ghost:\"\n# or\nnotifier.post text: \"feeling chimpy\", icon_url: \"http://static.mailchimp.com/web/favicon.png\"\n```\n\nAdding attachments:\n\n```ruby\na_ok_note = {\n  fallback: \"Everything looks peachy\",\n  text: \"Everything looks peachy\",\n  color: \"good\"\n}\nnotifier.post text: \"with an attachment\", attachments: [a_ok_note]\n```\n\n\n## HTTP options\n\nWith the default HTTP client, you can send along options to customize its behavior as `:http_options` params when you post or initialize the notifier.\n\n```ruby\nnotifier = Slack::Notifier.new 'WEBHOOK_URL', http_options: { open_timeout: 5 }\nnotifier.post text: \"hello\", http_options: { open_timeout: 10 }\n```\n\n**Note**: you should only send along options that [`Net::HTTP`](http://ruby-doc.org/stdlib-2.2.0/libdoc/net/http/rdoc/Net/HTTP.html) has as setters, otherwise the option will be ignored and show a warning.\n\n### Proxies\n\n`:http_options` can be used if you need to connect to Slack via an HTTP proxy.\nFor example, to connect through a local squid proxy the following options would be used.\n\n```ruby\nnotifier = Slack::Notifier.new 'WEBHOOK_URL', http_options: {\n                                                              proxy_address:  'localhost',\n                                                              proxy_port:     3128,\n                                                              proxy_from_env: false\n                                                            }\n```\n\n## Custom HTTP Client\n\nThere is a packaged default client wrapping Net::HTTP, but your HTTP needs might be a little different. In that case, you can pass in your own wrapper to handle sending the notifications. It just needs to respond to `::post` with the arguments of the endpoint URI, and the payload [pretty much the same as Net:HTTP.post_form](http://ruby-doc.org/stdlib-2.1.2/libdoc/net/http/rdoc/Net/HTTP.html#method-c-post_form).\n\nA simple example:\n```ruby\nmodule Client\n  def self.post uri, params={}\n    Net::HTTP.post_form uri, params\n  end\nend\n\nnotifier = Slack::Notifier.new 'WEBHOOK_URL' do\n  http_client Client\nend\n```\n\nIt's also encouraged for any custom HTTP implementations to accept the `:http_options` key in params.\n\n**Setting client per post**\n\nYou can also set the http_client per-post if you need to special case certain pings.\n\n```ruby\nnotifier.post text: \"hello\", http_client: CustomClient\n```\n\n**Setting a No-Op client**\n\nIn development (or testing), you may want to watch the behavior of the notifier without posting to slack. This can be handled with a no-op client.\n\n```ruby\nclass NoOpHTTPClient\n  def self.post uri, params={}\n    # bonus, you could log or observe posted params here\n  end\nend\n\nnotifier = Slack::Notifier.new 'WEBHOOK_URL' do\n  http_client NoOpHTTPClient\nend\n```\n\n\n## Middleware\n\nBy default slack-notifier ships with middleware to format links in the message \u0026 text field of attachments. You can configure the middleware a notifier will use on initialization:\n\n```ruby\nnotifier = Slack::Notifier.new \"WEBHOOK_URL\" do\n  middleware format_message: { formats: [:html] }\nend\n# this example will *only* use the format_message middleware and only format :html links\n\nnotifier.post text: \"Hello \u003ca href='http://example.com'\u003eworld\u003c/a\u003e! [visit this](http://example.com)\"\n# =\u003e will post \"Hello \u003chttp://example.com|world\u003e! [visit this](http://example.com)\"\n```\n\nThe middleware can be set with a their name, or by name and options. They will be triggered in order.\n\n```ruby\nnotifier = Slack::Notifier.new \"WEBHOOK_URL\" do\n  middleware :format_message, :format_attachments\nend\n# will run format_message then format_attachments with default options\n\nnotifier = Slack::Notifier.new \"WEBHOOK_URL\" do\n  middleware format_message: { formats: [:html] },\n             format_attachments: { formats: [:markdown] }\nend\n# will run format_message w/ formats [:html] then format_attachments with formats [:markdown]\n```\n\nAvailable middleware:\n\n**`format_message`**\n\nThis middleware takes the `:text` key of the payload and runs it through the [`Linkformatter`](#links). You can configure which link formats to look for with a `:formats` option. You can set `[:html]` (only html links), `[:markdown]` (only markdown links) or `[:html, :markdown]` (the default, will format both).\n\n**`format_attachments`**\n\nThis middleware takes the `:text` key of any attachment and runs it through the [`Linkformatter`](#links). You can configure which link formats to look for with a `:formats` option. You can set `[:html]` (only html links), `[:markdown]` (only markdown links) or `[:html, :markdown]` (the default, will format both).\n\n**`at`**\n\nThis simplifies the process of notifying users and rooms to messages. By adding an `:at` key to the payload w/ an array of symbols the appropriately formatted commands will be prepended to the message. It will accept a single name, or an array.\n\nFor example:\n\n```ruby\nnotifier.post text: \"hello\", at: :casper\n# =\u003e \"\u003c@casper\u003e hello\"\n\nnotifier.post text: \"hello\", at: [:here, :waldo]\n# =\u003e \"\u003c!here\u003e \u003c@waldo\u003e hello\"\n```\n\n**`channels`**\n\nIf the `channel` argument of a payload is an array this splits the payload to be posted to each channel.\n\nFor example:\n\n```ruby\nnotifier.post text: \"hello\", channel: [\"default\", \"all_the_things\"]\n# =\u003e will post \"hello\" to the default and all_the_things channel\n```\n\nTo send a message directly to a user, their username [no longer works](https://github.com/stevenosloan/slack-notifier/issues/51#issuecomment-414138622). Instead you'll need to get the user's ID and set that as the channel.\n\nAt the time of writing, one way to get a user's ID is to:\n\n- go to their profile\n- click **...** (\"More actions\")\n- click **Copy Member ID**\n\n### Writing your own Middleware\n\nMiddleware is fairly straightforward, it is any class that inherits from `Slack::Notifier::PayloadMiddleware::Base` and responds to `#call`. It will always be given the payload as a hash and should return the modified payload as a hash.\n\nFor example, lets say we want to replace words in every message, we could write a middleware like this:\n\n```ruby\nclass SwapWords \u003c Slack::Notifier::PayloadMiddleware::Base\n  middleware_name :swap_words # this is the key we use when setting\n                              # the middleware stack for a notifier\n\n  options pairs: [\"hipchat\" =\u003e \"slack\"] # the options takes a hash that will\n                                        # serve as the default if not given any\n                                        # when initialized\n\n  def call payload={}\n    return payload unless payload[:text] # noope if there is no message to work on\n\n    # not efficient, but it's an example :)\n    options[:pairs].each do |from, to|\n      payload[:text] = payload[:text].gsub from, to\n    end\n\n    payload # always return the payload from your middleware\n  end\nend\n\n\nnotifier = Slack::Notifier.new \"WEBHOOK_URL\" do\n  middleware :swap_words # setting our stack w/ just defaults\nend\nnotifier.ping \"hipchat is awesome!\"\n# =\u003e pings slack with \"slack is awesome!\"\n\nnotifier = Slack::Notifier.new \"WEBHOOK_URL\" do\n  # here we set new options for the middleware\n  middleware swap_words: { pairs: [\"hipchat\" =\u003e \"slack\",\n                                   \"awesome\" =\u003e \"really awesome\"]}\nend\n\nnotifier.ping \"hipchat is awesome!\"\n# =\u003e pings slack with \"slack is really awesome!\"\n```\n\nIf your middleware returns an array, that will split the message into multiple pings. An example for pinging multiple channels:\n\n```ruby\nclass MultiChannel \u003c Slack::Notifier::PayloadMiddleware::Base\n  middleware_name :channels\n\n  def call payload={}\n    return payload unless payload[:channel].respond_to?(:to_ary)\n\n    payload[:channel].to_ary.map do |channel|\n      pld = payload.dup\n      pld[:channel] = channel\n      pld\n    end\n  end\nend\n```\n\n\nVersioning\n----------\n\nSince version `1.0` has been released, the aim is to follow [Semantic Versioning](http://semver.org/) as much as possible. However, it is encouraged to check the [changelog](changelog.md) when updating to see what changes have been made.\n\nTo summarize the reasoning for versioning:\n\n```\nGiven a version number MAJOR.MINOR.PATCH, increment:\n\n- MAJOR version when incompatible API changes are made\n- MINOR version for adding functionality in a backwards-compatible manner or bug fixes that *may* change behavior\n- PATCH version for make backwards-compatible bug fixes\n```\n\nTesting\n-------\n\n```bash\n$ rspec\n```\n\nThere is also an integration test setup to just double check pinging across the supported rubies. To run:\n\n1. Copy the `.env-example` file to `.env` and replace with your details.\n2. Make sure `bin/test` is executable\n3. then run and watch for the pings in your slack room\n\n```bash\n$ bin/test\n```\n\n\nContributing\n------------\n\nIf there is any thing you'd like to contribute or fix, please:\n\n- Fork the repo\n- Add tests for any new functionality\n- Make your changes\n- Verify all new \u0026 existing tests pass\n- Make a pull request\n\n\nLicense\n-------\nThe slack-notifier gem is distributed under the MIT License.\n","funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["crash-reporting","mvc","activerecord","activejob","error-handler","github-api","octokit-rb","rspec","rubygems","sinatra"],"project_url":"https://ruby.ecosyste.ms/api/v1/projects/227","html_url":"https://ruby.ecosyste.ms/projects/227"}