How to control a cisco IP-Phone from the CLI?

Daniel picture Daniel · Mar 7, 2012 · Viewed 9.9k times · Source

I've a Cisco IP-Phone 7945 and I want to control it from my CLI. For example I want to start a command like

call start 12345 #12345 is the number I want to call

or

call cancel

Anybody knows a tool or something similiar?

I'm writing a rails app and I want to start a call from within the app after a certain action.

Answer

Bill picture Bill · May 10, 2012

The 7945 has a web interface that permits execution of commands, including a "Dial" command, by authenticated users.

Your rails app would connect to the phone at http://phone-ip-address/CGI/Execute and POST some XML that looks like this:

<CiscoIPPhoneExecute>
  <ExecuteItem URL="Dial:12345" />
</CiscoIPPhoneExecute>

The authentication is done with HTTP Basic Auth and the back-end authenticator is determined by what phone system your 7945 is connected to. If Cisco Call Manager, it uses the assigned Call Manager user information.

Look for the IP Phone Services guides on cisco.com for details. Quick links:

Short answer: it's not a CLI but it is straightforward to program a dialer by interacting with the phone over HTTP.