{"id":13830541,"url":"https://github.com/kalliope-project/MMM-kalliope","last_synced_at":"2025-07-09T11:33:26.241Z","repository":{"id":79205373,"uuid":"121940483","full_name":"kalliope-project/MMM-kalliope","owner":"kalliope-project","description":"Magic Mirror module for Kalliope","archived":false,"fork":false,"pushed_at":"2024-03-19T12:42:06.000Z","size":599,"stargazers_count":8,"open_issues_count":2,"forks_count":10,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-11-20T11:24:02.125Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kalliope-project.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2018-02-18T10:14:14.000Z","updated_at":"2020-05-06T21:34:19.000Z","dependencies_parsed_at":"2024-08-04T10:13:26.686Z","dependency_job_id":null,"html_url":"https://github.com/kalliope-project/MMM-kalliope","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/kalliope-project%2FMMM-kalliope","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kalliope-project%2FMMM-kalliope/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kalliope-project%2FMMM-kalliope/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kalliope-project%2FMMM-kalliope/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kalliope-project","download_url":"https://codeload.github.com/kalliope-project/MMM-kalliope/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225539432,"owners_count":17485327,"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-08-04T10:01:01.745Z","updated_at":"2024-11-20T11:30:55.267Z","avatar_url":"https://github.com/kalliope-project.png","language":"JavaScript","funding_links":[],"categories":["Assistants"],"sub_categories":[],"readme":"# MMM-kalliope\n\nModule to bind [Kalliope](https://github.com/kalliope-project/kalliope) with your Magic Mirror.\n\nThis module allow you to:\n- show what Kalliope say on the screen\n- control your Magic Mirror by sending notification to other active modules\n\n\u003e **Note:** On Kalliope, [a neuron is available](https://github.com/kalliope-project/kalliope_neuron_magic_mirror) to talk with this module directly.\n\n![Demo](images/kalliope_neuron_magic_mirror_demo.gif)\n\n[Video demo with sound here](https://youtu.be/QHwctPbJ2ZY)\n\n## Installation\n\nClone this repo into `~/MagicMirror/modules` directory.\n\nConfigure your `~/MagicMirror/config/config.js`:\n\n```js\n{\n    module: \"MMM-kalliope\",\n    position: \"upper_third\",\n    config: {\n        title: \"Kalliope\"\n    }\n}\n```\n\n## Configuration option\n\n| Option       | Default  | Description                                                                                                |\n|--------------|----------|------------------------------------------------------------------------------------------------------------|\n| max          | 5        | How many messages should be keept on the screen.                                                           |\n| keep_seconds | 5        | Number of seconds received messages will stay displayed. If set to \"0\", then message will never be removed |\n| title        | Kalliope | The name placed above received messages                                                                    |\n\n## API documentation\n\n#### POST /kalliope/\n\nQuery parameters\n\n| Parameter    | Description                                                                                                                                               |\n|--------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------|\n| notification | The notification identifier. If set to \"KALLIOPE\", the payload will be printed by the module. In other case the notification is sent to all other modules |\n| payload      | A notification payload to pass to the module. Can use plain text or JSON.                                                                                 |\n\n## Curl examples\n\nThis command will send a message that will be printed by the MMM-kalliope module\n```\ncurl -H \"Content-Type: application/json\" -X POST -d '{\"notification\":\"KALLIOPE\", \"payload\": \"my message\"}' http://localhost:8080/kalliope\n```\n\n\nHere the notification is sent to the alert module.\n```\ncurl -H \"Content-Type: application/json\" -X POST -d '{\"notification\":\"SHOW_ALERT\", \"payload\": {\"title\": \"mytitle\", \"message\": \"this is a test\", \"timer\": 5000}}' http://localhost:8080/kalliope\n```\n\n## How to control my MM module from this module\n\nAll notifications that are not concerned by this module (when the notification name is not \"KALLIOPE\") will be send to other installed module on your Magic Mirror.\n\nTo add a notification receptor to your module, you just need to implement the `notificationReceived` method like bellow.\n\n```js\nnotificationReceived: function(notification, payload){\n\t\t....\n\n\t\tif (notification === \"NOTIFICAION_NAME\" \u0026\u0026 payload==\"bla\"){\n\t\t\t// Do some magic here with your module\n\t\t}\n\n\t\tif (notification === \"NOTIFICAION_NAME\" \u0026\u0026 payload==\"blablabla\"){\n\t\t\t// Do some magic here with your module\n\t\t}\n\n\t\t....\n},\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkalliope-project%2FMMM-kalliope","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkalliope-project%2FMMM-kalliope","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkalliope-project%2FMMM-kalliope/lists"}