FAQ/Can I control my snom phone remotely

From Snom User Wiki

Jump to: navigation, search
Languages: English • Deutsch



Yes, the phone´s HTTP interface allows remote users to simulate the usage of the phone´s keypad and a few special features. (Only applicable for snom desktop phones)


The URL to press one or more keys is the address of your phone with the page ’command.htm’ and the post value "key=KEYEVENT":


KEYEVENTs are separated by a semicolon from each other. KEYEVENT contains the following values:

KEYEVENT = Key[,Time[,Pause]]

Whereas Key is the key to be pressed. Time is the amount in milliseconds that a key is to be pressed (this way real key presses can be simulated, or a long press of a key can be achieved). Pause is the time in milliseconds that shall elapse between key presses (when the command contains more than one KEYEVENT). The values Time and Pause are optional.

If HTTP user name and HTTP password are enabled, the request must contain the credentials:


Note: Internet Explorer does not support user names and passwords in Web site addresses (HTTP or HTTPS URLs) Microsoft support page

Note: This will not work if you have set Authentication Scheme to "on". "On" means that you are using digest-authentication which just supports the username and password as encrypted (MD5-hash-sum) values and not to be given as clear text in the URI. If you want to use digest-authentification, you have to pass the credentials to the tool which calls the URL or the library you are using for calling the URL, most of the tools/library support this method.

Note: If you have changed HTTP User, HTTP Password and the Administrator Password from the default value, hidden tags have to be disabled in order to use the remote control feature.

The following KEYEVENTs are known to the firmware of the phone (written exactly as shown below in capital letters):

snom3xx, 7xx and snom8xx

CANCEL = "Cancel" key pressed, e.g. a call can be terminated
ENTER = "Enter" key pressed
OFFHOOK = simulates lifting up the handset
ONHOOK = simulates hanging up the handset
RIGHT = simulates pressing right navigation key
LEFT = simulates pressing left navigation key
UP = simulates pressing "up" navigation key
DOWN = simulates pressing "down" navigation key
VOLUME_UP = increases volume in active audio mode (handset / speaker / headset)
VOLUME_DOWN = reduces volume in active audio mode (handset / speaker / headset)
MENU = simulates pressing MENU key (not used in FW 7 anymore)
REDIAL = simulates pressing REDIAL key
DND = simulates pressing DND key
REC = simulates pressing Record key
F1, F2, F3, F4 = simulates pressing context sensitive soft function keys (located directly below the display of the phone) NOTE: snom 190/200 have no key F4 and snom870 no key F1-F4
SPEAKER = simulates pressing SPEAKER key
HEADSET = simulates pressing HEADSET key
TRANSFER = simulates pressing TRANSFER key
F_HOLD = simulates pressing HOLD key (Before firmware version F_R)
0-9, *, # = simulates pressing the alphanumeric keypad NOTE: with some browsers for # and * you might need to use the ASCII code. For example %23 instead of #, %2A instead of *
P1-PX = simulates pressing free programmable function keys (X=15 for snom870, X=12 for snom320/360/370/820, X=4 for snom300).
EK0- EKmax =  simulates pressing free programmable function keys of expansion module. Note: expansion module Only for snom3xx.

snom2xx/snom1xx only

DISCONNECT = disconnects a call
CLEAR = "Clear" Key pressed
FUNCTION = "F" (Menu Key on snom200/190) pressed
RECALL = "Hold" button in the left lower corner of the keypad of the snom 190/200/220
P1-PX = simulates pressing free programmable function keys (X=5 for snom190/200/220).
EK0- EKmax = extension keyboard snom220

Other Commands

There are also other functions which can be controlled remotely (desktop phones only):

Remote Dialing: http://phoneIP/command.htm?number=NUMBER&outgoing_uri=URI
Remote DTMF tones: http://phoneIP/command.htm?key_dtmf=NUMBER
Remote End all ongoing calls: http://phoneIP/command.htm?RELEASE_ALL_CALLS
Remote Logoff all identities: http://phoneIP/command.htm?LOGOFFALL
Remote Logoff a specific identity: http://phoneIP/command.htm?LOGOFFLINE=1(..12)
Remote Reregister a specific identity: http://phoneIP/command.htm?REREGISTER=1(..12)
Remote Ringtone Playing: http://phoneIP/line_login.htm?PLAY_RINGER:X=+Ringer(X=1..9)
Remote Reboot: http://phoneIP/advanced_update.htm?reboot=Reboot
Remote Reset: http://phoneIP/advanced_update.htm?reset=Reset
Remote Reset of Dialed Numbers: http://phoneIP/index.htm?dialeddel=0
Remote Reset of Missed Calls: http://phoneIP/index.htm?misseddel=0
Remote Reset of Received Calls: http://phoneIP/index.htm?receiveddel=0
Remote Firmware Upgrade: https://phoneIP/dummy.htm?swload=load&firmware=firmwareURL
Fix the line-info-layer for screen.bmp (820/21): http://phoneIP/command.htm?FIX_LIL=true

Since versions 8.4.34 and 8.7.2 you can also emulate pressing the touchscreen of the snom870.

X must be between 0 and 479, where 0 is the left display edge and 479 the right one.
Y must be between 0 and 271, where 0 is the upper display edge and 271 the lower one.
just press, dont release: http://phoneIP/command.htm?touch=X Y press
brief version:            http://phoneIP/command.htm?touch=X Y p
release when formerly pressed: http://phoneIP/command.htm?touch=X Y release
brief version:                 http://phoneIP/command.htm?touch=X Y r
press and release with one cmd: http://phoneIP/command.htm?touch=X Y pr
brief version:                  http://phoneIP/command.htm?touch=X Y
chained commands: http://phoneIP/command.htm?touch=X Y pr X2 Y2 pr X3 Y3 pr


  1. simulates the user of the phone with the IP address picking up the handset.
  2. will dial 1234. In order to place a call from a specific outgoing line (SIP account, identity) attach "&outgoing_uri=user@domain1"
  3. plays  the ring tone 9  remotely
  4. will send DTMF tones 1234 (only available during an active call)
  5. will upgrade the phone with the URL passed via firmware variable

Attended Transfer (Incoming call A, transferred by B to C):

  1. --> Holds the call "A"
  2. (X=0-9) --> Repeat this  for each digit of the number "C" to be transferred to
  3. --> "B" makes a call to "C" and announces transfer
  4. --> call is transferred
    NOTE: If the parameter "Call Join on Xfer (2 calls)" has been set to "ON" the "Calls on Hold" list is displayed instead (in this remote scenario not recommended, since it would require navigation through the list and a final command
Personal tools