The function key settings XML (<functionKeys> or <function-keys>) tag contains the free programmable function key configuration parameters. This XML tag can be used either inside the <settings> tag or as an individual XML file whose URL is listed inside <setting-files> tag.



Syntax

<?xml version="1.0" encoding="utf-8"?>
 <functionKeys>
  <fkey idx="<function_key_index)>" context="<function_key_context>" label="<function_key_label>" [default_text="<label_default_text>"] perm="<permission flag>">
  <value>
  </fkey>
  ...
  <fkey idx="<function_key_index>" context="<function_key_context>" label="<function_key_label>" [default_text="<label_default_text>"] perm="<permission flag>">
  <value>
  </fkey>
 </functionKeys>


 <functionKeys>
  <fkey idx="<function_key_index)>" context="<function_key_context>" label="<function_key_label>" [default_text="<label_default_text>"] perm="<permission flag>"><value></fkey>
  ...
  <fkey idx="<function_key_index>" context="<function_key_context>" label="<function_key_label>" [default_text="<label_default_text>"] perm="<permission flag>"><value></fkey>
 </functionKeys>



fkey attributes

Please check out the matrix of function key index ranges for the D3xx and D7xx series.



Example

<?xml version="1.0" encoding="utf-8"?>
<functionKeys>
 <fkey idx="0" context="active" perm="">line</fkey>
 <fkey idx="1" context="active" perm="">line</fkey>
 <fkey idx="2" context="active" perm="">keyevent F_REDIAL</fkey>
 <fkey idx="3" context="active" perm="">keyevent F_ADR_BOOK</fkey>
 <fkey idx="4" context="active" perm="">keyevent F_TRANSFER</fkey>
 <fkey idx="5" context="active" perm="">keyevent F_MUTE</fkey>
 <fkey idx="6" context="active" perm="">
   <general type="Remote Indicator">
     <default_state name="initial"/>
   </general>   
   <appearance>
     <line_info_layer>
       <line_format line="0">$state $type</line_info_layer>
       <line_format line="1">$continue $name</line_info_layer>
     </line_info_layer>
   </appearance>
   <subscription type="presence" for="numbers@snom.de" to="snom2@snom.de">
     <NotifyParsingRules type="applies">
       <level1 translates_to='OK'>/presence/dm:person/snom:preferred-uri[.="tel:+42 4711 0815"]</level1>
     </NotifyParsingRules>
     <NotifyParsingRules type="state">
       <level1 fetch_content='true'>/presence/dm:person/rpid:activities/snom:activity</level1>
       <default translates_to='unknown'/>
     </NotifyParsingRules>   
     <NotifyParsingRules type="variable" id="call_id" states="ringing,calling">     
       <level1 fetch_attribute="call-id">/dialog-info/dialog</level1>   
     </NotifyParsingRules>   
     <NotifyParsingRules type="variable" id="remote_tag" states="ringing,calling">     
       <level1 fetch_attribute="remote-tag">/dialog-info/dialog</level1>   
     </NotifyParsingRules>   
     <NotifyParsingRules type="variable" id="local_tag" states="ringing,calling">     
       <level1 fetch_attribute="local-tag">/dialog-info/dialog</level1>   
     </NotifyParsingRules>   
     <NotifyParsingRules type="variable" id="local_uri" states="ringing,calling">     
       <level1 fetch_attribute="uri">/dialog-info/dialog/local/target</level1>   
     </NotifyParsingRules>  
     <NotifyParsingRules type="variable" id="remote_uri" states="ringing,calling">     
       <level1 fetch_attribute="uri">/dialog-info/dialog/remote/target</level1>   
     </NotifyParsingRules>  
     <NotifyParsingRules type="variable" id="local_name" states="ringing,calling">     
       <level1 fetch_attribute="display">/dialog-info/dialog/local/identity</level1>   
     </NotifyParsingRules> 
     <NotifyParsingRules type="variable" id="remote_name" states="ringing,calling">     
       <level1 fetch_attribute="display">/dialog-info/dialog/remote/identity</level1>   
     </NotifyParsingRules> 
   </subscription>
   <action>
     <dial target="$(remote_name)<$(remote_uri)>" when="on press" state="ringing" request_uri="$(remote_uri)" replaces="$(call_id);to-tag=$(remote_tag);from-tag=$(local_tag)"/>
     <dial when="on release" target="*302*" states="connected,holding"/>
     <dial when="on press"   target="*43_keyXyPressed" />
   </action>
 </fkey>
</functionKeys>