Kodi + Google Music + Voxcommando

**I want to preface this with thanking JitterJames over at the VoxCommando forums for helping simplify this integration without the need for modifying the plugin as originally thought**

This How To was created how to integrate the VoxCommando program with the Google Music plugin for Kodi.  The integration allows you to play any artist, album, song or playlist that is in your Google Music library and play through Kodi.  This How To does require you have VoxCommando installed and running on your PC.  As well as installing Kodi Plugins.  If you have issues or run into issues visit the Forums and ask for help! 

You can find the program VoxCommando at http://voxcommando.com/ 
You can find the Google Music plugin for Kodi here: http://forum.kodi.tv/showthread.php?tid=200640

Once you have the application and plugin installed make sure both are working before continuing on.

The Google Music plugin creates a local database called googlemusic.db.  We can then use the xSql plugin for Voxcommando to generate payloads using this database file.  

Here is the SQL queries used to generate the 4 payload files needed.  Screenshot provided as well as text for easy copy / pasting into your VoxCommando.

**NOTE: You are going to want to set the paths to the location of your Kodi installation.  If your Kodi installation and Voxcommando installation are on the same PC you can use the drop down to fill in default paths**



Custom   select playlist_id, name from playlists                                                    gmusicplaylist   False
Custom   select distinct album from songs                                                           gmusicalbum   True
Custom   select ('song_id='||song_id||'&artistart='||artistart), title from songs   gmusicsong     False
Custom   select distinct artist from songs                                                             gmusicartist     True

The artist and album payloads are phrase only files while the other 2 are value / phrase files.  Click Save and Generate to create our payload files. 

**NOTE: In order to use the custom db field option within VoxCommando you must have the latest version installed as there is a known issue where this field does not work in earlier versions.**

Copy and Paste the following code section into your Voxcommando XML file.  These are the commands that will match the phrases and send the proper command to the plugin to play your music.  For a quick guide on how to copy and past this code into VoxCommando check out this Wiki Page on the VoxCommando site.

<?xml version="1.0" encoding="utf-16"?>
<!--VoxCommando 2.2.2.0-->
<commandGroup open="True" name="Kodi GMusic" enabled="True" prefix="" priority="0" requiredProcess="" description="">
  <command id="434" name="Play Google Playlist {1}" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <action>
      <cmdType>XJson.Raw</cmdType>
      <params>
        <param>Player.Open</param>
        <param>"item":{"file":"plugin://plugin.audio.googlemusic.exp/?action=play_all&amp;playlist_id={1}&amp;shuffle=true"}</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <phrase optional="true">play</phrase>
    <phrase>google playlist</phrase>
    <payloadFromXML phraseOnly="False" use2partPhrase="False" phraseConnector="by" Phrase2wildcard="anyone" optional="False">XbmcPayloads\gmusicplaylist.xml</payloadFromXML>
  </command>
  <command id="417" name="Play Google Artist {1}" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <action>
      <cmdType>XJson.Raw</cmdType>
      <params>
        <param>Player.Open</param>
        <param>"item":{"file":"plugin://plugin.audio.googlemusic.exp/?action=play_all&amp;filter_type=artist&amp;filter_criteria={1}&amp;shuffle=true"}</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <phrase optional="true">play</phrase>
    <phrase>google artist</phrase>
    <payloadFromXML phraseOnly="True" use2partPhrase="False" phraseConnector="by" Phrase2wildcard="anyone" optional="False">XbmcPayloads\gmusicartist.xml</payloadFromXML>
  </command>
  <command id="407" name="Play Google Album {1}" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <action>
      <cmdType>XJson.Raw</cmdType>
      <params>
        <param>Player.Open</param>
        <param>"item":{"file":"plugin://plugin.audio.googlemusic.exp/?action=play_all&amp;filter_type=album&amp;filter_criteria={1}"}</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <phrase optional="true">play</phrase>
    <phrase>google album</phrase>
    <payloadFromXML phraseOnly="True" use2partPhrase="False" phraseConnector="by" Phrase2wildcard="anyone" optional="False">XbmcPayloads\gmusicalbum.xml</payloadFromXML>
  </command>
  <command id="423" name="Play Google Song {1}" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <action>
      <cmdType>XJson.Raw</cmdType>
      <params>
        <param>Player.Open</param>
        <param>"item":{"file":"plugin://plugin.audio.googlemusic.exp/?action=play_song&amp;{1}"}</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <phrase optional="true">play</phrase>
    <phrase>google</phrase>
    <phrase>song, track</phrase>
    <payloadFromXML phraseOnly="False" use2partPhrase="False" phraseConnector="by" Phrase2wildcard="anyone" optional="False">XbmcPayloads\gmusicsong.xml</payloadFromXML>
  </command>
</commandGroup>

Once you these are added to your Voxcommando XML file save the file and then restart the program to allow the phrases to be built.

That's it! Check the video out below to see the 4 commands in action.  

Tags: Kodi, Google Music, Voxcommando

Print Email

A huge collection of 3400+ free website templates, WP themes and more http://jartheme.com/ at the biggest community-driven free web design site.