Telnet script to amplifier


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Telnet script to amplifier
# 15  
Old 05-14-2014
Quote:
Originally Posted by Corona688
Code:
#!/bin/bash

# Might need \r\n, not sure
T="\n"

amp() {
        printf "%s${T}" "$*" | nc 192.168.1.155 8192 -q 1
}


REPLY=$(amp "?p")

echo "Got reply '$REPLY'"

if [[ "$REPLY" == *PWR0* ]]
then
        echo "got PWR0"
        amp "MZ"
else
        echo "Did not get PWR0"
fi

I run the script and gave me a output, but it was wrong, The amplifier is on, but it gave me did not get PWR0. I changed the port to 8102 and to 23, both gave the same result. Why did you made it port 8192? mistake? I also eddit it with another command, like ?V (which is volume, it should give me VOL125... But it didn't) So I saw you added a comment, maybe it needs \r\n. where does it go? Many thanks for your help! I think we are on the right track :-D

Last edited by drogert; 05-14-2014 at 06:17 PM..
# 16  
Old 05-14-2014
It would be nice to know what output -- not just that it was "wrong" -- that's why I put the debugging statements in it, to tell what's happening.

T="\r\n" instead of T="\n" but don't bother doing that yet until you've posted the actual output for us to look at...
# 17  
Old 05-14-2014
well, when I run the script:

Code:
pi@domoticzpi ~ $ . /home/pi/domoticz/scripts/bash/versterkeruit2.sh
Got reply ''
Did not get PWR0

It gave me this... How did you expected the debugging info? Am I running it the wrong way? sorry, but im a bit of a noob, I am trying my best though...
# 18  
Old 05-14-2014
I expected some sort of reply to be between the two ' ', instead of nothing. It's getting no answer at all.

You should do chmod +x ./scriptname once, then you will be able to run the script properly with ./scriptname

Try \r\n. It might not have seen the command if it wanted the \r.

You could also try -q 2, though that'd make it lag longer.
# 19  
Old 05-14-2014
Ok, I changed it with -q 2 and added the T="\r\n"

It now DOES give a respond:

Code:
pi@domoticzpi ~ $ . /home/pi/domoticz/scripts/bash/versterkeruit2.sh
'ot reply 'PWR0
got PWR0

:-D only it doesn't mute, so maybe it needs more lag?
# 20  
Old 05-14-2014
You are still running it wrong, see my above post for how to run it properly. It doesn't technically matter here, but for other scripts may matter a lot.

Interesting... The reply seems to only contain a carriage return, not a newline. (Which is why the last ' gets sent the back of the line) Perhaps you should try T="\r"
# 21  
Old 05-14-2014
Hi,

I was trying some things out and I think I got it!

This what I did:

Code:
#!/bin/bash

# Might need \r\n, not sure
T="\r\n"

amp() {
        printf "%s${T}" "$*" | nc 192.168.1.155 8102 -q 2
}


REPLY=$(amp "?p")

echo "Got reply '$REPLY'"

if [[ "$REPLY" == *PWR0* ]]
then
        echo "got PWR0"
	sleep 1
        amp "MZ"
else
        echo "Did not get PWR0"
fi

I added a sleep 1 between the echo and the amp

and it gave me this:

Code:
pi@domoticzpi ~ $ . /home/pi/domoticz/scripts/bash/versterkeruit2.sh
'ot reply 'PWR0
got PWR0
FL022020204D555445204F4E20202020
MUT0

It mutes! And when I run the script again it un-mutes!

I think we've got it! I will try the T="\r" to see if it makes any difference
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Telnet Script

Hello, I wrote a script for doing telnet.However the requirement got changed and now I have to write a telnet script that will 1. Do the telnet from all the virtual ips in a box(Ex: x.x.x.x is the box ip, and x.x.x.1,x.x.x.2 etc are virtual ips associated with that box.) 2. The port range... (3 Replies)
Discussion started by: coolkid
3 Replies

2. Shell Programming and Scripting

Telnet Script

Hello, I wrote a script for doing telnet.However the requirement got changed and now I have to write a telnet script that will 1. Do the telnet from all the virtual ips in a box(Ex: x.x.x.x is the box ip, and x.x.x.1,x.x.x.2 etc are virtual ips associated with that box.) 2. The port range... (0 Replies)
Discussion started by: coolkid
0 Replies

3. Shell Programming and Scripting

telnet script

Hi, I need a script that take one parameter as destination hostname and two parameter as ranges and tries telnet and records the successful connections. fo reg: ./testtelnet.sh destination-host 1000 1050 should give me all the port between 1000 and 1050 what successfully connected to... (10 Replies)
Discussion started by: shifahim
10 Replies

4. Shell Programming and Scripting

Telnet script

Hi all, I would like to write a ad hoc shell script that would allow me to do some telnet tests to multiple IP's and ports at the same time . So, I want to determine which one is successful and which one fails. So, basically I would like the shell to spawn the telnet test and to break out of... (3 Replies)
Discussion started by: Pouchie1
3 Replies

5. Shell Programming and Scripting

telnet script help

Hi Guys, How do I write the script for the following telnet 192.168.1.100 9002 if the result is less than 1 second. The script should say as port open if the result takes more than 3 seconds. The script should display as port closed. Thanks, Charan (1 Reply)
Discussion started by: charan314
1 Replies

6. Shell Programming and Scripting

Using Telnet in a script

Hi All, I was trying to use telnet in a script to access a certain processor on a certain port to view some processes. The problem is that when I use telnet the output is displayed for me. The script is: #!/bin/sh cd /ahmed/ezzat/ rm ss7trace.log touch ss7trace.log chmod 755... (3 Replies)
Discussion started by: Ahmad Ezzat
3 Replies

7. Shell Programming and Scripting

Telnet Script

Hi, I have the following code ... (sleep 1; echo $USERID ; sleep 1; echo $PASSWD ; sleep 1 ; echo y ; sleep 1 ; echo "\r" ; sleep 1 ; echo "cd $FILEPATH" ; sleep 1 ; echo "pwd"; sleep 1 ; echo df -k .| tail -1| cut -d ' ' -f8 > aop.txt ; echo "pwd" ; cat aop.txt; sleep 3)| telnet $SERVER the... (1 Reply)
Discussion started by: King Nothing
1 Replies

8. Shell Programming and Scripting

how to use telnet in script

I am trying to use telnet in shell script but getting following error error Connected to crmapp00.agf.ca. Escape character is '^]'. Connection closed by foreign host. Script #!/bin/ksh PATH=/usr/sbin/:/usr/bin:/usr/ucb:/etc:/usr/local/bin:. telnet HOSTNAME <<SCRIPT user userid... (9 Replies)
Discussion started by: sibghat
9 Replies

9. UNIX for Dummies Questions & Answers

telnet through script

Hi, How to write a script to perform telnet/ftp operation. Also please refer some site to get reference about shell scripting. Thanks in advance -Arun. (1 Reply)
Discussion started by: arun.viswanath
1 Replies

10. IP Networking

telnet in a script

Does anyone have a script that contains the telnet command and passes the login and password in the script as well? (4 Replies)
Discussion started by: vaccari
4 Replies
Login or Register to Ask a Question