Cross-platform voice frameworks

I’m thinking of writing a skill. However, what puts me off is that the skill I would write would be for an almost non-existent audience. Even I wouldn’t use it, as I don’t have a Mycroft device and Mycroft doesn’t have a stand-alone mobile app yet. (And I don’t see any use case for the desktop version.)

As such, I’d like to use a cross-platform voice framework to get the most out of my time. Unfortunately, there isn’t any cross-platform framework that supports Mycroft.

Would Mycroft consider working with cross-platform framework creators to bring about support for it? For example, Jovo would be interested in collaborating: https://github.com/jovotech/jovo-framework/issues/576 .

2 Likes

Hey tinman,

Thanks for flagging this, I haven’t used Jovo before but I like the design of their learning resources.

I can see that integrating with their platform would have a double benefit, it would encourage those wanting to build cross-platform Skills, and it would make it easier for those more comfortable with Javascript.

This is no small undertaking though. We’ll need to take a much deeper look at what would be required.

Would love to hear from others who are interested in seeing this happen too.

Hey! Jan here, one of the creators of the Jovo Framework.

Thanks for bringing this up @tinman. We’ve been discussing this internally for a while now, and are interested in working together with the Mycroft team to explore how an integration could look like.

The main challenge we’re seeing is that Mycroft Skills are built with Python, Jovo uses TypeScript/JavaScript. Does the Mycroft team have plans to work on a JSON interface similar to how Alexa and Google Assistant communicate with apps? This would help a lot

this is huge work, please don’t devote resources to this Mycroft Team

i have 0 interest in supporting amazon or google, you are supposed to be THE alternative

I don’t see any benefit either, want to help people who can only code in javascript? theres a lot of open js based assistants floating around in github already, what about other languages then? Everyone has their favorite language and each language has its strength, you can’t support all languages and to me javascript does not seem the most appropriate at all

Regarding cross platform skills, as a dev i do no want to have to test in yet another (spy!) platform, and in this case change coding language, if you do get regular python skills being cross platform that’s the day i stop developing for mycroft

Don’t get me wrong, nothing against Jovo at all, i think enabling people to do things is always good, but mycroft is a privacy first company, don’t forget that and allocate your resources accordingly

2 Likes

If sharing the business logic between mycroft and alexa skills is important, I’d suggest a local skill that talks to the jovo service API similar to the email skill talking IMAP.

Trying to force the mycroft skill structure to serve alexa/google/jovo skills is a mismatch in a couple of ways beside language

  • access to the transcript/utterance is not available so any skill using converse() has problems
  • jovo skill services run in parallel on a single machine vs mycroft distributed which affects resource/user considerations.
1 Like