knipknap / exscript

A Python module making Telnet and SSH easy
MIT License
366 stars 136 forks source link

Telnet does not seem to work #226

Open alex4200 opened 1 year ago

alex4200 commented 1 year ago

I can use telnet to telnet to a device as follows

telnet 192.168.200.10 9000

so I can run a command like $SYS,INFO.

I am trying to use exscript to do the same:

from Exscript.protocols import Telnet

conn = Telnet()             
conn.connect('192.168.200.10', 9000) 
a = conn.send('$SYS,INFO')  # Execute the "uname -a" command
print(a)

But I get None. So not sure how to send a command, if I am connected, how to get the "welcome" message. I had a thorough read through the telnet documentation here:

https://exscript.readthedocs.io/en/latest/Exscript.protocols.telnet.html

Really, I read that page in great detail! But it did not help to solve my problem.

I also tried the telnetlib example as follows:

from Exscript.protocols.telnetlib import Telnet
tn = Telnet('192.168.200.10', 9000)   
print(tn.read_all())

but this seems to be stuck at the "read_all" step ...

VoxDai commented 4 months ago

The response is stored in Telnet().response. This may be what you want:

from Exscript.protocols import Telnet

conn = Telnet()
conn.connect('192.168.200.10', 9000)
conn.execute('$SYS,INFO')  # Execute the "uname -a" command
print(conn.response)