SendExecuteAsync

Metreos.Native.CiscoIpPhone.SendExecuteAsync

Summary

SendExecuteAsync sends an XML object directly to the Cisco IP Phone using an HTTP POST.

Usage

SendExecuteAsync can send two distinctly different commands to the Cisco IP Phone. One is the Execute XML object, which is used to cause the phone to execute internal commands, such as RTPRx or Dial, or to cause the phone to fetch IP Phone XML from an HTTP server. SendExecute can also used to send content-based XML objects, such as a Text or Menu XML object.

The Cisco IP Phones have an important limitation in that one can only push 512 bytes of content to the phone. This effectively means that pushing a Execute XML object to a phone is the more robust way to have the phone render large amounts of data, because the phone can be pushed an HTTP-based URL which the phone will subsequently request XML from, circumventing the 512 byte 'push' limitation. There is no 512 byte limitation when the phone makes a request to a HTTP-based URL.

The SendExecuteAsync requires an IP address to send the XML command to using an HTTP POST. However, it is a common problem to not have the IP address of a Cisco IP phone readily available, although often one has the device name (of the form SEPXXXXXXXXXXXX) of the phone. One can use the Cisco DeviceListX cache to determine IP address of a Cisco IP Phone based on this device name.

Remarks

This action communicates directly with the Cisco IP Phone using an HTTP post originating from the application server.

Action Parameters
Parameter Name.NET TypeDefaultDescription
Message *System.StringThe XML object to be sent to the Cisco IP Phone. The XML object can be one of the following types: Note that the variable should not be passed directly into this action parameter. Instead, use c# to invoke the ToString() method invoked on the XML object variable; for instance, myXmlVar.ToString(). Also, with any content-based XML object (all types aside from Execute), the 512 byte limit will limit the practical usage of dynamic content in these types when pushed with SendExecute. If you have a variable amount of content to show, then use Execute to pass an HTTP-based URL to the phone to have it fetch the content XML object instead, thereby circumventing the 512 byte limit.
PhoneIP *System.StringThe IP address of the Cisco IP Phone.
UsernameSystem.StringThe username of the account associated with the Cisco IP Phone.
PasswordSystem.StringThe password or pin of the account associated with the Cisco IP Phone.
Result Data
Parameter Name.NET TypeDescription
ResultDataSystem.ObjectIf interested in the result coming back from the phone, save this value into the Response XML type variable.
ErrorTypeSystem.StringThe error code returned by the IP phone, if the action failed.

Branch Conditions 

Success

No description.

Failure

No description.