Connect or pairing to external services

Hi to everyone,

i’m “developing” new skill on Picroft today. Our company has a own IPTV platform for Czech and Slovak Republic but works in whole EU. We have a little bit more free time to different projects thanks to COVID-19 :frowning: Will be nice to have a voice assistant like Mycroft and control our end devices conected to televisions like Spotify.

Every new end device for example Mycroft need to me pair with out servers / services. Like Spotify skill. Do you have any guidance how to solve Connect button to pair on web with our external services ? I was googling whole day, read lots of information on internet but nothing. Spotify skill use OAuth but it’s specific only for these service.

Thanks a lot

Have a perfect and healthy day !


Hi Manas, welcome to the community!

Glad you’re staying safe and have some free time to explore Mycroft :slight_smile:

Currently there’s no automated way to use OAuth in Skills, they must be setup manually for each service and you’re then provided with a token to use in your Skill. @forslund can provide some more detail and help you get setup with that.

Sounds like a very cool project!

Thanks Gez,

i was thinking how to solve it without “connection” button and there is another way / workaround i think.

Simple using a voice pairing like Picroft with your servers :slight_smile: Just tell to users web site like “open the web abcd dot cz and type your username, password and pairing code”. And thas it :slight_smile:



1 Like

The spotify connect button is oauth2 specific. If you’re using oauth2 for access we can create an entry for your oauth2 credentials in our db and you can use that.

Using a pairing code like you suggest sounds like a possible solution, but that will require some work on your part to allow fetching an auth token from the skill after a user has paired.

There is an intention to also support a token store so skills can use a token provided by the skill creator while keeping it secret. However that project has been put on ice for the time being.

What sort of authentication are your service using?

1 Like

Hi @forslund,

sorry for late answers. We are using our proprietal authentication so this is not a good way. Today i am use voice pairing code and it’s ok for now :slight_smile:


1 Like

Nice to hear it’s working well. I’d love to see the implementation for your solution if it’s published somewhere.

Of course it’s here

But I am coding in Python only eighth day :slight_smile: It’s terrible code but works like"proof of concept"

1 Like