Kodi Community Forum
Release Kanzi: Amazon Alexa skill for Kodi - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Support (https://forum.kodi.tv/forumdisplay.php?fid=33)
+--- Forum: Supplementary Tools for Kodi (https://forum.kodi.tv/forumdisplay.php?fid=116)
+--- Thread: Release Kanzi: Amazon Alexa skill for Kodi (/showthread.php?tid=254502)



Amazon Echo skill for Kodi - jouster - 2017-05-07

...


RE: Amazon Echo skill for Kodi - Onknight - 2017-05-12

Getting this error
otocore.errorfactory.InvalidParameterValueException: An error occurred (InvalidParameterValueException) when calling the CreateFunction operation: The role defined for the function cannot be assumed by Lambda. I am now stuck


RE: Amazon Echo skill for Kodi - jingai - 2017-05-12

Support for multiple installations of Kodi is coming soon boys and girls.. just ironing out the last few details like documentation. Hopefully tomorrow Smile


RE: Amazon Echo skill for Kodi - jingai - 2017-05-14

Version 2.6 with multi-device support is up, and the documentation is updated, too.


RE: Amazon Echo skill for Kodi - v0lcano - 2017-05-14

Hi, I've tried several times deploying to Heroku using the link from the main page (https://github.com/m0ngr31/kodi-alexa). However although the build completes successfully, the app then immediately crashes. There seems to be a NoSectionError (i.e. NoSectionError: No section: 'alexa') but I've no idea how to fix this. Any help would be greatly appreciated! Here's the full Heroku log:

2017-05-14T17:43:50.427568+00:00 heroku[web.1]: Starting process with command `gunicorn alexa:app`
2017-05-14T17:43:53.617341+00:00 app[web.1]: [2017-05-14 17:43:53 +0000] [4] [INFO] Starting gunicorn 19.7.1
2017-05-14T17:43:53.621491+00:00 app[web.1]: [2017-05-14 17:43:53 +0000] [4] [INFO] Listening at: http://0.0.0.0:45857 (4)
2017-05-14T17:43:53.621707+00:00 app[web.1]: [2017-05-14 17:43:53 +0000] [4] [INFO] Using worker: sync
2017-05-14T17:43:53.626746+00:00 app[web.1]: [2017-05-14 17:43:53 +0000] [9] [INFO] Booting worker with pid: 9
2017-05-14T17:43:53.725729+00:00 app[web.1]: [2017-05-14 17:43:53 +0000] [11] [INFO] Booting worker with pid: 11
2017-05-14T17:43:53.851056+00:00 app[web.1]: /app/.heroku/python/lib/python2.7/site-packages/fuzzywuzzy/fuzz.py:35: UserWarning: Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning
2017-05-14T17:43:53.851059+00:00 app[web.1]: warnings.warn('Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning')
2017-05-14T17:43:53.856534+00:00 app[web.1]: [2017-05-14 17:43:53 +0000] [9] [ERROR] Exception in worker process
2017-05-14T17:43:53.856536+00:00 app[web.1]: Traceback (most recent call last):
2017-05-14T17:43:53.856536+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/arbiter.py", line 578, in spawn_worker
2017-05-14T17:43:53.856537+00:00 app[web.1]: worker.init_process()
2017-05-14T17:43:53.856537+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/workers/base.py", line 126, in init_process
2017-05-14T17:43:53.856538+00:00 app[web.1]: self.load_wsgi()
2017-05-14T17:43:53.856538+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/workers/base.py", line 135, in load_wsgi
2017-05-14T17:43:53.856539+00:00 app[web.1]: self.wsgi = self.app.wsgi()
2017-05-14T17:43:53.856539+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/app/base.py", line 67, in wsgi
2017-05-14T17:43:53.856540+00:00 app[web.1]: self.callable = self.load()
2017-05-14T17:43:53.856540+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/app/wsgiapp.py", line 65, in load
2017-05-14T17:43:53.856540+00:00 app[web.1]: return self.load_wsgiapp()
2017-05-14T17:43:53.856541+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/app/wsgiapp.py", line 52, in load_wsgiapp
2017-05-14T17:43:53.856541+00:00 app[web.1]: return util.import_app(self.app_uri)
2017-05-14T17:43:53.856542+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/util.py", line 352, in import_app
2017-05-14T17:43:53.856542+00:00 app[web.1]: __import__(module)
2017-05-14T17:43:53.856542+00:00 app[web.1]: File "/app/alexa.py", line 25, in <module>
2017-05-14T17:43:53.856543+00:00 app[web.1]: SKILL_ID = config.get('alexa', 'skill_id')
2017-05-14T17:43:53.856543+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/ConfigParser.py", line 607, in get
2017-05-14T17:43:53.856543+00:00 app[web.1]: raise NoSectionError(section)
2017-05-14T17:43:53.856544+00:00 app[web.1]: NoSectionError: No section: 'alexa'
2017-05-14T17:43:53.856773+00:00 app[web.1]: [2017-05-14 17:43:53 +0000] [9] [INFO] Worker exiting (pid: 9)
2017-05-14T17:43:53.920318+00:00 app[web.1]: /app/.heroku/python/lib/python2.7/site-packages/fuzzywuzzy/fuzz.py:35: UserWarning: Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning
2017-05-14T17:43:53.920334+00:00 app[web.1]: warnings.warn('Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning')
2017-05-14T17:43:53.924670+00:00 app[web.1]: [2017-05-14 17:43:53 +0000] [11] [ERROR] Exception in worker process
2017-05-14T17:43:53.924681+00:00 app[web.1]: Traceback (most recent call last):
2017-05-14T17:43:53.924682+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/arbiter.py", line 578, in spawn_worker
2017-05-14T17:43:53.924682+00:00 app[web.1]: worker.init_process()
2017-05-14T17:43:53.924683+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/workers/base.py", line 126, in init_process
2017-05-14T17:43:53.924683+00:00 app[web.1]: self.load_wsgi()
2017-05-14T17:43:53.924684+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/workers/base.py", line 135, in load_wsgi
2017-05-14T17:43:53.924684+00:00 app[web.1]: self.wsgi = self.app.wsgi()
2017-05-14T17:43:53.924685+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/app/base.py", line 67, in wsgi
2017-05-14T17:43:53.924685+00:00 app[web.1]: self.callable = self.load()
2017-05-14T17:43:53.924685+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/app/wsgiapp.py", line 65, in load
2017-05-14T17:43:53.924686+00:00 app[web.1]: return self.load_wsgiapp()
2017-05-14T17:43:53.924686+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/app/wsgiapp.py", line 52, in load_wsgiapp
2017-05-14T17:43:53.924687+00:00 app[web.1]: return util.import_app(self.app_uri)
2017-05-14T17:43:53.924687+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/util.py", line 352, in import_app
2017-05-14T17:43:53.924688+00:00 app[web.1]: __import__(module)
2017-05-14T17:43:53.924688+00:00 app[web.1]: File "/app/alexa.py", line 25, in <module>
2017-05-14T17:43:53.924688+00:00 app[web.1]: SKILL_ID = config.get('alexa', 'skill_id')
2017-05-14T17:43:53.924689+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/ConfigParser.py", line 607, in get
2017-05-14T17:43:53.924689+00:00 app[web.1]: raise NoSectionError(section)
2017-05-14T17:43:53.924690+00:00 app[web.1]: NoSectionError: No section: 'alexa'
2017-05-14T17:43:53.924911+00:00 app[web.1]: [2017-05-14 17:43:53 +0000] [11] [INFO] Worker exiting (pid: 11)
2017-05-14T17:43:53.951916+00:00 app[web.1]: Traceback (most recent call last):
2017-05-14T17:43:53.951918+00:00 app[web.1]: File "/app/.heroku/python/bin/gunicorn", line 11, in <module>
2017-05-14T17:43:53.951924+00:00 app[web.1]: sys.exit(run())
2017-05-14T17:43:53.951926+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/app/wsgiapp.py", line 74, in run
2017-05-14T17:43:53.951971+00:00 app[web.1]: WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
2017-05-14T17:43:53.951973+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/app/base.py", line 203, in run
2017-05-14T17:43:53.952013+00:00 app[web.1]: super(Application, self).run()
2017-05-14T17:43:53.952014+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/app/base.py", line 72, in run
2017-05-14T17:43:53.952045+00:00 app[web.1]: Arbiter(self).run()
2017-05-14T17:43:53.952046+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/arbiter.py", line 231, in run
2017-05-14T17:43:53.952083+00:00 app[web.1]: self.halt(reason=inst.reason, exit_status=inst.exit_status)
2017-05-14T17:43:53.952084+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/arbiter.py", line 344, in halt
2017-05-14T17:43:53.952146+00:00 app[web.1]: self.stop()
2017-05-14T17:43:53.952148+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/arbiter.py", line 393, in stop
2017-05-14T17:43:53.952201+00:00 app[web.1]: time.sleep(0.1)
2017-05-14T17:43:53.952202+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/arbiter.py", line 244, in handle_chld
2017-05-14T17:43:53.952235+00:00 app[web.1]: self.reap_workers()
2017-05-14T17:43:53.952236+00:00 app[web.1]: File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/arbiter.py", line 524, in reap_workers
2017-05-14T17:43:53.952312+00:00 app[web.1]: raise HaltServer(reason, self.WORKER_BOOT_ERROR)
2017-05-14T17:43:53.952346+00:00 app[web.1]: gunicorn.errors.HaltServer: <HaltServer 'Worker failed to boot.' 3>
2017-05-14T17:43:54.025099+00:00 heroku[web.1]: State changed from starting to crashed
2017-05-14T17:43:54.011854+00:00 heroku[web.1]: Process exited with status 1


RE: Amazon Echo skill for Kodi - jingai - 2017-05-14

@v0lcano, did you omit SKILL_APPID? If so, could you try setting it and see how much further you get?


RE: Amazon Echo skill for Kodi - v0lcano - 2017-05-14

Hi thanks for the quick response, i have tried it both with and without SKILL_APPID set, using the app ID from the Amazon Developer site. Both cases result in the same error. Thanks so much for helping me look into this Smile


RE: Amazon Echo skill for Kodi - jingai - 2017-05-14

We will fix it soon. It's Mother's Day, so there are obvious prior obligations, but expect it to be fixed within the next day.

Sent from my D5803


RE: Amazon Echo skill for Kodi - jingai - 2017-05-15

@v0lcano and any others trying to use Heroku atm:

It seems it was just a silly oversight. I don't actually use Heroku for this though so I'm going to hold off on the patch until @m0ngr31 can check it out.

Hang tight for a little bit longer.. or use AWS Lambda Smile


RE: Amazon Echo skill for Kodi - m0ngr31 - 2017-05-15

Should be good now


RE: Amazon Echo skill for Kodi - mcl22 - 2017-05-15

Hi, I'm using version 2.6 on a local installation (win10 x86) and do have some questions:

1. The (global) search doesn't work for me. If I try I get an answer that there soemthing went wrong. And on the kodi screen I see that it tried something. What I mean is that if I'm on the homescreen I see it "disappear" for a moment and then come back. Like calling a page that doesn't exist. Don't know how to discribe it better Smile If I manually use the addon in kodi it works.
The Log says "NameError: global name 'AddonExecute' is not defined".

2. I used the generate_custom_slots.py and for slots with a lot of entries it returned 300 pieces. As far as I know that's how it is intended to work. And I can copy paste all of them to the textboxes. But not for MUSICALBUMS. I can only add 5 items there. If I use more I get an error "Failed building the interaction model".
And albums therefore is the only item I really have problems with if I want to call them. It works for songs like "Play Rythm of my Heart from Rod Steward". But if say something like "Play album Bat out of Hell from Meat Loaf" it either tells me that there is no album called "my favourites" by Meat Loaf or it plays "my favourites" from some other artist. "my favourits" was one of the five items in the MUSICALBUMS when I tested that scenario.
I have no clue what to do there. I first deleted all albums with numbers. I then had something about 280. Didn't work. Then I deleted all "-" and "/" and "'". Didn't work. Finally I deleted all colons and any other stuff I thought about. That also didn't work.
Then I took only one album and it worked. And then I increased that number until it fails Smile
The current items are:
Hitpalast
Ans Ende denken wir zuletzt
Only Time
Made in Germany
Take a Break
And if I add for example "Schwarz" it fails. What do I do wrong?

3. The skill now works much better than before when it comes to artist names like s.t.s., j.b.o. or frei.wild. Great work! But I get an error when trying to play an artist with an umlaut in it's name like "böhse onkelz". The log tells a simple match on direct comparison but then states the following:
UnicodeEncodeError: 'ascii' codec can't encode character u'\\xf6' in position 17: ordinal not in range(128)
The same happens with Céline Dion (with another character".
And if I try to play artists like "Der W" or "Boney M." it only starts PartyPlay.


RE: Amazon Echo skill for Kodi - jingai - 2017-05-15

(2017-05-15, 09:14)mcl22 Wrote: 1. The (global) search doesn't work for me. If I try I get an answer that there soemthing went wrong.

I've fixed this in the Kodi-Voice library as of 0.7.8, but you'll need to wait just a bit for it to hit PyPi.

(2017-05-15, 09:14)mcl22 Wrote: 2. I used the generate_custom_slots.py and for slots with a lot of entries it returned 300 pieces. As far as I know that's how it is intended to work. And I can copy paste all of them to the textboxes. But not for MUSICALBUMS. I can only add 5 items there. If I use more I get an error "Failed building the interaction model".
And albums therefore is the only item I really have problems with if I want to call them. It works for songs like "Play Rythm of my Heart from Rod Steward". But if say something like "Play album Bat out of Hell from Meat Loaf" it either tells me that there is no album called "my favourites" by Meat Loaf or it plays "my favourites" from some other artist. "my favourits" was one of the five items in the MUSICALBUMS when I tested that scenario.
I have no clue what to do there. I first deleted all albums with numbers. I then had something about 280. Didn't work. Then I deleted all "-" and "/" and "'". Didn't work. Finally I deleted all colons and any other stuff I thought about. That also didn't work.
Then I took only one album and it worked. And then I increased that number until it fails Smile

Try manually trimming all slots down to a maximum of 250 items and let me know if it works. Unfortunately, there is some unknown maximum set by Amazon that appears to vary from user-to-user.. For me, it saves fine with 300 items in all slots.. but obviously not for you. Sad

(2017-05-15, 09:14)mcl22 Wrote: 3. The skill now works much better than before when it comes to artist names like s.t.s., j.b.o. or frei.wild. Great work! But I get an error when trying to play an artist with an umlaut in it's name like "böhse onkelz". The log tells a simple match on direct comparison but then states the following:
UnicodeEncodeError: 'ascii' codec can't encode character u'\\xf6' in position 17: ordinal not in range(128)
The same happens with Céline Dion (with another character".
And if I try to play artists like "Der W" or "Boney M." it only starts PartyPlay.

Will look into this. Would you mind reporting the Issue on Github please so we don't forget about it?


RE: Amazon Echo skill for Kodi - ajerazzor - 2017-05-16

I had problems following the instructions where you said to:

"If you are self-hosting, you will need to create the file `kodi.config` from the [kodi.config.example template](https://raw.githubusercontent.com/m0ngr31/kodi-voice/master/kodi_voice/kodi.config.example). The template file contains comments to describe the options."

I wasnt sure where to put this file so I put it in the clone copy - did I get this right?

I can use the web app to generate the slots, and after completing the setup I can type in the test text simulator "eg play the album back in black" and it starts playing on my Kodi device, but voice commands to my echo itself dont work, its as if she doesnt know the skill? Can someone help?


RE: Amazon Echo skill for Kodi - ajerazzor - 2017-05-16

(2017-05-16, 01:35)ajerazzor Wrote: I had problems following the instructions where you said to:

"If you are self-hosting, you will need to create the file `kodi.config` from the [kodi.config.example template](https://raw.githubusercontent.com/m0ngr31/kodi-voice/master/kodi_voice/kodi.config.example). The template file contains comments to describe the options."

I wasnt sure where to put this file so I put it in the clone copy - did I get this right?

I can use the web app to generate the slots, and after completing the setup I can type in the test text simulator "eg play the album back in black" and it starts playing on my Kodi device, but voice commands to my echo itself dont work, its as if she doesnt know the skill? Can someone help?

OK Quoting myself here - I have been playing with the voices on the echo and set it to english - this prevents the Kodi skill from working - change it back to US (I have everything else set up as US) and it works


RE: Amazon Echo skill for Kodi - msalas71 - 2017-05-16

this for @m0ngr31, can you help me, I have been trying for two months to get your Alexa skill kit to work, I have been using a video tutorial from a guy named Paul about your Alexa skill kit. If you have something to do with custom slot generator for Kodi, I keep getting an error Please validate your server information and try again. Paul says my port-forwarding is the problem, but I BOUGHT Some software named port-forwarding network utilities and spoke to two computer programmers they said my port-forwarding is correct. cna you tell me what I am missing hereHuh