Testing and Feedback for Kodi Skill

@pcwii For PVR testing, the easiest thing todo is to find/grab some live streams on the internet (any would do) and use and configure the “IPTV Simple Client”

https://kodi.wiki/view/Add-on:IPTV_Simple_Client

https://forum.kodi.tv/forumdisplay.php?fid=215

I use VDR with kodi-pvr-vdr-vnsi. Of course, the music functionality would not be bad either. because you would have to agree with the mycroft_core guys somehow because of the keywords. kodi is very powerful

Thanks for this! It works nicely with my kodi 18 beta.

I had to disable skill mycroft-playback-control.mycroftai because your skill doesn’t play well with it.
(it eats the ‘play’ commands).
This is probably related to the new CommonPlay mechanism, but that might require some work.

I’d like to use this for tvshows/series as well:
'play the next unseen episode of ’
with dialog for ‘resume/start over’.

For PVR/livetv I use tvheadend.

I think you have to configure github to allow us to open issues, because right now we can’t.

How do you/does Mycroft plan on handling multiple instances for Kodi? Manual config edit per mycroft-instance?

Thanks again, keep up the good work.

Thanks for testing this. I have had very little development time over the past couple weeks. I do have a few kaizens in my todo list and this includes integrating with the CommonPlay mechanism that I have not fully digested yet. I will look into opening the issues deck on github.

For anyone who is interested I have cleaned up the Kodi-skill code quite a bit and it could use some community testing. Please check out the readme file on github for installation and usage.
If you find bugs (I am sure a couple are in there) let me know.
Unfortunately it is English only at this point but if someone is eager to update the language files I can support.

1 Like

If anyone is interested, I have corrected a breaking change that was introduced on V20.2
to the skillsettings callback on the Kodi skill so if you have had issues recently it should be good to go. Let me know if you have success or other.
Just an FYI - I have done some testing on using this skill to cast my Kodi library items to a chromecast device located elsewhere in my house. If this is a feature you would like to see added to the Kodi Skill let me know and I will have a go.

2 Likes

Thanks a lot!
I updated right away and it works! (Working on stable Kodi 18.3)

Hopefully I will find more time next week to test it further and tinker with it :wink:
(I am not sure how to play tv-shows with different seasons … but I surely will figure it out ^^)

In the gits readme-examples you list the “pause kodi”-Utterance which isn’t working for me since it requires the film-keyword. Perhaps you could change the example to “pause the movie” or “pause the show”, which does the job :slight_smile:

2 Likes

Thanks for testing, the “pause kodi” should work now.
It may take a few minutes to make it to your device. I am looking into the tv-show and music controls. The KODI api has several functions for these items that I never got around to implementing. If I get some time through the quarantine I will see if i can get them working.

5 Likes

Thanks, its working :slight_smile:

I’m trying to figure out why correctly requested films won’t play. I guess its a problem with my library. Some movies work, some don’t.

For example:
“play the movie aquaman” was recognized correct and the film got the correct name in my library, but it won’t play. If I try “play the movie avatar” it works perfectly.

I would be interested in seeing the logs on the failed requests to see what might be happening.
Also you could try one of the following commands to clean up the database, and see if that helps.

  • “update the kodi library”
  • “clean the kodi library”
1 Like

I’m new to mycroft so everything takes a minute longer because I have to look some things up in the documentation or git-readmes :wink:

I checked the logfiles and I found my problem in mycrofts /var/log/skills.log

Apparently mycroft tries to use the skill-playback-control for some movie-requests and the kodi-skill for others.

Once I removed the skill-playpack-control all movies work properly :wink:

1 Like

Apparently this is a conflict with the Common playback control system. I thought I had got around that for now but apparently not. At some point I will need to update the skill to support the playback control. Can you provide the steps (or a link) to get it working, I would like to update my readme file to assist others who may have the same issues.
Enjoy!

I really did nothing fancy ^^

