I wrote a post on how to telnet into a ShoreTel phone but not much about what you can do once you’re in there. I checked around on the internet for a listing of commands you can run and what they do and the documentation is pretty scarce. I did find that ShoreTel nicely put several commands in their Maintenance guide for 11.2, and probably every maintenance manual they’ve put out. Also some of these commands can be done through the PhoneCTL utility it talks about in section 6.4.5.
I did a telnet session into one of my phones to see what commands were available.
I copied and pasted a lot of this from the telnet output of my phone. I’ve tried to run most of these commands and commented whether it works or not. If anyone has any additions to this please use the comments or contact me form so I can add it.
This is a work in progress and I’d welcome any submissions on commands that have been discovered. If it’s something that can ruin the phone, please make note of that when you send.
ShoreTel Related Commands
These are some commands not expressly listed in the “help” system in the phone.
bootChange – This will let you enter the IP address, ShoreTel server IP and other things. It doesn’t persist any changes you make, so if you are trying to change the IP or something of a remote phone, you really should either talk a user through this or use DHCP reservations. I have a feeling the items you enter on the phone setup screen are stored in a text file somewhere on the phone. – Updated 9/4/2012
printsysInfo – Shows a lot of system info for the phone. You can see MAC address, IP address, which FTP server it is set to download from, SNTP server information and all that here. This will show firmware versions as well.
reboot – Reboots the phone.
ping “xxx.xxx.xxx.xxx” – Pings an IP address. you need to enclose the IP address in quotes.
prtleveltabs – Prints the volume levels of the various audio outputs on the phone.
setAllCallApearanceLEDs [state] – Just for fun, you can turn on and off all the Call Appearance LEDs. State is a 0 or a 1. I did type that right, there is only 1 “p” in Apearance. I haven’t figured out how to turn them green.
Command – ShoreTel/VxWorks Documentation – My Thoughts
hostAdd “hostname”,”inetaddr” – add a host to remote host table; “inetaddr” must be in standard Internet address format e.g. “18.104.22.168” – Command works. If you don’t have a DNS server this could be somewhat useful as it adds a host and IP address combination to the phone.
hostShow – print current remote host table – Works. Shows the host table with hostname/ip address combinations. In mine I got the following output:
netDevCreate “devname”,”hostname”,protocol – create an I/O device to access files on the specified host (protocol 0=rsh, 1=ftp) – Works. This is a file access command. Not sure what use it might be.
routeAdd “destaddr”,”gateaddr” – add route to route table – Works. Adds a network route. This might can be used as a way to direct a phone to the ShoreTel server without the aid of a static route in a router. Will have to try this.
routeDelete “destaddr”,”gateaddr” – delete route from route table – Works. Removes routes added with above command.
routeShow – print current route table – Works. Shows the current routing table.
iam “usr”[,”passwd”] – specify the user name by which you will be known to remote hosts (and optional password) – Works. Probably a vxworks specific command. Not entirely sure of use.
whoami – print the current remote ID – Works. Got the output “value = 1 = 0x1”. Again might just be a VxWorks thing with no relevance to ShoreTel.
rlogin “host” – log in to a remote host;”host” can be inet address or host name in remote host table – Doesn’t work. Returns “undefined symbol”.
ifShow [“ifname”] – show info about network interfaces – Works. Shows information about the physical interfaces on the phone.
inetstatShow – show all Internet protocol sockets – Works. Shows ports and sockets the phone might be using. Could be useful if you have firewall issues.
tcpstatShow – show statistics for TCP – Works. Shows stats on network activity.
udpstatShow – show statistics for UDP – Works. Shows UDP stats. Same as tcpstatShow, just shows UDP protocol stats instead.
ipstatShow – show statistics for IP – Works. Overall IP stats.
icmpstatShow – show statistics for ICMP – Doesn’t work, or might not have had data.
arptabShow – show a list of known ARP entries – Works. Shows ARP table.
mbufShow – show mbuf statistics
This looks like VxWorks file system commands. Not entirely sure that this can be used for troubleshooting purposes. I won’t comment on these as they are almost identical to DOS commands. these probably have a real potential to screw your phone up.
cd “path” – Set current working path
pwd – Print working path
ls [“wpat”[,long]] – List contents of directory
ll [“wpat”] – List contents of directory – long format
lsr [“wpat”[,long]] – Recursive list of directory contents
llr [“wpat”] – Recursive detailed list of directory
rename “old”,”new” – Change name of file
copy [“in”][,”out”] – Copy in file to out file (0 = std in/out)
cp “wpat”,”dst” – Copy many files to another dir
xcopy “wpat”,”dst” – Recursively copy files
mv “wpat”,”dst” – Move files into another directory
xdelete “wpat” – Delete a file, wildcard list or tree
attrib “path”,”attr” – Modify file attributes
xattrib “wpat”,”attr” – Recursively modify file attributes
chkdsk “device”, L, V – Consistency check of file system
diskInit “device” – Initialize file system on disk
diskFormat “device” – Low level and file system disk format – This seems like a bad idea.