Changing channels by channel name in Pseudo TV LIVE,
this group of commands is used to change channels based on channel names
the first command will use the settings2.xml from PTVL add-on to create a map table "PTVL" and a PTVL.xml payload in your xbmc payloads folder
YOU NEED TO RENAME ALL CHANNELS WITH THE 1ST RULE IN THE PTVL CHANNEL CONFIGURATION this will remove channels marked as "do not play" and channels that have been removed from your channel configuration but are still in your settings2.xml from the payload xmlthe second command is used for changing the channels
PTVL by channel name:
<?xml version="1.0" encoding="utf-16"?>
<!--VoxCommando 2.0.1.0-->
<commandGroup open="True" name="PTVL by channel name" enabled="True" prefix="" priority="0" requiredProcess="" description="">
<command id="201" name="UPDATE PTVL " enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description=""5" = channels that are marked as do not play 

"9999" = channels that have been removed ">
<action>
<cmdType>Map.DropTable</cmdType>
<params>
<param>PTVL</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>Map.CreateTable</cmdType>
<params>
<param>PTVL</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>File.Read</cmdType>
<params>
<param>{Path.Appdata}\XBMC\userdata\addon_data\script.pseudotv.live\settings2.xml</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>Results.RegEx</cmdType>
<params>
<param>Channel_(.*?)_rule_1_opt_1"\Wvalue="(.*?)"</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>Map.Set</cmdType>
<params>
<param>PTVL</param>
<param>{Match.{i}.1}</param>
<param>{Match.{i}.2}</param>
</params>
<cmdRepeat>{#M}</cmdRepeat>
</action>
<if ifBlockDisabled="False" ifNot="False">
<ifType>(A)Contains(B)</ifType>
<ifParams>{LastResult}&&"5"</ifParams>
<then>
<action>
<cmdType>Results.RegEx</cmdType>
<params>
<param>Channel_(.*?)_rule_\d_id"\Wvalue="5"</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>Map.Query</cmdType>
<params>
<param>delete from PTVL where fromKey="{Match.{i}.1}"</param>
</params>
<cmdRepeat>{#M}</cmdRepeat>
</action>
</then>
<else />
</if>
<if ifBlockDisabled="False" ifNot="False">
<ifType>(A)Contains(B)</ifType>
<ifParams>{LastResult}&&"9999"</ifParams>
<then>
<action>
<cmdType>Results.RegEx</cmdType>
<params>
<param>Channel_(.*?)_type"\Wvalue="9999"</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>Map.Query</cmdType>
<params>
<param>delete from PTVL where fromKey="{Match.{i}.1}"</param>
</params>
<cmdRepeat>{#M}</cmdRepeat>
</action>
</then>
<else />
</if>
<action>
<cmdType>Map.ExportPayloadXML</cmdType>
<params>
<param>{Path.VC}\XbmcPayloads\PTVL.xml</param>
<param>PTVL</param>
<param>True</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<phrase>Update sudo TV live</phrase>
</command>
<command id="507" name="PTVL channels" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>TTS.Speak</cmdType>
<params>
<param>changing to {PF.1} channel</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>Results.RegEx</cmdType>
<params>
<param>(\d)</param>
<param />
<param>{1}</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>XJson.Raw</cmdType>
<params>
<param>Input.ExecuteAction</param>
<param>"action":"number{Match.{i}}"</param>
</params>
<cmdRepeat>{#M}</cmdRepeat>
</action>
<action>
<cmdType>XJson.Raw</cmdType>
<params>
<param>Input.ExecuteAction</param>
<param>"action":"select"</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<phrase>Watch </phrase>
<phrase optional="true">The</phrase>
<payloadFromXML phraseOnly="False" use2partPhrase="False" phraseConnector="by" Phrase2wildcard="anyone" optional="False">XbmcPayloads\PTVL.xml</payloadFromXML>
<phrase optional="true">Channel, Network</phrase>
</command>
</commandGroup>
NOTE: If you use eventghost, PTVL has eventghost triggers that you could use to have your PTVL payload update every time you start or stop PTVL
thanks for the help with the numbers input jitterjames