{"id":20620579,"url":"https://github.com/blacklight/armando","last_synced_at":"2026-02-11T03:01:43.222Z","repository":{"id":66602187,"uuid":"40153049","full_name":"blacklight/Armando","owner":"blacklight","description":"Connect everything to everything","archived":false,"fork":false,"pushed_at":"2022-10-15T20:50:18.000Z","size":66,"stargazers_count":4,"open_issues_count":2,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-15T12:18:02.796Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/blacklight.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-08-03T23:37:00.000Z","updated_at":"2022-10-15T20:50:21.000Z","dependencies_parsed_at":null,"dependency_job_id":"d23e55a8-e8a5-4af9-9cc2-76c3078e531a","html_url":"https://github.com/blacklight/Armando","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/blacklight/Armando","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blacklight%2FArmando","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blacklight%2FArmando/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blacklight%2FArmando/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blacklight%2FArmando/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/blacklight","download_url":"https://codeload.github.com/blacklight/Armando/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blacklight%2FArmando/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29326078,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-11T02:08:56.257Z","status":"ssl_error","status_checked_at":"2026-02-11T02:08:51.338Z","response_time":97,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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"}},"keywords":[],"created_at":"2024-11-16T12:14:54.553Z","updated_at":"2026-02-11T03:01:43.217Z","avatar_url":"https://github.com/blacklight.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Armando\n\n## ⚠️ DEPRECATION NOTICE ⚠️ ##\n\n**Armando has been wrapped in and largely extended by [Platypush](https://git.platypush.tech/platypush/platypush)**\n\n## Connect everything to everything.\n\n[![Build Status](https://travis-ci.org/BlackLight/Armando.svg?branch=master)](https://travis-ci.org/BlackLight/Armando)\n\nArmando is a platform to connect custom events to custom actions, binding them together with your own Python scripts.\n\nYou can, for instance:\n\n* Play/stop your music playback, using the MPD/Mopidy backend;\n* Turn on/off the lights by using the Hue or the WeMo switch backends;\n* Send a certain content to your Chromecast using the Chromecast backend.\n\nAll of this only:\n\n* When you give a certain vocal command (see `Takk` project);\n* When you shake your Wii controller (`Wii` project going to be imported soon);\n* When you perform a certain hand gesture on your Leap Motion sensor (project Hu(g)eLeap going to be imported soon).\n\nEach project is independent from the others and may require different dependencies,  but they all rely on the same backend and the same way to interact with events and actions, the same APIs, and the same way to manage, store and log data.\n\n## Installation\n\n* `git clone git@github.com:/BlackLight/Armando.git`\n* `cd Armando`\n* `git submodule init`\n* `git submodule update`\n\nAll the projects are under `share/`. Each project may require different dependencies or a different configuration. Please rely on the `README.md` file inside of each folder.\n\n## Configuration\n\nAll the configuration of the modules under `lib/` goes to `main.conf`. Copy `main.conf.example` to `main.conf` and modify it according to your needs.\nGlobal `main.conf` configuration can be overridden by defining your own `main.conf` under `share/YourProject`.\nRemember that the section name of the plugin in `main.conf` must be the same one of the module under `lib/` without the `.py` extension.\n\n## Contribute\n\nYou can contribute with your own projects (folders under `share/` and executables under `bin/`, i.e. scripts which react on events performing actions defined by plugins) or plugins (under `lib/`, modules which allow you to interact with some specific Python-controllable device, e.g. Hue lightbulbs, music servers, SSH sessions, Chromecast devices, etc.).\n\n* Do you wish to customize `Takk` to cast your favourite movie on the Chromecast when you say its name?\n\n\t* Add a Chromecast plugin named `chromecast.py` to `lib/`\n\t* Modify `Takk` configuration to invoke some of the public methods under its `Chromecast` class when a certain pattern in the vocal command is recognized.\n\n* Do you wish to create a new script which performs some of the supported actions when your bluetooth smartphone pairs with your computer?\n\n\t* `git clone https://github.com/BlackLight/Armando.git`\n\t* `cd ./Armando/share`\n\t* `git submodule add https://github.com/yourname/YourProject.git`\n\t* Place a reference to Armando's `__init__.py` by symlinking it into your project this way:\n\t\t* `cd YourProject`\n\t\t* `mkdir __armando__`\n\t\t* `ln -s ../../../lib/__init__.py __armando__/__init__.py`\n\t\t* Before importing any Armando modules, include the following code in your script:\n```\nfrom __armando__ import Armando\nArmando.init()\n```\n\n\t* Remember to use a `README.md` file to explain how to configure and use your script.\n\t* If needed, place an executable for running your script under `bin/`.\n\nIn both the cases, submit me a pull request and I'll be glad to include your code.\n\n## Compatibility\n\nArmando is compatible (and our tests are design to pass) with Python 2 (\u003e= 2.6) and Python 3 (\u003e= 3.0).\nI'm struggling sometimes to keep the code compatible with two versions which are not compatible with each other, but I'm planning to keep up with this effort as long as I can.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblacklight%2Farmando","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fblacklight%2Farmando","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblacklight%2Farmando/lists"}