Since I don’t use skills who use the common playback control I completely uninstalled the skill via CommandLine/SSH. This way I could test if the problem lies with the kodi-skill or not.

msm remove skill-playback-control

Since it works properly after removing the playback-control I guess the problem lies in the shared common terminology “play” which is used by both skills.

Other users should check if they use the common-playback-control for other skills before removing. Since it is used by other services (like maybe pandora, spotify, news, etc.) this services may not work after removing the common skill.

(BTW: I’m sure I could have removed it with a voicecommand like “Hey Mycroft, uninstall skill-playback-control” but since I was already ssh’d in to check the logs it was easier this way)

Hi Pcwii,

I am enjoying your skill for kodi. I was wondering if you made some steps towards music and TV show control? I am playing around with it, but am really new to python, mycroft and skill making :joy:
Thanks again and hope to hear more on your developments.

Cheers Sjefke

1 Like

My Kodi efforts of late have been attempting to get it to play nice with the common play framework. I have had little time on this lately. I will take a quick look at the music / TV request. And see if I can wedge something in for you. Can you give me a couple command Examples so I can use them as test cases? eg. What would you say to mycroft to play some music / TV shows. If you are playing around with python and kodi, there is a repo on my github that has some kodi testing scripts that I used (without mycroft) to ensure the code would work before putting it into the Mycroft Skill. There is also a Kodi JSON api link that I found helpful. I learned Python exclusively so I could work on Mycroft about two years ago now so if I can figure it out I am sure you will as well. Links below…


https://kodi.wiki/view/JSON-RPC_API/v8

1 Like

Hey, thanks for the reply. I would like to say: ask kodi to play the artist elvis Presley. Or: ask kodi to play all shook up. Or: ask kodi to play the album appeal to reason.

For shows: ask kodi to play the blacklist season 7 episode 8.

I have copied your skill to my own repo and am just trying to copy the stop_movie command to stop_music. But I can’t understand why it doesn’t work… Changed film or movie to music in init.py and added MusicKeyword.voc with music as content.

I have a lot to learn…

1 Like

@Sjefke, I have updated the skill to play music now. if you ssh and peform an msm update it should pull down the latest version. The following commands should now work with your music library.
“Ask Kodi to play the artist elvis presley”
“Ask kodi to play all shook up”
“Ask kodi to play the album appeal to reason”
If you don’t specify the words “artist”, “song”, “album” it will do it’s best to figure out what to play by searching each category for a match in the following order.

  1. Search for a song that matches the request.
  2. Search for an artist that matches the request.
  3. Search for an album that matches the request.
    As an example if the album name and title track are the same it will default to the title track if you don’t specify “album” in your command.
    Enjoy and let me know your feedback.
    I have had issues testing this here as my kodi music library seems to be corrupted.
2 Likes

Hi pcwii,

Thank you for the very quick response. I have been playing around with it a bit and it works well. I have found a few things that I think can be improved, if possible. In the skill or maybe it is my settings.

  • An album is played in alphabetical order, not based on the track list. Is this a setting on your end or on mine?
  • The skill is really slow to find an item and start playing. I must say I have a large library, but it takes Mycroft at least 1,5 to 2 minutes to play.
  • Suggestion: show current playlist on kodi screen when starts playing would be nice.

I haven’t played around with it enough but this is my first feedback. Thanks again for all the effort.

Wow, i am very surprised by the long wait time. I will see if I can figure out where the delay is, I only have a handful of albums on my server i added to test this skill and it responds quite quickly. I will investigate the other items as well. Thanks for testing.

I have added a bit of logging to get to the bottom of the delay. The log should show a duration event for how long the search and parsing of the request took. I would be interested in knowing what this returns. I noticed there are definitely some inefficiencies in searching when it searches when no category (album, song, artist) is mentioned in the request. This is due to me searching the library once for each category, I could definitely do this in a single pass i think. Still unsure about your other items, I need to increase me library to do some real testing on this.

1 Like