GithubHelp home page GithubHelp logo

koenvervloesem / snips-app-say-it-again Goto Github PK

View Code? Open in Web Editor NEW
4.0 3.0 7.0 46 KB

A Snips app that repeats the last message that your voice assistant has said or heard or the last action it has performed

License: MIT License

Python 92.04% Shell 7.96%
snips voice-commands python3 snips-skill snips-app

snips-app-say-it-again's Introduction

Say it again app for Snips

Build status Maintainability Code quality Python versions GitHub license Languages Snips App Store

Important information: Following the acquisition of Snips by Sonos, the Snips Console is not available anymore after January 31, 2020. As such, we have exported all data of the English and German version of this app from the Snips Console and made these available in the directory console with the same MIT license as the rest of this project. This project has been archived. If you're searching for an alternative to Snips, I believe that Rhasspy is currently the best choice for an offline open source voice assistant.

With this Snips app, you can ask your voice assistant to repeat its last message, the last text it captured from your speech or the last action it has performed.

The app is multi-room aware: it repeats the last message it has said or heard or the last action it has performed on the site you are talking to.

Installation

The easiest way to install this app is by adding the corresponding Snips app to your assistant in the Snips Console:

Usage

This app recognizes the following intents:

  • SayItAgain - The user asks to repeat the last message. The app responds by repeating the most recent message it uttered.
  • WhatDidISay - The user asks to repeat the last text Snips has captured. The app responds by repeating the most recent text it captured from the user's speech.
  • RepeatAction - The user asks to repeat the last action Snips has performed. The app responds by repeating the most recent intent it captured, which executes its corresponding action again.

Copyright

This app is provided by Koen Vervloesem as open source software. See LICENSE for more information.

snips-app-say-it-again's People

Contributors

koenvervloesem avatar philipp2310 avatar ultchad avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

snips-app-say-it-again's Issues

New feature: only repeat last sentence of the user who is asking

I got this idea from #3 which was suggested by @philipp2310:

You want to prevent that your wife/kids/... can ask Snips what your last sentence was. This can be solved by implementing some sort of user management/detection: the app could then repeat the last sentence of the user asking for it, just like it's now repeating the last sentence on the site ID the user is using.

This could be implemented in the app by referring to custom hotwords for each user, but I don't have any experience yet with it. When I find some time to try out custom hotwords in Snips, I will definitely implement this feature.

Test on other platforms than Raspbian

Currently this app is only tested on Raspbian.

It would be helpful if someone could test the app on other platforms supported by Snips, such as other Linux distributions (especially Ubuntu), macOS and other ARM systems than the Raspberry Pi. I'd love to hear the result, positive or negative.

New feature: timeout value for repeating sentences/intents

Originally asked in #2 by @philipp2310:

Don't allow "old" skills to be repeated:

Forget the stored data after a configurable amount of time (Probably via threads so it is really gone)
This could be used for the other skills as well (You don't want your wife to ask Snips what your last sentence was when you are gone ;))

New feature: Repeat last task

From Discord:

eto today at 23:07 Uhr
another question: is it possible to restart the last action? "repeat" "again"
exmple : "Please give me more light in the living room" and "again" it's possible ?

I think it is a good idea and would be willing to implement it in the next few weeks. (currently busy with another project)

Basic concept:
Listen to hermes/intent/#
if it is not the "repeat" skill:
Save the topic and message
if it is the "repeat" skill:
Republish the saved topic with the same message
(Possible problem: The Dialog-ID will be reused!)

Additional Idea:
Don't allow "old" skills to be repeated:
Forget the stored data after a configurable amount of time (Probably via threads so it is really gone)
This could be used for the other skills as well (You don't want your wife to ask Snips what your last sentence was when you are gone ;))

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.