1
Other Plugins / Re: TCP Plugin
« on: November 22, 2013, 11:47:32 AM »
Ok thanks, I will give your different options a try and report back.
Thanks for all the help so far.
Thanks for all the help so far.
This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
<commandGroup open="True" name="Yamaha (Test)" enabled="True" prefix="" priority="0" requiredProcess="" description="">
<command id="581" name="test" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>Tcp.Client.Connect</cmdType>
<cmdString>test&&192.168.0.4&&50000&&\x0D\x0A&&testEvent</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>Tcp.Client.Write</cmdType>
<cmdString>test&&@MAIN:VOL=?\x0D\x0A</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
</command>
<command id="575" name="testOSD" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>OSD.ShowText</cmdType>
<cmdString>Payload: {1}</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<event>testEvent</event>
</command>
</commandGroup>
2013-11-22 14:47:05 889 doCommand:test
2013-11-22 14:47:05 889 action repeat set to: 1
2013-11-22 14:47:05 889 Action: Tcp.Client.Connect - test&&192.168.0.4&&50000&&\x0D\x0A&&testEvent
2013-11-22 14:47:05 889 [action] Tcp.Client.Connect:test&&192.168.0.4&&50000&&\x0D\x0A&&testEvent
Exceptions I receive sometimes(different it seems):
[code]2013-11-22 15:35:28 632 [action] Tcp.Client.Connect:test&&192.168.0.4&&50000&&\x0D\x0A&&testEvent
2013-11-22 15:35:28 632 [plugin] TcpMic: TCP.ClientError: System.InvalidOperationException: The stream does not support reading.
2013-11-22 15:36:35 712 [action] Tcp.Client.Write:test&&@MAIN:VOL=?\x0D\x0A
2013-11-22 15:36:35 712 [plugin] TcpMic: TCP.ClientError: System.IO.IOException: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host. ---> System.Net.Sockets.SocketException: An existing connection was forcibly closed by the remote host
at System.Net.Sockets.Socket.Receive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)
at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
--- End of inner exception stack trace ---
at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
at vcPlugin.tcpClient.listenToServerLoop()
2013-11-22 15:35:28 632 [action] Tcp.Client.Write:test&&@MAIN:VOL=?\x0D\x0A
2013-11-22 15:35:28 632 [plugin] TcpMic: TCP.ClientError: System.IO.IOException: Unable to read data from the transport connection: An established connection was aborted by the software in your host machine. ---> System.Net.Sockets.SocketException: An established connection was aborted by the software in your host machine
at System.Net.Sockets.Socket.Receive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)
at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
--- End of inner exception stack trace ---
at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
at vcPlugin.tcpClient.listenToServerLoop()
2013-11-22 15:33:11 164 [action] Tcp.Client.Connect:test&&192.168.0.4&&50000&&\x0D\x0A&&testEvent
2013-11-22 15:33:11 164 [plugin] TcpMic: TCP.ClientError: System.IO.IOException: Unable to read data from the transport connection: A blocking operation was interrupted by a call to WSACancelBlockingCall. ---> System.Net.Sockets.SocketException: A blocking operation was interrupted by a call to WSACancelBlockingCall
at System.Net.Sockets.Socket.Receive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)
at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
--- End of inner exception stack trace ---
at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
at vcPlugin.tcpClient.listenToServerLoop()
2013-11-22 13:57:29 953 doCommand:test
2013-11-22 13:57:29 953 action repeat set to: 1
2013-11-22 13:57:29 953 Action: Tcp.Client.Connect - test&&192.168.0.4&&50000&&\x0D\x0A&&testEvent
2013-11-22 13:57:29 953 [action] Tcp.Client.Connect:test&&192.168.0.4&&50000&&\x0D\x0A&&testEvent
2013-11-22 13:57:29 953 [plugin] TcpMic: TCP.ClientError: System.IO.IOException: Unable to read data from the transport connection: A blocking operation was interrupted by a call to WSACancelBlockingCall. ---> System.Net.Sockets.SocketException: A blocking operation was interrupted by a call to WSACancelBlockingCall
at System.Net.Sockets.Socket.Receive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)
at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
--- End of inner exception stack trace ---
at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
at vcPlugin.tcpClient.listenToServerLoop()
2013-11-22 13:57:29 953 [vcevent] TCP.ClientError.test
2013-11-22 13:57:29 953 [vcevent] TCP.StartListen.test
2013-11-22 13:57:29 953 action repeat set to: 1
2013-11-22 13:57:29 953 Action: Tcp.Client.Write - test&&@MAIN:VOL=?
2013-11-22 13:57:29 953 [action] Tcp.Client.Write:test&&@MAIN:VOL=?
<command id="570" name="test" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>Tcp.Client.Connect</cmdType>
<cmdString>test&&192.168.0.4&&50000&&\x0D\x0A&&testEvent</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>Tcp.Client.Write</cmdType>
<cmdString>test&&@MAIN:VOL=?</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
</command>
<command id="571" name="testOSD" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>OSD.ShowText</cmdType>
<cmdString>Payload: {1}</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<event>testEvent</event>
</command>
2013-11-22 13:46:08 56 doCommand:test
2013-11-22 13:46:08 56 action repeat set to: 1
2013-11-22 13:46:08 56 Action: Tcp.Client.Connect - test&&192.168.0.4&&50000&&&&testEvent
2013-11-22 13:46:08 56 [action] Tcp.Client.Connect:test&&192.168.0.4&&50000&&&&testEvent
2013-11-22 13:46:08 56 [plugin] TcpMic: TCP.ClientError: System.InvalidOperationException: The stream does not support reading.
at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
at vcPlugin.tcpClient.listenToServerLoop()
2013-11-22 13:46:08 56 [vcevent] TCP.ClientError.test
2013-11-22 13:46:08 56 [vcevent] TCP.StartListen.test
2013-11-22 13:46:08 56 action repeat set to: 1
2013-11-22 13:46:08 56 Action: Tcp.Client.Write - test&&@MAIN:VOL=?\x0D\x0A
2013-11-22 13:46:08 56 [action] Tcp.Client.Write:test&&@MAIN:VOL=?\x0D\x0A
2013-11-22 13:46:08 56 [plugin] TcpMic: TCP.ClientError: System.IO.IOException: Unable to read data from the transport connection: An established connection was aborted by the software in your host machine. ---> System.Net.Sockets.SocketException: An established connection was aborted by the software in your host machine
at System.Net.Sockets.Socket.Receive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)
at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
--- End of inner exception stack trace ---
at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
at vcPlugin.tcpClient.listenToServerLoop()
2013-11-22 13:46:08 56 [vcevent] TCP.ClientError.test
2013-11-22 13:46:08 56 [vcevent] TCP.EndListenLoop.test
2013-11-22 13:46:48 882 doCommand:test
2013-11-22 13:46:48 882 action repeat set to: 1
2013-11-22 13:46:48 882 Action: Tcp.Client.Connect - test&&192.168.0.4&&50000&&&&testEvent
2013-11-22 13:46:48 882 [action] Tcp.Client.Connect:test&&192.168.0.4&&50000&&&&testEvent
2013-11-22 13:46:48 882 [vcevent] TCP.StartListen.test
2013-11-22 13:46:48 882 action repeat set to: 1
2013-11-22 13:46:48 882 Action: Tcp.Client.Write - test&&@MAIN:VOL=?\x0D\x0A
2013-11-22 13:46:48 882 [action] Tcp.Client.Write:test&&@MAIN:VOL=?\x0D\x0A
2013-11-22 13:46:48 882 [plugin] TcpMic: TCP.ClientError: System.IO.IOException: Unable to read data from the transport connection: An established connection was aborted by the software in your host machine. ---> System.Net.Sockets.SocketException: An established connection was aborted by the software in your host machine
at System.Net.Sockets.Socket.Receive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)
at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
--- End of inner exception stack trace ---
at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
at vcPlugin.tcpClient.listenToServerLoop()
2013-11-22 13:46:48 882 [vcevent] TCP.ClientError.test
2013-11-22 13:46:48 882 [vcevent] TCP.EndListenLoop.test
In order to get feedback reliably using tcp.client you must specify the correct terminator when creating the client.Would that be \x0D\x0A in my case?
2013-11-22 09:37:00 27 doCommand:test
2013-11-22 09:37:00 27 action repeat set to: 1
2013-11-22 09:37:00 27 Action: Tcp.Client.Connect - test&&192.168.0.4&&50000&&&&testEvent
2013-11-22 09:37:00 27 [action] Tcp.Client.Connect:test&&192.168.0.4&&50000&&&&testEvent
2013-11-22 09:37:00 27 [plugin] TcpMic: Not using message termination byte!
2013-11-22 09:37:00 27 [plugin] TcpMic: New thread created for client: test
2013-11-22 09:37:00 27 [vcevent] TCP.StartListen.test
2013-11-22 09:37:00 27 action repeat set to: 1
2013-11-22 09:37:00 27 Action: Tcp.Client.Write - test&&@MAIN:VOL=?\x0D\x0A&&5000
2013-11-22 09:37:00 27 [action] Tcp.Client.Write:test&&@MAIN:VOL=?\x0D\x0A&&5000
2013-11-22 09:37:05 32 [vcevent] testEvent
2013-11-22 09:37:05 32 doCommand:testOSD
2013-11-22 09:37:05 32 action repeat set to: 1
2013-11-22 09:37:05 32 Action: OSD.ShowText - Payload: @MAIN:VOL=-25.5\x0D\x0A
2013-11-22 09:37:05 32 [action] OSD.ShowText:Payload: @MAIN:VOL=-25.5\x0D\x0A
2013-11-22 09:37:05 32 action repeat set to: 1
2013-11-22 09:37:05 32 Action: TCP.Client.Disconnect - test
2013-11-22 09:37:05 32 [action] TCP.Client.Disconnect:test
2013-11-22 09:37:05 32 [vcevent] testEvent
2013-11-22 09:37:05 32 doCommand:testOSD
2013-11-22 09:37:05 32 action repeat set to: 1
2013-11-22 09:37:05 32 Action: OSD.ShowText - Payload:
2013-11-22 09:37:05 32 [action] OSD.ShowText:Payload:
2013-11-22 09:37:05 32 [vcevent] TCP.EndListenLoop.test
2013-11-22 09:43:04 553 doCommand:test
2013-11-22 09:43:04 553 action repeat set to: 1
2013-11-22 09:43:04 553 Action: Tcp.Client.Connect - test&&192.168.0.4&&50000&&&&testEvent
2013-11-22 09:43:04 553 [action] Tcp.Client.Connect:test&&192.168.0.4&&50000&&&&testEvent
2013-11-22 09:43:04 553 [plugin] TcpMic: Not using message termination byte!
2013-11-22 09:43:04 553 [plugin] TcpMic: New thread created for client: test
2013-11-22 09:43:04 553 [vcevent] TCP.StartListen.test
2013-11-22 09:43:04 553 action repeat set to: 1
2013-11-22 09:43:04 553 Action: Tcp.Client.Write - test&&@MAIN:VOL=?\x0D\x0A&&5000
2013-11-22 09:43:04 553 [action] Tcp.Client.Write:test&&@MAIN:VOL=?\x0D\x0A&&5000
2013-11-22 09:43:09 545 [vcevent] testEvent
2013-11-22 09:43:09 545 doCommand:testOSD
2013-11-22 09:43:09 545 action repeat set to: 1
2013-11-22 09:43:09 545 Action: OSD.ShowText - Payload:
2013-11-22 09:43:09 545 [action] OSD.ShowText:Payload:
2013-11-22 09:43:09 545 action repeat set to: 1
2013-11-22 09:43:09 545 Action: TCP.Client.Disconnect - test
2013-11-22 09:43:09 545 [action] TCP.Client.Disconnect:test
2013-11-22 09:43:09 545 focused: VoxCommando
2013-11-22 09:43:09 545 [vcevent] unFocused.chrome
2013-11-22 09:43:09 545 [vcevent] focused.VoxCommando
2013-11-22 09:43:09 545 [vcevent] testEvent
2013-11-22 09:43:09 545 doCommand:testOSD
2013-11-22 09:43:09 545 action repeat set to: 1
2013-11-22 09:43:09 545 Action: OSD.ShowText - Payload:
2013-11-22 09:43:09 545 [action] OSD.ShowText:Payload:
2013-11-22 09:43:09 545 [vcevent] TCP.EndListenLoop.test
2013-11-22 09:45:22 755 doCommand:test
2013-11-22 09:45:22 755 action repeat set to: 1
2013-11-22 09:45:22 755 Action: Tcp.Client.Connect - test&&192.168.0.4&&50000&&&&testEvent
2013-11-22 09:45:22 755 [action] Tcp.Client.Connect:test&&192.168.0.4&&50000&&&&testEvent
2013-11-22 09:45:22 755 [plugin] TcpMic: Not using message termination byte!
2013-11-22 09:45:22 755 [plugin] TcpMic: New thread created for client: test
2013-11-22 09:45:22 755 [vcevent] TCP.StartListen.test
2013-11-22 09:45:22 755 action repeat set to: 1
2013-11-22 09:45:22 755 Action: Tcp.Client.Write - test&&@MAIN:VOL=?\x0D\x0A
2013-11-22 09:45:22 755 [action] Tcp.Client.Write:test&&@MAIN:VOL=?\x0D\x0A
2013-11-22 09:45:22 755 action repeat set to: 1
2013-11-22 09:45:22 755 Action: TCP.Client.Disconnect - test
2013-11-22 09:45:22 755 [action] TCP.Client.Disconnect:test
2013-11-22 09:45:22 755 [vcevent] testEvent
2013-11-22 09:45:22 755 doCommand:testOSD
2013-11-22 09:45:22 755 action repeat set to: 1
2013-11-22 09:45:22 755 Action: OSD.ShowText - Payload: @MAIN:VOL=-25.5\x0D\x0A
2013-11-22 09:45:22 755 [action] OSD.ShowText:Payload: @MAIN:VOL=-25.5\x0D\x0A
2013-11-22 09:45:22 755 [vcevent] TCP.EndListenLoop.test
2013-11-22 09:46:40 413 doCommand:test
2013-11-22 09:46:40 413 action repeat set to: 1
2013-11-22 09:46:40 413 Action: Tcp.Client.Connect - test&&192.168.0.4&&50000&&&&testEvent
2013-11-22 09:46:40 413 [action] Tcp.Client.Connect:test&&192.168.0.4&&50000&&&&testEvent
2013-11-22 09:46:40 413 [plugin] TcpMic: Not using message termination byte!
2013-11-22 09:46:40 413 [plugin] TcpMic: New thread created for client: test
2013-11-22 09:46:40 413 [vcevent] TCP.StartListen.test
2013-11-22 09:46:40 413 action repeat set to: 1
2013-11-22 09:46:40 413 Action: Tcp.Client.Write - test&&@MAIN:VOL=?\x0D\x0A
2013-11-22 09:46:40 413 [action] Tcp.Client.Write:test&&@MAIN:VOL=?\x0D\x0A
2013-11-22 09:46:40 413 action repeat set to: 1
2013-11-22 09:46:40 413 Action: TCP.Client.Disconnect - test
2013-11-22 09:46:40 413 [action] TCP.Client.Disconnect:test
2013-11-22 09:46:40 413 [vcevent] testEvent
2013-11-22 09:46:40 413 doCommand:testOSD
2013-11-22 09:46:40 413 action repeat set to: 1
2013-11-22 09:46:40 413 Action: OSD.ShowText - Payload:
2013-11-22 09:46:40 413 [action] OSD.ShowText:Payload:
2013-11-22 09:46:40 413 [vcevent] TCP.EndListenLoop.test
2013-11-22 09:49:21 874 doCommand:test
2013-11-22 09:49:21 874 action repeat set to: 1
2013-11-22 09:49:21 874 Action: Tcp.Client.Connect - test&&192.168.0.4&&50000&&&&testEvent
2013-11-22 09:49:21 874 [action] Tcp.Client.Connect:test&&192.168.0.4&&50000&&&&testEvent
2013-11-22 09:49:21 874 [plugin] TcpMic: Not using message termination byte!
2013-11-22 09:49:21 874 [plugin] TcpMic: New thread created for client: test
2013-11-22 09:49:21 874 [vcevent] TCP.StartListen.test
2013-11-22 09:49:21 874 action repeat set to: 1
2013-11-22 09:49:21 874 Action: Tcp.Client.Write - test&&@MAIN:VOL=?\x0D\x0A
2013-11-22 09:49:21 874 [action] Tcp.Client.Write:test&&@MAIN:VOL=?\x0D\x0A
2013-11-22 09:49:21 874 [action] 09:49 VC.Pause: 5000
2013-11-22 09:49:26 896 [vcevent] testEvent
2013-11-22 09:49:26 896 doCommand:testOSD
2013-11-22 09:49:26 896 action repeat set to: 1
2013-11-22 09:49:26 896 Action: TCP.Client.Disconnect - test
2013-11-22 09:49:26 896 [action] TCP.Client.Disconnect:test
2013-11-22 09:49:26 896 action repeat set to: 1
2013-11-22 09:49:26 896 Action: OSD.ShowText - Payload: @MAIN:VOL=-25.5\x0D\x0A
2013-11-22 09:49:26 896 [action] OSD.ShowText:Payload: @MAIN:VOL=-25.5\x0D\x0A
2013-11-22 09:49:26 896 [vcevent] TCP.EndListenLoop.test
2013-11-22 09:49:38 706 doCommand:test
2013-11-22 09:49:38 706 action repeat set to: 1
2013-11-22 09:49:38 706 Action: Tcp.Client.Connect - test&&192.168.0.4&&50000&&&&testEvent
2013-11-22 09:49:38 706 [action] Tcp.Client.Connect:test&&192.168.0.4&&50000&&&&testEvent
2013-11-22 09:49:38 706 [plugin] TcpMic: Not using message termination byte!
2013-11-22 09:49:38 706 [plugin] TcpMic: New thread created for client: test
2013-11-22 09:49:38 706 [vcevent] TCP.StartListen.test
2013-11-22 09:49:38 706 action repeat set to: 1
2013-11-22 09:49:38 706 Action: Tcp.Client.Write - test&&@MAIN:VOL=?\x0D\x0A
2013-11-22 09:49:38 706 [action] Tcp.Client.Write:test&&@MAIN:VOL=?\x0D\x0A
2013-11-22 09:49:38 706 [action] 09:49 VC.Pause: 5000
2013-11-22 09:49:43 744 [vcevent] testEvent
2013-11-22 09:49:43 744 doCommand:testOSD
2013-11-22 09:49:43 744 action repeat set to: 1
2013-11-22 09:49:43 744 Action: TCP.Client.Disconnect - test
2013-11-22 09:49:43 744 [action] TCP.Client.Disconnect:test
2013-11-22 09:49:43 744 action repeat set to: 1
2013-11-22 09:49:43 744 Action: OSD.ShowText - Payload:
2013-11-22 09:49:43 744 [action] OSD.ShowText:Payload:
2013-11-22 09:49:43 744 [vcevent] TCP.EndListenLoop.test
2013-11-20 16:11:58 249 Error creating grammar: Yamaha
2013-11-20 16:11:58 249 Error text: System.IO.EndOfStreamException: Unable to read beyond the end of the stream.
at System.IO.__Error.EndOfFile()
at System.IO.BinaryReader.FillBuffer(Int32 numBytes)
at System.IO.BinaryReader.ReadUInt32()
at System.Speech.Internal.SrgsCompiler.CfgGrammar.CfgSerializedHeader.IsCfg(Stream stream, Int32& cfgLength)
at System.Speech.Recognition.SrgsGrammar.SrgsGrammarCompiler.CheckIfCfg(Stream stream, Int32& cfgLength)
at System.Speech.Recognition.SrgsGrammar.SrgsGrammarCompiler.CompileXmlOrCopyCfg(Stream inputStream, Stream outputStream, Uri orginalUri)
at System.Speech.Recognition.Grammar.LoadCfg(Boolean isImportedGrammar, Boolean stgInit)
at System.Speech.Recognition.Grammar.LoadAndCompileCfgData(Boolean isImportedGrammar, Boolean stgInit)
at System.Speech.Recognition.Grammar.InitialGrammarLoad(String ruleName, Object[] parameters, Boolean isImportedGrammar)
at System.Speech.Recognition.Grammar..ctor(String path, String ruleName, Object[] parameters)
at System.Speech.Recognition.Grammar..ctor(String path)
at l.a(XmlElement A_0, Boolean A_1, String A_2, CommandList& A_3)
at l.a(String A_0, SpeechRecognitionEngine A_1, CommandList& A_2, TreeView& A_3)
<commandGroup open="False" name="Yamaha" enabled="True" prefix="" priority="0" requiredProcess="" description="">
<command id="489" name="Power on" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>TCP.Single.Write</cmdType>
<cmdString>{M:Receiver_Yamaha.Power ON}&&192.168.0.4&&50000</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<phrase>receiver power on</phrase>
</command>
<command id="490" name="Power off" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>TCP.Single.Write</cmdType>
<cmdString>{M:Receiver_Yamaha.Standby}&&192.168.0.4&&50000</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<phrase>receiver power off</phrase>
</command>
<command id="600" name="Volume set" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>Map.Set</cmdType>
<cmdString>Receiver_Yamaha&&Current VOL&&{1}</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<phrase>receiver set volume</phrase>
<payloadRange>15-70</payloadRange>
</command>
<command id="535" name="Mute" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>TCP.Single.Write</cmdType>
<cmdString>{M:Receiver_Yamaha.Mute}&&192.168.0.4&&50000</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<phrase>receiver</phrase>
<phrase>mute, unmute</phrase>
</command>
<command id="536" name="Scene XBMC" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>TCP.Single.Write</cmdType>
<cmdString>{M:Receiver_Yamaha.Scene 2}&&192.168.0.4&&50000</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<phrase>receiver scene</phrase>
<phrase>x b m c, media center</phrase>
</command>
<command id="546" name="Scene TV" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>TCP.Single.Write</cmdType>
<cmdString>{M:Receiver_Yamaha.Scene 3}&&192.168.0.4&&50000</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<phrase>receiver scene</phrase>
<phrase>t v, television</phrase>
</command>
<command id="547" name="Scene Music" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>TCP.Single.Write</cmdType>
<cmdString>{M:Receiver_Yamaha.Scene 4}&&192.168.0.4&&50000</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<phrase>receiver scene music</phrase>
</command>
<command id="548" name="Scene XBOX" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>TCP.Single.Write</cmdType>
<cmdString>{M:Receiver_Yamaha.Scene 1}&&192.168.0.4&&50000</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<phrase>receiver scene x box</phrase>
</command>
<command id="581" name="Get current volume" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>Tcp.Client.Connect</cmdType>
<cmdString>Receiver&&192.168.0.4&&50000</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>Tcp.Client.Write</cmdType>
<cmdString>Receiver&&{M:Receiver_Yamaha.Get VOL}&&100</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>TCP.Client.Disconnect</cmdType>
<cmdString>Receiver</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<phrase>receiver current volume</phrase>
</command>
<command id="602" name="Silent mode" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>TCP.Single.Write</cmdType>
<cmdString>{M:Receiver_Yamaha.Set VOL}70\x0D\x0A&&192.168.0.4&&50000</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<event>SilentMode</event>
</command>
<command id="612" name="Normal mode" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>TCP.Single.Write</cmdType>
<cmdString>{M:Receiver_Yamaha.Set VOL}{M:Receiver_Yamaha.Current VOL}\x0D\x0A&&192.168.0.4&&50000</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<event>NormalMode</event>
</command>
</commandGroup>