Hi
After the smart playlists this is my prefer command. I dont speak english but i will try to explain how this works.
Thanks James and Wanilton for all help with this.
We have to install a plugin in Xbmc, this plugin will generate a txt file everytime we send the command with vox, so we can get the info of ours songs, albuns, episodes, season, tv shows and movies. We can get all the infos without have to play the files. You can for exemple navigate over you movies and get the plot, rating, duration, etc.
For this work install the plugin and import the group for VoxCommando:
https://dl.dropbox.com/u/89557567/script.vcgetinfo.zip
https://dl.dropbox.com/u/89557567/VcGrp_XBMC%20script%20container.xml
You will better understand using then reading here.
You can use all this regex to get the infos :
<Container>(.*)</Container> This will get the info of the container who you are navigating. The match will depend where you are in xbmc. EX: Movie, TV Show, TV Show Episodes, TV Show Seasons, Music or Music Songs.
<Title>(.*)</Title> get the title of the songs, episodes or movies
<Rating>(.*)</Rating> get the rating of the movies or songs.
<OriginalTitle>(.*)</OriginalTitle> original title of the movie
<Plot>(.*)</Plot> plot of movies or episodes
<Year>(.*)</Year> year of the movie, album or tv show.
<Genre>(.*)</Genre>
<Director>(.*)</Director>
<Country>(.*)</Country><Tagline>(.*)</Tagline> for movies or tv shows
<Duration>(.*)</Duration> songs, movies or episodes
<FileExtension>(.*)</FileExtension> get the files extension of the movies or episodes
<TVShowTitle>(.*)</TVShowTitle> only for tv show
<ShowPlot>(.*)</ShowPlot> Only for tv show
<Season>(.*)</Season> will get the number of the season of a tv show
<TotalSeasons>(.*)</TotalSeasons> will get the total number of seasons of a tv show.
<Episode>(.*)</Episode> get the number of the episode
<TotalEpisodes>(.*)</TotalEpisodes> if you are over a tv show will return how much episodes the tv show have, if you are over a season will return the number of episodes in the season.
<WatchedEpisodes>(.*)</WatchedEpisodes> if you are over a tv show will return how many episodes you watched for this tv show, if you are over a season will return the number of episodes you watched in this season.
<UnWatchedEpisodes>(.*)</UnWatchedEpisodes> same thing, but for unwatched
<audioType>(.*)</audioType> the type of the audio file
<Artist>(.*)</Artist> name of the singer if you are navigation over a album or song
<Album>(.*)</Album><TrackNumber>(.*)</TrackNumber><Lyrics>(.*)</Lyrics> this will get the lyrics of the song, if the song have one.
<Path>(.*)</Path> you return the full path of a file
<FolderName>(.*)</FolderName> will return only the folder name of the file.
Now the only thing you need its imagination.
Import the group "
XBMC script container" and you see how you can manage all this regex without any problem. This group have only one phrase : "
Read to Me" , try to navigate in xbmc (movies, musics, tv shows, episodes, etc) and say
Read to Me, you will see how the VoxCommando group works using the regex for Container and a few events.
How the this group works :You will se a command in this group named "
Read to me" with a phrase "
Read to me", see the picture
[attachment=1]
See the actions picture :
[attachment=2]
When you say the phrase
Read to Me VoxCommando will tell for xbmc run the script, after that the script will generate a .txt file (
infotemp.txt), you can open this txt file (will be in root of your VoxCommando) and see al the infos there.
After the VoxCommando read the file with can get and manage the infos with the regex, in this case i am geting the container informartion with the regex
<Container>(.*)</Container>, so if you are navigating over your movies the
{Match.1} will be
Movies, lke i said before. In the next acdtion the VoxCommando will trigger a event
Container.{Match.1} in this case
Container.Movies, see now the pictrue bellow :
[attachment=3]
After the trigger Event the command Container.Movie will run.
[attachment=4]
All done. Off course we can get off the TTS.SetVoiceName, i am using because my movies have the title in Englisch but the plot is in portuguese.
Its the same thing for songs, tvShows, episodes, etc. All this have a event.
For people from Brasil the
match from the
Container regex its a little diferent for songs and tvshows, because sometimes we have in the same tvshow a plot in English and other in Portuguese. How solved that ? Well, the most of portugue plots have
accents and "
ç", so i put a little code in the script. If the episode (tv show, season) plot have accents or "ç" the script will return the container like "
TV Show Brasil" this will trigger the event
Container.Tv Shows Brasil and you can use the TTS.SetVoiceName to get the tts in portuguese.
For music i solved this with another trick. Every song have a genre, so if the genre its a brasilian genre like
samba, mpb, sertanejo, rock nacional, reggee nacional, etc, the regex from the container will be "
Container.Music Brasil" or "
Container.Music Songs Brasil", again you can decide how tss voice you want to use. This can be make for others country songs too, like german songs for our friend Kalle. I only need to know the name of the genrs of this country to put this in the script.
I think this is all. Works very well for me and i thik works for James and Wanilton, i am not sure.
I am sorry for my bad english, i will explain this better in the portuguese section very soon. Now i am trying to put vox to control the
PopCorn Hour and
Dune HD Max, like we make with XBMC, i think will be possible to navigate, ask for musics and movies, maybe even pick up the feedback from PopCorn Hour.
Clayton