{"id":13613335,"url":"https://github.com/Nekmo/amazon-dash","last_synced_at":"2025-04-13T15:33:03.012Z","repository":{"id":44988727,"uuid":"73872364","full_name":"Nekmo/amazon-dash","owner":"Nekmo","description":"Hack your Amazon Dash to run what you want.","archived":false,"fork":false,"pushed_at":"2023-10-29T00:09:27.000Z","size":5348,"stargazers_count":828,"open_issues_count":27,"forks_count":69,"subscribers_count":28,"default_branch":"develop","last_synced_at":"2024-10-29T17:28:33.342Z","etag":null,"topics":["amazon","amazon-dash","amazon-dash-button","button","dash","home-assistant","home-automation","ifttt","iot","openhab","python"],"latest_commit_sha":null,"homepage":"","language":"Python","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/Nekmo.png","metadata":{"files":{"readme":"README.rst","changelog":"HISTORY.rst","contributing":"CONTRIBUTING.rst","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.rst"}},"created_at":"2016-11-16T01:44:08.000Z","updated_at":"2024-10-20T21:58:03.000Z","dependencies_parsed_at":"2024-01-05T21:06:02.573Z","dependency_job_id":null,"html_url":"https://github.com/Nekmo/amazon-dash","commit_stats":{"total_commits":351,"total_committers":8,"mean_commits":43.875,"dds":"0.10256410256410253","last_synced_commit":"78c3f58701ce36c49dd053c9856ea21c91220cec"},"previous_names":[],"tags_count":25,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nekmo%2Famazon-dash","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nekmo%2Famazon-dash/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nekmo%2Famazon-dash/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nekmo%2Famazon-dash/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Nekmo","download_url":"https://codeload.github.com/Nekmo/amazon-dash/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248736118,"owners_count":21153537,"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":["amazon","amazon-dash","amazon-dash-button","button","dash","home-assistant","home-automation","ifttt","iot","openhab","python"],"created_at":"2024-08-01T20:00:44.523Z","updated_at":"2025-04-13T15:33:02.391Z","avatar_url":"https://github.com/Nekmo.png","language":"Python","readme":"\n\n.. image:: https://raw.githubusercontent.com/Nekmo/amazon-dash/master/amazon-dash.png\n    :width: 100%\n\n|\n\n.. image:: https://raw.githubusercontent.com/Nekmo/amazon-dash/pip-rating-badge/pip-rating-badge.svg\n  :target: https://github.com/Nekmo/amazon-dash/actions/workflows/pip-rating.yml\n  :alt: pip-rating badge\n\n.. image:: https://img.shields.io/github/actions/workflow/status/Nekmo/amazon-dash/test.yml?style=flat-square\u0026maxAge=2592000\u0026branch=develop\n  :target: https://github.com/Nekmo/amazon-dash/actions?query=workflow%3ATests\n  :alt: Latest Tests CI build status\n\n.. image:: https://img.shields.io/pypi/v/amazon-dash.svg?style=flat-square\n  :target: https://pypi.org/project/amazon-dash/\n  :alt: Latest PyPI version\n\n.. image:: https://img.shields.io/pypi/pyversions/amazon-dash.svg?style=flat-square\n  :target: https://pypi.org/project/amazon-dash/\n  :alt: Python versions\n\n.. image:: https://img.shields.io/codeclimate/maintainability/Nekmo/amazon-dash.svg?style=flat-square\n  :target: https://codeclimate.com/github/Nekmo/amazon-dash\n  :alt: Code Climate\n\n.. image:: https://img.shields.io/codecov/c/github/Nekmo/amazon-dash/master.svg?style=flat-square\n  :target: https://codecov.io/github/Nekmo/amazon-dash\n  :alt: Test coverage\n\n.. image:: https://img.shields.io/github/stars/Nekmo/amazon-dash?style=flat-square\n     :target: https://github.com/Nekmo/amazon-dash\n     :alt: Github stars\n\n\n**DEVELOPMENT BRANCH**: The current branch is a development version. Go to the stable release by clicking\non `the master branch \u003chttps://github.com/Nekmo/amazon-dash/tree/master\u003e`_.\n\nAmazon-dash is still alive\n##########################\nAmazon has abandoned the Amazon-dash buttons, but\n`this project wants to keep them alive \u003chttps://docs.nekmo.org/amazon-dash/future.html\u003e`_. However, we are looking\nfor alternatives. If you have suggestions you are welcome to open an incident. All suggestions are welcome.\nYou can open an issue with your suggestions.\n\nPython Amazon Dash\n##################\nHack your Amazon Dash to run what you want. Without welders. For the entire family.\n\nThis program written in Python runs in daemon mode waiting for someone in the same\nnetwork to press a configured Amazon Dash button. It is not necessary to know\nprogramming to use this program. Amazon-Dash executes **commands by command line,\ncalls a url and more**. This program works well on a **Raspberry PI** or on computers\nwith few resources.\n\n\n1. **Install** Amazon Dash:\n\n.. code:: console\n\n    $ sudo pip3 install amazon-dash  # and after:\n    $ sudo python3 -m amazon_dash.install\n\nAlso available on `AUR \u003chttps://aur.archlinux.org/packages/amazon-dash-git/\u003e`_ and\n`FreeNAS \u003chttp://docs.nekmo.org/amazon-dash/installation.html#freenas\u003e`_. You can also use ``pip2`` and\n``python2`` if your system only has Python2, but Python 3 is the recommended version. See other installation\nmethods `in the documentation \u003chttp://docs.nekmo.org/amazon-dash/installation.html\u003e`_.\n\n**Note:** It may also be necessary to install ``tcpdump`` on your system (in Debian ``apt install tcpdump``).\n\n2. **Hack and configure Wi-Fi**:\n\nYou must hack your button with the `hack-device command \u003chttps://docs.nekmo.org/amazon-dash/rescue.html#hack\u003e`_\nif you have never used it. Then you must `configure the Wifi connection\n\u003chttps://docs.nekmo.org/amazon-dash/rescue.html#configure-wifi\u003e`_. You can skip this step if you have\nalready configured the Wi-Fi connection to the router.\n\n3. **Avoid a connection to Amazon servers**\n\nSince 2020 your buttons can be bricked in an update from Amazon servers. To continue using your buttons you must\nconfigure your router to block Internet connections from the buttons. More info in\n`the Amazon-dash documentation \u003chttps://docs.nekmo.org/amazon-dash/block_connections.html\u003e`_.\n\n4. Use *discovery mode* **to know the mac of your Dash** (Run the program, and then press any button). You can\nskip this step if you already know the mac address:\n\n.. code-block:: console\n\n    $ sudo amazon-dash discovery\n\n\n5. Edit **config file** (``/etc/amazon-dash.yml``):\n\n.. code-block:: yaml\n\n    # amazon-dash.yml\n    # ---------------\n    settings:\n      delay: 10\n    devices:\n      0C:47:C9:98:4A:12: # Command example\n        name: Hero\n        user: nekmo\n        cmd: spotify\n      AC:63:BE:75:1B:6F: # SSH example\n        name: Tassimo\n        cmd: door --open\n        ssh: 192.168.1.23:2222\n      AC:63:BE:67:B2:F1: # Url Webhook example\n        name: Kit Kat\n        url: 'http://domain.com/path/to/webhook'\n        method: post\n        content-type: json\n        body: '{\"mac\": \"AC:63:BE:67:B2:F1\", \"action\": \"toggleLight\"}'\n        confirmation: send-tg\n      40:B4:CD:67:A2:E1: # Home Assistant example\n        name: Fairy\n        homeassistant: hassio.local\n        event: toggle_kitchen_light\n      18:74:2E:87:01:F2: # OpenHAB example\n        name: Doritos\n        openhab: 192.168.1.140\n        item: open_door\n        state: \"ON\"\n        confirmation: send-pb\n      44:65:0D:75:A7:B2: # IFTTT example\n        name: Pompadour\n        ifttt: cdxxx-_gEJ3wdU04yyyzzz\n        event: pompadour_button\n        data: {\"value1\": \"Pompadour button\"}\n    confirmations:\n      send-tg:\n        service: telegram\n        token: '402642618:QwGDgiKE3LqdkNAtBkq0UEeBoDdpZYw8b4h'\n        to: 24291592\n        is_default: false\n      send-pb:\n        service: pushbullet\n        token: 'o.BbbPYjJizbPr2gSWgXGmqNTt6T9Rew51'\n        is_default: false\n\n\n**UPGRADE** from `previous versions \u003chttp://docs.nekmo.org/amazon-dash/installation.html\u003e`_\n\nThe following execution methods are supported with your Amazon Dash button with this program:\n\n================================  ================================  ================================\n.. image:: https://goo.gl/VqgMZJ  .. image:: https://goo.gl/a6TS7X  .. image:: https://goo.gl/zrjisq\n`System command`_                 `Call url`_                       `Homeassistant`_\n.. image:: https://goo.gl/Cq4bYC  .. image:: https://goo.gl/L7ng8k\n`OpenHAB`_                        `IFTTT`_\n================================  ================================  ================================\n\n\nAmazon-dash also allows you to **send a confirmation** after pressing a button. You will also receive a message in\ncase of failure. **Telegram** and **Pushbullet** are supported.\n\n\nFor more information see\n`the documentation of the configuration file \u003chttp://docs.nekmo.org/amazon-dash/config_file.html\u003e`_.\n\n\n6. Run the **daemon**:\n\nIf you use a **Systemd** system *(Debian 8+, Fedora 15+, Ubuntu 15.04+, Arch Linux 2012+, OpenSUSE 12.1+, and more)*\nexecute:\n\n.. code-block:: console\n\n    $ sudo systemctl start amazon-dash\n\nTo run Amazon-dash at **startup**:\n\n.. code-block:: console\n\n    $ sudo systemctl enable amazon-dash\n\n\nTo run Amazon-dash manually look at `the documentation \u003chttp://docs.nekmo.org/amazon-dash/usage.html\u003e`_.\n\n\n\nDocker\n======\nUsing Amazon Dash within docker is easy! First, pull the Docker image:\n\n.. code-block:: console\n\n    $ docker pull nekmo/amazon-dash:latest\n\nThen, create a container and run Amazon Dash itself:\n\n.. code-block:: console\n\n    $ docker run -it --network=host \\\n                 -v \u003c/full/path/path/to/amazon-dash.yml\u003e:/config/amazon-dash.yml \\\n                 nekmo/amazon-dash:latest \\\n                 amazon-dash run --ignore-perms --root-allowed \\\n                                 --config /config/amazon-dash.yml\n\n\nJoin the community\n==================\nDo you need ideas on how to use Amazon Dash? See what the community does with this project. Some examples:\n\n* `The Simpsons Random Episode \u003chttp://docs.nekmo.org/amazon-dash/community.html#the-simpsons-random-episode\u003e`_\n* `Shopping list in Google Keep \u003chttp://docs.nekmo.org/amazon-dash/community.html#shopping-list-in-google-keep\u003e`_\n* `Play a audio \u003chttp://docs.nekmo.org/amazon-dash/community.html#play-a-audio\u003e`_\n\nSee all the examples `in the community`_.\n\n\n.. _System command: http://docs.nekmo.org/amazon-dash/config_file.html#execute-cmd\n.. _Call url: http://docs.nekmo.org/amazon-dash/config_file.html#call-url\n.. _Homeassistant: http://docs.nekmo.org/amazon-dash/config_file.html#homeassistant-event\n.. _OpenHAB: http://docs.nekmo.org/amazon-dash/config_file.html#openhab-event\n.. _IFTTT: http://docs.nekmo.org/amazon-dash/config_file.html#ifttt-event\n.. _in the community: http://docs.nekmo.org/amazon-dash/community.html\n","funding_links":[],"categories":["Uncategorized","Python"],"sub_categories":["Twitter"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FNekmo%2Famazon-dash","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FNekmo%2Famazon-dash","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FNekmo%2Famazon-dash/lists"}