If this really works on a 7940, you've found a bug and thought it's a feature.
The fact of the matter is that you can use any Key: URI for CiscoIPPhoneExecute, but SoftKey: makes no sense. Why not? Because SoftKey: is not an actual key, but a virtual key to be used in predefined XML screens (you can get a list of which SoftKey is supported in which XML element if you look at table 3-2 of the IP phone services development documentation) - you'll note that CiscoIPPhoneExecute is nowhere to be seen.
If you think about it.. suppose you send a SoftKey:Dial to a phone that is idle.. what is it supposed to dial?
You are probably aiming at closing whatever application might be running - that's commonly done via Key:Services. But you have to be careful, because if there's nothing on screen, you'll actually open the service menu. Unfortunately, there's no conditional "close any application that might be open" - so you'll have to query the modeinfo url (search this forum for details) to get the phone's current content in xml form, and then if you detect a running service, send a Key:Services.
hmm... it lounds prety logic. It's working on a 7905, 7912, 7940 and 7960.
The SoftKey:Exit and SoftKey:Cancel do work on the above phones (do not have any more phones on my desk except the 7970 ;-) )
I'm pushing an ciscoIPPhoneText xml to a phone with some information when there is a incomming call. When the call is finished (idle) i want to remove the message. I'm doing this by sending a softKey cancel or exit. It will also work with the service softkey...
SoftKey:Cancel isn't even listed as supported key for a CiscoIPPhoneText ;) How is the phone to know which softkey it should "push"?
What you can do is reference the key by their position: Key:Soft3 comes down to pressing the Exit softkey shown on a standard CiscoIpPhoneText where you don't specify any softkeys on your own. Once again, if the user clicked away the text, you'll end up pressing an underlying phone functionality softkey though.
Please do not be shy in asking Cisco for an Init:Services command that would rid the screen of any active application if there is any - in the end that would be the most reliable solution to this scenario.
The 05/12/40/60 phone series are rapidly becoming obsolete. While you might still be able to buy 60ies, it's a matter of time before they go away, and we just recently had an RMA case where 12s were exchanged for 11s. Relying on any "feature" the old phones have is rather dangerous at this point, especially considering they're EOL and the firmware release rythm has slowed down to a trickle.. you're much likely to have firmware bugs fixed for the enhanced phones and since they use a common software, chances of diverging behavior have become much smaller than with the old series where the different phone classes used completely different firmwares.
I was lucky it works on the older phones. I've changed the softkey to Key:Services and it works fine :-)
Yet an other small issue:
I time ago i posted a topic with a question for a custom softkey to answer a incomming call. I'm using a hardcoded Key:Line1 so it's possible to answer a call on the first line. This works OLMOST on all my available phones. On the 7941 I need to send a Key:Line2 to answer the first line (and yes... it realy is the first line, the above button and listed as 1st line in callmanager). I tried to find out with linekey i had to send to answer the 2nd line on my 7941, but trough Key:Line5 it does nothing...
Are you getting this error “Installer User Interface Mode Not Supported. The installer cannot run in this UI mode. To specify the interface mode, use the -i command-line option, followed by the UI mode identifier. The value UI mode identifiers...
The below trick might come handy when you have to add a new node to a cluster but you don't have or is unsure of the security password for the publisher. This procedure has been around for ages.
1) Login into the CLI of the Publisher.