More standardization between the desktop and the pi units. Docker support for the services would be fantastic too! Easier control of the hardware on the mark units (being able to update the aurdino easily), but only if it can be done securely.
The mark units should come with custom passwords that are sent along with the units (root, pi, mycroft accounts) no default passwords.
the pairing skill should be able to just pass the username and password of your home.mycroft.ai account rather than having to have a computer nearby to manually type the verification(it can stay as an option though).
As many of the setup features should be able to done without internet access as possible.
It should be easier to setup my own “home.mycroft.ai”.
i’d like a non-monitor device with just microphone and speaker - technique maybe like a conference telephone (e.g. https://www.snom.com/conferencing/) - but in a smaller shape. I don’t want to say dot or similar - but something you can easily put everywhere without needing much space or it beeing on display. More function than looks.
My general idea for private use is to have one main mycroft instance running with display - like a magic/smart mirror - and in other rooms the small “invisible” device i described acting as microphone and speaker only.
For business use (laboratory) something like a main mycroft instance running on pc/server (accessible via browser) and a dictate option/dictate into forms skill would be great (like having a document template with some fields to fill, or a report to fill - and have mycroft write/add the info while you work and use e.g. a headset or something like the above described small device (hands free) to add data).
Hey there @kaktux, great suggestions. We really love the idea of being able to have some sort of endpoint that captures and outputs audio and then sends it back to a main unit.
The “form” or “repetitive task” data-gathering Skill is a great idea too - particularly for people who work in the field or need to go through a structured process repeated times - such as researchers or data collectors.
You might want to consider writing this up in our Skill Suggestion area as well, particularly if you have a specific use case.
So basically the equivalent to a “dumb terminal” except for audio? Might even be able to have the main one simply see each “terminal” as an additional mic/speaker, as long as it knows “use X speaker to reply to commands from X microphone, and Y speaker to reply to commands from Y microphone”.
I propose a broad and robust implementation of XMPP + Jingle extensions as a core capability of Mycroft, and every device gets its own registered JID, or perhaps its own JID resource, something like: Mycroft.ai.Warwick@Xabber.org/home.kitchen
This opens many possibilities including but not limited to device-to-device “intercom”, general voice and video communications (with other XMPP/Jabber users out there), ability to send IM-based notifications, reminders, etc., and even limited Mycroft command input remotely (caution and care and authentication on something like this obviously). Mycroft utterances are just XMPP IM message replies instead of TTS. I believe this provides what @Kallisti described without any need to have external virtual hosting. And of course, XMPP is a strongly OpenSource and fairly mature protocol/scheme (jingle extensions less so, admittedly) including encryption extensions and cross-platform options.
If Mycroft is also issued a dedicated email address and the device watches the inbox through IMAP, responses can be literal reply emails where content body is just the Mycroft response utterance text prior to TTS submission. If the JID matches the dedicated email address closely there is a nice continuity of identity across closely related mediums, and Mycroft has multiple ways to reach you. Here again, pairing time would include a new setting: Email addresses authorized to issue commands to Mycroft.
As an aside, perhaps there is a possibility of a modest revenue stream from this. home.mycroft.ai should definitely be free for basic pairing and skills and core software and so on, but there could be a “premium” level of home.mycroft.ai service where you offer XMPP (+ jingle) services on home.mycroft.ai for a low monthly or annual fee. Users are welcome to go find their own public Jabber/XMPP server if they want, but then they have the additional hassle and maybe not all the capabilities and integration.
First let me say that this is not an area of expertise for me, so I’m full of not-fully-qualified opinion on the matter.
I believe that XMPP+Jingle extensions does provide for some optional SIP integration . However, my first thought is that XMPP + Jingle extensions is sufficiently rich in functionality, and indeed offers a few other features that might be interesting to Mycroft in the future. There would not be a compelling added functionality in the SIP stuff (but I welcome some examples illustrating the contrary).
I do see SIP (and even more connectivity methods/protocols) as a desirable further, much further down the roadmap type of thing. Of course it would be super-duper cool for Mycroft to be able to send and receive utterances with nearly equal ease over voice call over PSTN and/or VoIP, ASL-via-webcam + projected display, SMS, email, IM, etc. I think a solid foundation that covers the most modes (if not every extant protocol of each mode) is available via implementing email and XMPP+Jingle.
What about a list of things to do / shopping list? I don’t think I’ve seen this anywhere, it is the “has the fish been fed today?” skill that gave me this idea…
I often notice that I am almost out of this or that, but then I forget to add it to the list I have on my phone so I forget to buy it… Having Mycroft keep track of what I need just by saying so as soon as I notice it would be awesome.
Hey Mycroft, I need to buy item X.
Hey Mycroft, remove item X from the list.
Hey Mycroft, what do I need to buy?
Hey Mycroft, I’m done shopping / erase the shopping list
And to go maybe even further:
Hey Mycroft, when did I last buy item X?
Edit: I see that @klundry already suggested that actually
Here’s my take on the “single server multiple listening devices” scenario that a couple users have suggested…
I’ve been thinking of that too, and I believe I have an idea worth exploring.
I have installed Mycroft on an old laptop running OpenSUSE 15.0 beta - which comes with PulseAudio.
I am pretty sure that PulseAudio has some network capabilities (i.e. routing the sound through the network) even though I have never tried myself. So one possibility would be to have one server with Mycroft installed, and multiple devices simply running a basic Linux distribution with PulseAudio - a Raspberry Pie would do just fine for this - all routing their audio to the server.
Now the problems with that are…
The Mycroft server would have to route its vocal answer to the client the request emanated from. So we’d need to be able to identify that.
As far as I can tell Mycroft can currently serve only one request at a time. That’s fine if there is only one person in the house, but what happens when two or more users make a request at the same time from different rooms?
Just my two cents… I think this is a route worth exploring
I did see this skill but it relies on a 3rd party online service. I would rather not send my shopping list to an outside service that could go down or change hands or leak my data. This is a simple enough task that a completely local skill is what I feel makes the most sense.
I currently use an echo dot. The most features I use is to turn lights on and off and to get my schedule which is integrated with Google calendars. I don’t know if this is available or not but I think it would be cool for you guys to have an area for question-and-answer such as if you ask Mycroft a question as simple as how old is Joshua Montgomery you can have the community put in the answer and have a safeguard or something where it gets approved by Mycroft staff or trusted moderators. Rather than going to Wikipedia. I know if that was a feature I would love contribute to something like that. There are a lot of things that I ask the echo Dot that just doesn’t know. Have the users inner the question and the answer and different variations of the question for the answer I think the community would enjoy adding all kinds of cool answers to questions. That’s my two cents.
And it would give people bragging rights. Could you imagine all the Easter eggs like hey Mycroft why am I so cool. And have several different answers rather than just one such as. I think you’re so cool because you’re talking to me and I’m pretty cool myself Mycroft out. hahaha
What do I want see?
I want to see a full implementation of Mycroft that can be online or offline (we choose). I asked about a year ago if Mycroft could be offline and the answer was it was being worked. I asked again a couple of months and still it was not setup to do it yet. You may ask why this is so important.
If your house is home automated and your electricity goes out you should still be able to turn on and off the lights and important things around the house. My son (high functioning Autism) has an Alexa and this was the first thing he hated about it when our internet went out and he could not turn on his light (we have since fixed this my putting the lights on a local mosquitto server setup)
If we want to stay private we should have that option while still being able to be online when needed (like weather, local news, etc).