diff --git a/src/dbus/callmanager-introspec.xml b/src/dbus/callmanager-introspec.xml
index 534bde252d506dcda4b622b0667c7b86005d8510..8b23a3f68dc04fecfce79a233b5669f4882bc7b8 100644
--- a/src/dbus/callmanager-introspec.xml
+++ b/src/dbus/callmanager-introspec.xml
@@ -4,148 +4,165 @@
 	<interface name="org.sflphone.SFLphone.CallManager">
 
 		<tp:docstring xmlns="http://www.w3.org/1999/xhtml">
-			<p>The CallManager interface is used to manage any call related actions.</p>
+			<p>The CallManager interface is used to manage
+			any call and conference related actions.</p>
 			<p>Since SFLphone-daemon support multiple incoming/outgoing calls, any actions involving a specific call must address the method by the means of a unique callID. SFLphone-clients is responsible to generate the callID on outgoing call. On the other hand, SFLphone-daemon will generate a unique callID on incoming calls.</p>
 		</tp:docstring>
 		<method name="placeCall" tp:name-for-bindings="placeCall">
 			<tp:docstring>
-				<p>This is the main method in order to place a new call. The call is registered to the daemon using this method.</p>
+			  <p>This is the main method in order to place a new call. The call is registered to the daemon using this method.</p>
 			</tp:docstring>
 			<arg type="s" name="accountID" direction="in">
-				<tp:docstring>
-					The ID of the account you want to make a call with. If the call is to be placed whithout any account by the means of a SIP URI (i.e. sip:num@server), the "IP2IP_PROFILE" is passed as the accountID. For more details about accounts see the configuration manager interface.
-				</tp:docstring>
+			  <tp:docstring>
+			    The ID of the account you want to make a call with. If the call is to be placed whithout any account by the means of a SIP URI (i.e. sip:num@server), the "IP2IP_PROFILE" is passed as the accountID. For more details about accounts see the configuration manager interface.
+			  </tp:docstring>
 			</arg>
 			<arg type="s" name="callID" direction="in">
-				<tp:docstring>
-					The callID is a unique identifier that must be randomly generated on the  client's side. Any subsequent actions refering to this call must use this callID.
-				</tp:docstring>
+			  <tp:docstring>
+			    The callID is a unique identifier that must be randomly generated on the  client's side. Any subsequent actions refering to this call must use this callID.
+			  </tp:docstring>
 			</arg>
 			<arg type="s" name="to" direction="in">
-				<tp:docstring>
-					If bound to a VoIP account, then the argument is the phone number. In case of calls involving "IP2IP_PROFILE", a complete SIP URI must be specified.
-				</tp:docstring>
+			  <tp:docstring>
+			    If bound to a VoIP account, then the argument is the phone number. In case of calls involving "IP2IP_PROFILE", a complete SIP URI must be specified.
+			  </tp:docstring>
 			</arg>
 		</method>
 
 		<method name="placeCallFirstAccount" tp:name-for-bindings="placeCallFirstAccount">
 			<tp:added version="0.9.8"/>
 			<tp:docstring>
-				Place a call with the fist registered account, regarding to the account list order.
-				<tp:rationale>
-					Use this function when you don't have any information about the accounts used (Ex: Firefly mozilla extension)			
-				</tp:rationale>
+			  Place a call with the fist registered account, regarding to the account list order.
+			  <tp:rationale>
+			    Use this function when you don't have any information about the accounts used (Ex: Firefly mozilla extension)			
+			  </tp:rationale>
 			</tp:docstring>
 			<arg type="s" name="callID" direction="in">
-				<tp:docstring>
-					The callID is a unique identifier that must be randomly generated on the  client's side. Any subsequent actions refering to this call must use this callID.
-				</tp:docstring>
+			  <tp:docstring>
+			    The callID is a unique identifier that must be randomly generated on the  client's side. Any subsequent actions refering to this call must use this callID.
+			  </tp:docstring>
 			</arg>
 			<arg type="s" name="to" direction="in">
-				<tp:docstring>
-					If bound to a VoIP account, then the argument is the phone number. In case of calls involving "IP2IP_PROFILE", a complete SIP URI must be specified.
-				</tp:docstring>
+			  <tp:docstring>
+			    If bound to a VoIP account, then the argument is the phone number. In case of calls involving "IP2IP_PROFILE", a complete SIP URI must be specified.
+			  </tp:docstring>
 			</arg>
 		</method>
 
 		<method name="refuse" tp:name-for-bindings="refuse">
 			<tp:docstring>
-				Refuse an incoming call.
+			  Refuse an incoming call.
 			</tp:docstring>
 			<arg type="s" name="callID" direction="in">
-				<tp:docstring>
-					The callID.
-				</tp:docstring>
+			  <tp:docstring>
+			    The callID.
+			  </tp:docstring>
 			</arg>
 
 		</method>
 
 		<method name="accept" tp:name-for-bindings="accept">
 			<tp:docstring>
-				Answer an incoming call. Automatically put the current call on state HOLD.
+			  Answer an incoming call. Automatically put the current call on state HOLD.
 			</tp:docstring>
 			<arg type="s" name="callID" direction="in">
-				<tp:docstring>
-					The callID.
-				</tp:docstring>
+			  <tp:docstring>
+			    The callID.
+			  </tp:docstring>
 			</arg>
 		</method>
 
 		<method name="hangUp" tp:name-for-bindings="hangUp">
 			<tp:docstring>
-				Hangup a call in state "CURRENT" or "HOLD".
+			  Hangup a call in state "CURRENT" or "HOLD".
 			</tp:docstring>
 			<arg type="s" name="callID" direction="in">
-				<tp:docstring>
-					The callID.
-				</tp:docstring>
+			  <tp:docstring>
+			    The callID.
+			  </tp:docstring>
 			</arg>
 		</method>
 
 		<method name="hangUpConference" tp:name-for-bindings="hangUpConference">
 			<tp:added version="0.9.7"/>
 			<tp:docstring>
-				Hangup a conference, and every call participating to the conference.
+			  Hangup a conference, and every call participating to the conference.
 			</tp:docstring>
 			<arg type="s" name="confID" direction="in">
-				<tp:docstring>
-					The unique conference ID.
-				</tp:docstring>
+			  <tp:docstring>
+			    The unique conference ID.
+			  </tp:docstring>
 			</arg>
 		</method>
 
 		<method name="hold" tp:name-for-bindings="hold">
 			<tp:docstring>
-				Place a call on hold.
+			  Place a call on hold.
 			</tp:docstring>
 			<arg type="s" name="callID" direction="in">
-				<tp:docstring>
-					The callID.
-				</tp:docstring>
+			  <tp:docstring>
+			    The callID.
+			  </tp:docstring>
 			</arg>
 		</method>
 
 		<method name="unhold" tp:name-for-bindings="unhold">
 			<tp:docstring>
-				Hold off a call, and place this call on state CURRENT.
+			  Hold off a call, and place this call on state CURRENT.
 			</tp:docstring>
 			<arg type="s" name="callID" direction="in">
-				<tp:docstring>
-					The callID.
-				</tp:docstring>
+			  <tp:docstring>
+			    The callID.
+			  </tp:docstring>
 			</arg>
 		</method>
 
-		<method name="transfert" tp:name-for-bindings="transfert">
+		<method name="transfer" tp:name-for-bindings="transfer">
 			<tp:docstring>
-				Transfer a call to given phone number.
+			  Transfer a call to given phone number.
 			</tp:docstring>
 			<arg type="s" name="callID" direction="in">
-				<tp:docstring>
-					The callID.
-				</tp:docstring>
+			  <tp:docstring>
+			    The callID.
+			  </tp:docstring>
 			</arg>
 			<arg type="s" name="to" direction="in">
-				<tp:docstring>
-					The phone number to transfer the call to.
-				</tp:docstring>
+			  <tp:docstring>
+			    The phone number to transfer the call to.
+			  </tp:docstring>
+			</arg>
+		</method>
+		
+		<method name="attendedTransfer" tp:name-for-bindings="attendedTransfer">
+			<tp:docstring>
+			  Perform an attended transfer on two calls
+			</tp:docstring>
+			<arg type="s" name="transferID" direction="in">
+			  <tp:docstring>
+			    The callID of the call to be transfered.
+			  </tp:docstring>
+			</arg>
+			<arg type="s" name="targetID" direction="in">
+			  <tp:docstring>
+			    The callID of the target call.
+			  </tp:docstring>
 			</arg>
 		</method>
 
 		<method name="playDTMF" tp:name-for-bindings="playDTMF">
 			<tp:docstring>
-				Dual-Tone multi-frequency. Tell the core to play dial tones. A SIP INFO message is sent to notify the server.
+			  Dual-Tone multi-frequency. Tell the core to play dial tones. A SIP INFO message is sent to notify the server.
 			</tp:docstring>
 			<arg type="s" name="key" direction="in">
-				<tp:docstring>
-					Unicode charter for pressed key
-				</tp:docstring>
+			  <tp:docstring>
+			    Unicode charter for pressed key
+			  </tp:docstring>
 			</arg>
 		</method>
 
 		<method name="startTone" tp:name-for-bindings="startTone">
 			<tp:docstring>
-				Start audio stream and play tone..
+			  Start audio stream and play tone..
 			</tp:docstring>
 			<arg type="i" name="start" direction="in"/>
 			<arg type="i" name="type" direction="in"/>
@@ -153,88 +170,97 @@
 
 		<method name="setVolume" tp:name-for-bindings="setVolume">
 			<tp:docstring>
-				<p>Sets the volume using a linear scale [0,100].</p>
-				<tp:rationale>Pulseaudio has its own mechanism to modify application volume. This method is enabled only if the ALSA API is used.</tp:rationale>
+			  <p>Sets the volume using a linear scale [0,100].</p>
+			  <tp:rationale>Pulseaudio has its own mechanism to modify application volume. This method is enabled only if the ALSA API is used.</tp:rationale>
 			</tp:docstring>
 			<arg type="s" name="device" direction="in">
-				<tp:docstring>
-					The device: mic or speaker
-				</tp:docstring>
+			  <tp:docstring>
+			    The device: mic or speaker
+			  </tp:docstring>
 			</arg>
 			<arg type="d" name="value" direction="in">
-				<tp:docstring>
-					The volume value (between 0 and 100)
-				</tp:docstring>
+			  <tp:docstring>
+			    The volume value (between 0 and 100)
+			  </tp:docstring>
 			</arg>
 		</method>
 
 		<method name="getVolume" tp:name-for-bindings="getVolume">
 			<tp:docstring>
-				<p>Return the volume value of the given device on a linear scale [0,100].</p>
-				<tp:rationale>Only enabled if the ALSA API is used, Pulseaudio has its own mechanism to modify application volume.</tp:rationale>
+			  <p>Return the volume value of the given device on a linear scale [0,100].</p>
+			  <tp:rationale>Only enabled if the ALSA API is used, Pulseaudio has its own mechanism to modify application volume.</tp:rationale>
 			</tp:docstring>
 			<arg type="s" name="device" direction="in">
-				<tp:docstring>
-					The device: mic or speaker
-				</tp:docstring>
+			  <tp:docstring>
+			    The device: mic or speaker
+			  </tp:docstring>
 			</arg>
 			<arg type="d" name="value" direction="out">
-				<tp:docstring>
-					The volume value (between 0 and 100)
-				</tp:docstring>
+			  <tp:docstring>
+			    The volume value (between 0 and 100)
+			  </tp:docstring>
 			</arg>
 		</method>
 
 		<method name="joinParticipant" tp:name-for-bindings="joinParticipant">
 			<tp:added version="0.9.7"/>
 			<tp:docstring>
-				<p>Join two participants together to create a 3-way conference including the current client.</p>
-				<tp:rationale>The signal <tp:member-ref>conferenceCreated</tp:member-ref> is emitted on success.</tp:rationale> 
+			  <p>Join two participants together to create a 3-way conference including the current client.</p>
+			  <tp:rationale>The signal <tp:member-ref>conferenceCreated</tp:member-ref> is emitted on success.</tp:rationale> 
 			</tp:docstring>
 			<arg type="s" name="sel_callID" direction="in"/>
 			<arg type="s" name="drag_callID" direction="in"/>
 		</method>
 
+                <method name="createConfFromParticipantList" tp:name-for-bindings="createConfFromParticipantList">
+			<tp:added version="0.9.14"/>
+			<tp:docstring>
+				<p>Create a conference from a list of participant</p>
+			<tp:rationale>The signal <tp:member-ref>conferenceCreated</tp:member-ref> is emitted on success.</tp:rationale>
+			</tp:docstring>
+			<arg type="as" name="participants" direction="in"/>
+		</method>
+
 		<method name="addParticipant" tp:name-for-bindings="addParticipant">
 			<tp:added version="0.9.7"/>
 			<tp:docstring>
-				<p>Join a new particiant to an existing conference.</p>
-				<tp:rationale>The signal <tp:member-ref>conferenceChanged</tp:member-ref> is emitted on success.</tp:rationale> 
+			  <p>Join a new particiant to an existing conference.</p>
+			  <tp:rationale>The signal <tp:member-ref>conferenceChanged</tp:member-ref> is emitted on success.</tp:rationale> 
 			</tp:docstring>
 			<arg type="s" name="callID" direction="in">
-				<tp:docstring>
-					The ID of the call to add to the conference
-				</tp:docstring>
+			  <tp:docstring>
+			    The ID of the call to add to the conference
+			  </tp:docstring>
 			</arg>
 			<arg type="s" name="confID" direction="in">
-				<tp:docstring>
-					An existing conference ID
-				</tp:docstring>
+			  <tp:docstring>
+			    An existing conference ID
+			  </tp:docstring>
 			</arg>
 		</method>
 
 		<method name="addMainParticipant" tp:name-for-bindings="addMainParticipant">
 			<tp:added version="0.9.7"/>
 			<tp:docstring>
-				<p>As the core can handle multiple calls an conferences, it may happens that the client's user leave a conference to answer an incoming call or send new ones. This method is used to reintroduce SFLphone-client's user into the conference.</p>
-				<p>It put the current call on state HOLD or detach SFLphone-client's user from the another conference.</p>
+			  <p>As the core can handle multiple calls an conferences, it may happens that the client's user leave a conference to answer an incoming call or send new ones. This method is used to reintroduce SFLphone-client's user into the conference.</p>
+			  <p>It put the current call on state HOLD or detach SFLphone-client's user from the another conference.</p>
 			</tp:docstring>
 			<arg type="s" name="confID" direction="in">
-				<tp:docstring>
-					An existing conference ID
-				</tp:docstring>
+			  <tp:docstring>
+			    An existing conference ID
+			  </tp:docstring>
 			</arg>
 		</method>
 
 		<method name="detachParticipant" tp:name-for-bindings="detachParticipant">
 			<tp:added version="0.9.7"/>
 			<tp:docstring>
-				Detach the given call from the conference. If only one participant is left, the conference is deleted and the signal <tp:member-ref>conferenceRemoved</tp:member-ref> is emited.
+			  Detach the given call from the conference. If only one participant is left, the conference is deleted and the signal <tp:member-ref>conferenceRemoved</tp:member-ref> is emited.
 			</tp:docstring>
 			<arg type="s" name="callID" direction="in">
-				<tp:docstring>
-					The call ID
-				</tp:docstring>
+			  <tp:docstring>
+			    The call ID
+			  </tp:docstring>
 			</arg>
 		</method>
 
@@ -250,347 +276,444 @@
 		<method name="getConferenceDetails" tp:name-for-bindings="getConferenceDetails">
 			<tp:added version="0.9.7"/>
 			<tp:docstring>
-				Returns a hashtable containing conference details.
+			  Returns a hashtable containing conference details.
 			</tp:docstring>
 			<arg type="s" name="callID" direction="in">
-				<tp:docstring>
-					The call ID
-				</tp:docstring>
+			  <tp:docstring>
+			    The conference ID
+			  </tp:docstring>
 			</arg>
 			<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
 			<arg type="a{ss}" name="infos" direction="out">
-				<tp:docstring>
-					A map containing the ID of the conferences and their states.
-				</tp:docstring>
+			  <tp:docstring>
+			    A map containing the ID of the conferences
+			    and their states:
+			    <ul>
+			      <li>ACTIVE_ATACHED</li>
+			      <li>ACTIVE_DETACHED</li>
+			      <li>HOLD</li>
+			    </ul>
+			  </tp:docstring>
 			</arg>
 		</method>
 
 		<method name="getConferenceList" tp:name-for-bindings="getConferenceList">
 			<tp:added version="0.9.7"/>
 			<tp:docstring>
-				Returns a list containing all active conferences.
+			  Returns a list containing all active
+			  conferences.
+			  <tp:rationale>To update client status, one should
+			  use <tp:member-ref>getParticipantList</tp:member-ref>
+			  with provided conference IDs.</tp:rationale> 
 			</tp:docstring>
 			<arg type="as" name="list" direction="out">
-				<tp:docstring>
-					The list of conferences.
-				</tp:docstring>
+			  <tp:docstring>
+			    The list of conferences.
+			  </tp:docstring>
 			</arg>
 		</method>
 
 		<method name="setRecording" tp:name-for-bindings="setRecording">
 			<tp:docstring>
-				Start recording a call.
+			  Start recording a call.
 			</tp:docstring>
 			<arg type="s" name="callID" direction="in">
-				<tp:docstring>
-					The ID of the call to record.
-				</tp:docstring>
+			  <tp:docstring>
+			    The ID of the call to record.
+			  </tp:docstring>
 			</arg>
 		</method>
 
 		<method name="getIsRecording" tp:name-for-bindings="getIsRecording"> 
 			<tp:docstring>
-				Tells whether or not a call is being recorded.
+			  Tells whether or not a call is being recorded.
 			</tp:docstring>
 			<arg type="s" name="callID" direction="in">
-				<tp:docstring>
-					The call ID.
-				</tp:docstring>
+			  <tp:docstring>
+			    The call ID.
+			  </tp:docstring>
 			</arg>
 			<arg type="b" name="isRecording" direction="out">
-				<tp:docstring>
-					Returns true is the call is being recorded. False otherwise.
-				</tp:docstring>
+			  <tp:docstring>
+			    Returns true is the call is being recorded. False otherwise.
+			  </tp:docstring>
 			</arg>
 		</method>
 
+		<signal name="recordPlaybackFilepath" tp:name-for-bindings="recordPlaybackFilepath">
+			<tp:docstring>
+			  Once after starting recording for the first time, this signal is emited to 
+			  provide the recorded file path to client application.
+			</tp:docstring>
+			<arg type="s" name="callID" />
+			<arg type="s" name="filepath"/>
+		</signal>
+
+		<signal name="recordPlaybackStopped" tp:name-for-bindings="recordPlaybackStopped">
+			<tp:docstring/>
+			<arg type="s" name="filepath" />
+		</signal>
+			
+
 		<method name="getCallDetails" tp:name-for-bindings="getCallDetails">
 			<tp:docstring>
-				Get all the details about a specific call.
+			  Get all the details about a specific call.
 			</tp:docstring>
 			<arg type="s" name="callID" direction="in">
-				<tp:docstring>
-					The call ID.
-				</tp:docstring>
+			  <tp:docstring>
+			    The call ID.
+			  </tp:docstring>
 			</arg>
 			<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
 			<arg type="a{ss}" name="infos" direction="out" tp:type="String_String_Map">
-				<tp:docstring xmlns="http://www.w3.org/1999/xhtml">
-					<p>A map containing the call details: </p>
-					<ul>
-						<li>ACCOUNTID</li>
-						<li>PEER_NUMBER</li>
-						<li>PEER_NAME</li>
-						<li>DISPLAY_NAME</li>
-						<li>CALL_STATE</li>
-						<li>CALL_TYPE</li>
-					</ul>  
-				</tp:docstring>
+			  <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
+			    <p>A map containing the call details: </p>
+			    <ul>
+			      <li>ACCOUNTID</li>
+			      <li>PEER_NUMBER</li>
+			      <li>PEER_NAME</li>
+			      <li>DISPLAY_NAME</li>
+			      <li>CALL_STATE</li>
+			      <li>CALL_TYPE</li>
+			    </ul>  
+			  </tp:docstring>
 			</arg>
 		</method>
 
 		<method name="getCallList" tp:name-for-bindings="getCallList">
 			<tp:docstring>
-				Get the list of active calls.
-				<tp:rationale>To get the call details, iterate on the return value and call <tp:member-ref>getCallDetails</tp:member-ref> method.</tp:rationale> 
+			  Get the list of active calls.
+			  <tp:rationale>To get the call details, iterate on the return value and call <tp:member-ref>getCallDetails</tp:member-ref> method.</tp:rationale> 
 			</tp:docstring>
 			<arg type="as" name="list" direction="out">
-				<tp:docstring>
-					A list of call IDs.
-				</tp:docstring>
+			  <tp:docstring>
+			    A list of call IDs.
+			  </tp:docstring>
 			</arg>
 		</method>
 
 		<method name="getCurrentCallID" tp:name-for-bindings="getCurrentCallID">
 			<tp:docstring>
-				Get the CURRENT call ID.
+			  Unused
 			</tp:docstring>
-			@param[out] output callID
 			<arg type="s" name="callID" direction="out">
-				<tp:docstring>
-					The current call ID.	
-				</tp:docstring>
+			  <tp:docstring>	
+			  </tp:docstring>
 			</arg>
 		</method>
 
-		<method name="getCurrentCodecName" tp:name-for-bindings="getCurrentCodecName">
+		<method name="getCurrentAudioCodecName" tp:name-for-bindings="getCurrentAudioCodecName">
 			<tp:docstring>
+			  Unused
 			</tp:docstring>
 			<arg type="s" name="callID" direction="in"/>
 			<arg type="s" name="codecName" direction="out"/>
 		</method>
 
-		<signal name="currentSelectedCodec" tp:name-for-bindings="currentSelectedCodec">
+		<method name="sendTextMessage" tp:name-for-bindings="sendTextMessage">
 			<tp:docstring>
+				Send a text message to the specified call
 			</tp:docstring>
-			<arg type="s" name="callID" />
-			<arg type="s" name="codecName"/>
+			<arg type="s" name="callID" direction="in"/>
+			<arg type="s" name="message" direction="in"/>
+		</method>
+
+		<signal name="newCallCreated" tp:name-for-bindings="newCallCreated">
+			<tp:docstring>
+			  <p>Notify that a cell have been created.</p>
+			  <p>The callID generated by the daemon must be stored by the clients in order to address other action for
+			    this call. This signal is emitted when call have been created by the daemon itself.</p>
+			  <tp:rationale> The client must subscribe to this signal to handle calls created by other clients </tp:rationale>
+			</tp:docstring>
+			<arg type="s" name="accountID">
+			  <tp:docstring>
+			    The account ID of the calle. Clients must notify teh right account when receiving this signal.
+			  </tp:docstring>
+			</arg>
+			<arg type="s" name="callID">
+			  <tp:docstring>
+			    A new call ID.
+			  </tp:docstring>
+			</arg>
+			<arg type="s" name="to">
+			  <tp:docstring>
+			   The sip uri this call is trying to reach
+			  </tp:docstring>
+			</arg>
 		</signal>
 
 		<signal name="incomingCall" tp:name-for-bindings="incomingCall">
 			<tp:docstring>
-				<p>Notify an incoming call.</p>
-				<p>The callID generated by the daemon and must be stored by the clients in order to address other action for
-					this call.</p>
-				<tp:rationale>The client must subscribe to this signal to handle incoming calls.</tp:rationale>
+			  <p>Notify an incoming call.</p>
+			  <p>The callID generated by the daemon must be stored by the clients in order to address other action for
+			    this call. This signal is emitted when we receive a call from a remote peer</p>
+			  <tp:rationale>The client must subscribe to this signal to handle incoming calls.</tp:rationale>
 			</tp:docstring>
 			<arg type="s" name="accountID">
-				<tp:docstring>
-					The account ID of the callee. Clients must notify the right account when receiving this signal.	
-				</tp:docstring>
+			  <tp:docstring>
+			    The account ID of the callee. Clients must notify the right account when receiving this signal.	
+			  </tp:docstring>
 			</arg>
 			<arg type="s" name="callID">
-				<tp:docstring>
-					A new call ID.
-				</tp:docstring>
+			  <tp:docstring>
+			    A new call ID.
+			  </tp:docstring>
 			</arg>
 			<arg type="s" name="from">
-				<tp:docstring>
-					The caller phone number.
-				</tp:docstring>
+			  <tp:docstring>
+			    The caller phone number.
+			  </tp:docstring>
 			</arg>
 		</signal>
 
 		<signal name="incomingMessage" tp:name-for-bindings="incomingMessage">
 			<tp:docstring>
-				Unused
+				Notify clients that a new text message has been received. 
 			</tp:docstring>
-			<arg type="s" name="accountID" />
+			<arg type="s" name="callID" />
+			<arg type="s" name="from" />
 			<arg type="s" name="message" />
 		</signal>
 
 		<signal name="callStateChanged" tp:name-for-bindings="callStateChanged">
 			<tp:docstring>
-				<p>Notify of a change in a call state.</p> 
-				<p>The client must subscribe to this signal.</p>
+			  <p>Notify of a change in a call state.</p> 
+			  <p>The client must subscribe to this signal.</p>
 			</tp:docstring>
 			<arg type="s" name="callID">
-				<tp:docstring>
-					The call ID.
-				</tp:docstring>
+			  <tp:docstring>
+			    The call ID.
+			  </tp:docstring>
 			</arg>
 			<arg type="s" name="state" >
-				<tp:docstring>
-					The acceptable states are: 
-					<ul>
-						<li>INCOMING: Initial state of incoming calls</li>
-						<li>RINGING: Initial state of received outgoing call</li>
-						<li>CURRENT: The normal active state of an answered call</li>
-						<li>HUNGUP: Notify that the call has been hungup by peer</li>
-						<li>BUSY</li>
-						<li>FAILURE: Error when processing a call</li>
-						<li>HOLD</li>
-						<li>UNHOLD_CURRENT</li>
-						<li>UNHOLD_RECORD</li>
-					</ul>
-				</tp:docstring>
+			  <tp:docstring>
+			    The acceptable states are: 
+			    <ul>
+			      <li>INCOMING: Initial state of incoming calls</li>
+			      <li>RINGING: Initial state of received outgoing call</li>
+			      <li>CURRENT: The normal active state of an answered call</li>
+			      <li>HUNGUP: Notify that the call has been hungup by peer</li>
+			      <li>BUSY</li>
+			      <li>FAILURE: Error when processing a call</li>
+			      <li>HOLD</li>
+			      <li>UNHOLD_CURRENT</li>
+			      <li>UNHOLD_RECORD</li>
+			    </ul>
+			  </tp:docstring>
 			</arg>
 		</signal>
 
 		<signal name="conferenceChanged" tp:name-for-bindings="conferenceChanged">
 			<tp:added version="0.9.7"/>
 			<tp:docstring>
-				Notify of a change in the conferences state
+			  Notify of a change in the conferences state
 			</tp:docstring>
 			<arg type="s" name="confID">
-				<tp:docstring>
-					The conference ID.
-				</tp:docstring>
+			  <tp:docstring>
+			    The conference ID.
+			  </tp:docstring>
 			</arg>
 			<arg type="s" name="state">
-				<tp:docstring>
-					The acceptable states are: 
-					<ul>
-						<li>ACTIVE_ATTACHED</li>
-						<li>ACTIVE_DETACHED</li>
-						<li>HOLD</li>
-					</ul>
-				</tp:docstring>
+			  <tp:docstring>
+			    The acceptable states are: 
+			    <ul>
+			      <li>ACTIVE_ATTACHED: SFLphone user is
+			      participating to this conference</li>
+			      <li>ACTIVE_DETACHED: This situation can
+			      occur if a call is received while
+			      SFLphone user is participating to a
+			      conference. In this case, one can leave
+			      the conference by answering the
+			      call. Other participants may continue
+			      conferencing normally.</li>
+			      <li>HOLD: Each call in this conference
+			      is on state HOLD</li>
+			    </ul>
+			  </tp:docstring>
 			</arg>
 		</signal>
 
 		<method name="getParticipantList" tp:name-for-bindings="getParticipantList">
 			<tp:added version="0.9.7"/>
 			<tp:docstring>
-				Get the call IDs of every participant to a given conference. The client should keep and update the list of participant.
+			  Get the call IDs of every participant to a given conference. The client should keep and update the list of participant.
 			</tp:docstring>
 			<arg type="s" name="confID" direction="in">
-				<tp:docstring>
-					The conference ID.
-				</tp:docstring>
+			  <tp:docstring>
+			    The conference ID.
+			  </tp:docstring>
 			</arg>
 			<arg type="as" name="list" direction="out">
-				<tp:docstring>
-					The list of the call IDs.
-				</tp:docstring>
+			  <tp:docstring>
+			    The list of the call IDs.
+			  </tp:docstring>
 			</arg>
 		</method>
 
 		<signal name="conferenceCreated" tp:name-for-bindings="conferenceCreated">
 			<tp:added version="0.9.7"/>
 			<tp:docstring>
-				Emited when a new conference is created. SFLphone-client is reponsible to store the confID and call <tp:member-ref>getParticipantList</tp:member-ref> to update the display.
+			  Emited when a new conference is created. SFLphone-client is reponsible to store the confID and call <tp:member-ref>getParticipantList</tp:member-ref> to update the display.
 			</tp:docstring>
 			<arg type="s" name="confID">  
-				<tp:docstring>
-					A new conference ID.
-				</tp:docstring>
+			  <tp:docstring>
+			    A new conference ID.
+			  </tp:docstring>
 			</arg>
 		</signal>
 
 		<signal name="conferenceRemoved" tp:name-for-bindings="conferenceRemoved">
 			<tp:added version="0.9.7"/>
 			<tp:docstring>
-				Emited when a new conference is remove. SFLphone-client should have kept a list of current participant in order to display modification.
+			  Emited when a new conference is remove. SFLphone-client should have kept a list of current participant in order to display modification.
 			</tp:docstring>
 			<arg type="s" name="confID">
-				<tp:docstring>
-					The conference ID.
-				</tp:docstring>
+			  <tp:docstring>
+			    The conference ID.
+			  </tp:docstring>
 			</arg>
 		</signal>
 
 		<method name="holdConference" tp:name-for-bindings="holdConference">
 			<tp:added version="0.9.7"/>
 			<tp:docstring>
-				Hold on every calls participating to this conference.
+			  Hold on every calls participating to this conference.
 			</tp:docstring>
 			<arg type="s" name="confID" direction="in">
-				<tp:docstring>
-					The conference ID.
-				</tp:docstring>
+			  <tp:docstring>
+			    The conference ID.
+			  </tp:docstring>
 			</arg>
 		</method>
 
 		<method name="unholdConference" tp:name-for-bindings="unholdConference">
 			<tp:added version="0.9.7"/>
 			<tp:docstring>
-				Hold off every calls participating to this conference.
+			  Hold off every calls participating to this conference.
 			</tp:docstring>
 			<arg type="s" name="confID" direction="in">
-				<tp:docstring>
-					The conference ID.
-				</tp:docstring>
+			  <tp:docstring>
+			    The conference ID.
+			  </tp:docstring>
 			</arg>
 		</method>
+ 	        
+                <method name="startRecordedFilePlayback" tp:name-for-bindings="startRecordedFilePlayback">
+			<tp:added version="0.9.14"/>
+			<tp:docstring>
+			</tp:docstring>
+			<arg type="s" name="filepath" direction="in"/>
+			<arg type="b" name="result" direction="out"/>
+	        </method>
+
+		<method name="stopRecordedFilePlayback" tp:name-for-bindings="stopRecordedFilePlayback">
+			<tp:added version="0.9.14"/>
+			<tp:docstring/>
+			<arg type="s" name="filepath" direction="in"/>
+		</method>
 
 		<signal name="sipCallStateChanged" tp:name-for-bindings="sipCallStateChanged">
 			<tp:docstring>
+			  <p>Call state changed, SFLphone received a notification
+			    from registrar concerning this call.</p>
 			</tp:docstring>
 			<arg type="s" name="callID"  />
+			  <tp:docstring>
+			    The call ID
+			  </tp:docstring>
 			<arg type="s" name="state"  />
-			<arg type="i" name="code"  />            
+			  <tp:docstring>
+			    Description string
+			  </tp:docstring>
+			<arg type="i" name="code"  />
+			  <tp:docstring>
+			    The SIP or IAX2 message code
+			  </tp:docstring>
 		</signal>    
 
 		<signal name="registrationStateChanged" tp:name-for-bindings="registrationStateChanged">
 			<tp:docstring>
-				<p>The state of an account has changed.</p>
-				<p>The clients have to subscribe to this signal to use accounts.</p>
+				<p>Account state changed, SFLphone received a notification
+				from registrar.</p>
 			</tp:docstring>
 			<arg type="s" name="accountID" >
-				<tp:docstring>
-					The account ID
-				</tp:docstring>
+			  <tp:docstring>
+			    The account ID
+			  </tp:docstring>
 			</arg>
 			<arg type="s" name="state">
-				<tp:docstring>
-					The new registration state
-				</tp:docstring>
+			  <tp:docstring>
+			    Description string
+			  </tp:docstring>
 			</arg>
 			<arg type="i" name="code">            
-				<tp:docstring>
-					The SIP or IAX2 code
-				</tp:docstring>
+			  <tp:docstring>
+			    The SIP or IAX2 message code
+			  </tp:docstring>
 			</arg>
 		</signal> 
 
 		<signal name="voiceMailNotify" tp:name-for-bindings="voiceMailNotify">
 			<tp:docstring>
-				Notify the clients of the voicemail number for a specific account, if applicable.
+			  Notify the clients of the voicemail number for a specific account, if applicable.
 			</tp:docstring>
 			<arg type="s" name="accountID">
-				<tp:docstring>
-					The account ID.
-				</tp:docstring>
+			  <tp:docstring>
+			    The account ID.
+			  </tp:docstring>
 			</arg>
 			<arg type="i" name="count">
-				<tp:docstring>
-					The number of waiting messages.
-				</tp:docstring>
+			  <tp:docstring>
+			    The number of waiting messages.
+			  </tp:docstring>
 			</arg>
 		</signal>
 
 		<signal name="volumeChanged" tp:name-for-bindings="volumeChanged">
-			<tp:docstring>
-				Notify the clients of a volume level change.
+		        <tp:docstring>
+			  <p>Notify clients of a volume level
+			    change.</p> 
+			  <p>This signal occurs only if ALSA is
+			    enabled since Pulseaudio streams are
+			    managed externally. </p>
 			</tp:docstring>
 			<arg type="s" name="device">
-				<tp:docstring>
-					The device: mic or speaker	
-				</tp:docstring>
+			  <tp:docstring>
+			    The device: mic or speaker	
+			  </tp:docstring>
 			</arg>
 			<arg type="d" name="value">
-				<tp:docstring>
-					The new volume value	
-				</tp:docstring>
+			  <tp:docstring>
+			    The new volume value	
+			  </tp:docstring>
 			</arg>
 		</signal>
 
 		<signal name="transferSucceded" tp:name-for-bindings="transferSucceded">
 			<tp:docstring>
-				The transfer has been successfully processed.
+			  <p>Transfer has been successfully
+			  processed. Client should remove transfered
+			  call from call list as it is no longer
+			  accessible in SFLphone-daemon.</p>
 			</tp:docstring>
 		</signal>
 
 		<signal name="transferFailed" tp:name-for-bindings="transferFailed">
 			<tp:docstring>
-				The transfer operation has failed.
+			  <p>Transfer operation failed. Corespondin
+			  call is no longer accessible in
+			  SFLphone-daemon.</p>
 			</tp:docstring>
 		</signal>
 
 		<signal name="secureSdesOn" tp:name-for-bindings="secureSdesOn">
 			<tp:added version="0.9.7"/>
 			<tp:docstring>
+			  <p>Signal sent on SDES session success. Media transmission is encripted
+			  for this call only. It does not apply for a
+			  conference.</p> 
+			  <p>A conference can be considered to be secured if and only if each
+			  participant is secured.</p>
 			</tp:docstring>
 			<arg type="s" name="callID"/>
 		</signal>
@@ -598,6 +721,9 @@
 		<signal name="secureSdesOff" tp:name-for-bindings="secureSdesOff">
 			<tp:added version="0.9.7"/>
 			<tp:docstring>
+			  <p>Sinal sent to notify that SDES session
+			  failed.</p> 
+			  <p>Media transmission is not encrypted.</p>
 			</tp:docstring>
 			<arg type="s" name="callID" />
 		</signal>
diff --git a/src/dbus/configurationmanager-introspec.xml b/src/dbus/configurationmanager-introspec.xml
index 8d8dcf9468526693cbaa6b74e668247fb0485919..5c74a8b69bf09b905e755c821c3bc4ad1e41cdf7 100644
--- a/src/dbus/configurationmanager-introspec.xml
+++ b/src/dbus/configurationmanager-introspec.xml
@@ -27,7 +27,6 @@
 						<li>USERNAME: The username (or extension) of the account</li>
 						<li>PASSWORD: The password associated to the account</li>
 						<li>REALM</li>
-						<li>AUTHENTICATION_USERNAME</li>
 						<li>CONFIG_ACCOUNT_MAILBOX: Number to dial to access the voicemail box</li>
 						<li>CONFIG_ACCOUNT_REGISTRATION_EXPIRE: SIP header expiration value (Default: 1600)</li>
 						<li>LOCAL_INTERFACE: The network interface (Default: eth0)</li>
@@ -72,133 +71,77 @@
 				<tp:rationale>Account settings are written to the configuration file when sflphone properly quits.</tp:rationale>
 				<tp:rationale>After calling this method, the core will emit the signal <tp:member-ref>accountsChanged</tp:member-ref> with the updated data. The client must subscribe to this signal and use it to update its internal data structure.</tp:rationale>
 			</tp:docstring>
-			<annotation name="com.trolltech.QtDBus.QtTypeName.In1" value="MapStringString"/>
 			<arg type="s" name="accountID" direction="in">
 				<tp:docstring>
 				</tp:docstring>
 			</arg>
+			<annotation name="com.trolltech.QtDBus.QtTypeName.In1" value="MapStringString"/>
 			<arg type="a{ss}" name="details" direction="in" tp:type="String_String_Map">
 				<tp:docstring>
 				</tp:docstring>
 			</arg>
 		</method>
 
-		<method name="setCredential" tp:name-for-bindings="setCredential">
-			<tp:docstring>
-			</tp:docstring>
-                        <annotation name="com.trolltech.QtDBus.QtTypeName.In2" value="MapStringString"/>
-			<arg type="s" name="accountID" direction="in">
-				<tp:docstring>
-				</tp:docstring>
-			</arg>
-			<arg type="i" name="index" direction="in">
-				<tp:docstring>
-				</tp:docstring>
-			</arg>
-			<arg type="a{ss}" name="credentialInformation" direction="in" tp:type="String_String_Map">
-				<tp:docstring>
-				</tp:docstring>
-			</arg>
-		</method>
-
-		<method name="setNumberOfCredential" tp:name-for-bindings="setNumberOfCredential">
+		<method name="setCredentials" tp:name-for-bindings="setCredentials">
 			<tp:docstring>
 			</tp:docstring>
 			<arg type="s" name="accountID" direction="in">
 				<tp:docstring>
 				</tp:docstring>
 			</arg>
-			<arg type="i" name="number" direction="in">
-				<tp:docstring>
-				</tp:docstring>
-			</arg>
-		</method>
-
-		<method name="deleteAllCredential" tp:name-for-bindings="deleteAllCredential">
-			<tp:docstring>
-			</tp:docstring>
-			<arg type="s" name="accountID" direction="in">
+                        <annotation name="com.trolltech.QtDBus.QtTypeName.In1" value="MapStringString"/>
+			<arg type="aa{ss}" name="credentialInformation" direction="in" tp:type="String_String_Map">
 				<tp:docstring>
 				</tp:docstring>
 			</arg>
 		</method>
 
 		<method name="getIp2IpDetails" tp:name-for-bindings="getIp2IpDetails">
-			<tp:docstring>
-				Get configuration settings of the IP2IP_PROFILE. They are sligthly different from account settings since no VoIP accounts are involved.
-			</tp:docstring>
-			<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
-			<!--<annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="MapStringString"/>-->
-			<arg type="a{ss}" name="details" direction="out" tp:type="String_String_Map">
-				<tp:docstring>
-					Available parameters are:
-					<ul>
-						<li>ACCOUNT_ID</li>
-						<li>SRTP_KEY_EXCHANGE</li>
-						<li>SRTP_ENABLE</li>
-						<li>SRTP_RTP_FALLBACK</li>
-						<li>ZRTP_DISPLAY_SAS</li>
-						<li>ZRTP_HELLO_HASH</li>
-						<li>ZRTP_NOT_SUPP_WARNING</li>
-						<li>ZRTP_DISPLAY_SAS_ONCE</li>
-						<li>LOCAL_INTERFACE</li>
-						<li>LOCAL_PORT</li>
-						<li>TLS_LISTENER_PORT</li>
-						<li>TLS_CA_LIST_FILE</li>
-						<li>TLS_CERTIFICATE_FILE</li>
-						<li>TLS_PRIVATE_KEY_FILE</li>
-						<li>TLS_PASSWORD</li>
-						<li>TLS_METHOD</li>
-						<li>TLS_CIPHERS</li>
-						<li>TLS_SERVER_NAME</li>
-						<li>TLS_VERIFY_SERVER</li>
-						<li>TLS_VERIFY_CLIENT</li>
-						<li>TLS_REQUIRE_CLIENT_CERTIFICATE</li>
-						<li>TLS_NEGOTIATION_TIMEOUT_SEC</li>
-						<li>TLS_NEGOTIATION_TIMEOUT_MSEC</li>
-						</ul>
-					</tp:docstring>
-				</arg>
-			</method>
-
-			<method name="setIp2IpDetails" tp:name-for-bindings="setIp2IpDetails">
-                                 <annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="MapStringString"/>
-				<tp:docstring>
-					Same as <tp:member-ref>getAccountDetails</tp:member-ref>, but for the IP-to-IP profile.
-				</tp:docstring>
-                              <arg type="a{ss}" name="details" direction="in" tp:type="String_String_Map">
-			   <tp:docstring>
-				   The map of parameters. See <tp:member-ref>getIp2IpDetails</tp:member-ref> for complete reference.
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="getCredential" tp:name-for-bindings="getCredential">
+            <tp:docstring>
+            Get configuration settings of the IP2IP_PROFILE. They are sligthly different from account settings since no VoIP accounts are involved.
+            </tp:docstring>
+            <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
+            <arg type="a{ss}" name="details" direction="out" tp:type="String_String_Map">
+            <tp:docstring>
+            Available parameters are:
+            <ul>
+            <li>ACCOUNT_ID</li>
+            <li>SRTP_KEY_EXCHANGE</li>
+            <li>SRTP_ENABLE</li>
+            <li>SRTP_RTP_FALLBACK</li>
+            <li>ZRTP_DISPLAY_SAS</li>
+            <li>ZRTP_HELLO_HASH</li>
+            <li>ZRTP_NOT_SUPP_WARNING</li>
+            <li>ZRTP_DISPLAY_SAS_ONCE</li>
+            <li>LOCAL_INTERFACE</li>
+            <li>LOCAL_PORT</li>
+            <li>TLS_LISTENER_PORT</li>
+            <li>TLS_CA_LIST_FILE</li>
+            <li>TLS_CERTIFICATE_FILE</li>
+            <li>TLS_PRIVATE_KEY_FILE</li>
+            <li>TLS_PASSWORD</li>
+            <li>TLS_METHOD</li>
+            <li>TLS_CIPHERS</li>
+            <li>TLS_SERVER_NAME</li>
+            <li>TLS_VERIFY_SERVER</li>
+            <li>TLS_VERIFY_CLIENT</li>
+            <li>TLS_REQUIRE_CLIENT_CERTIFICATE</li>
+            <li>TLS_NEGOTIATION_TIMEOUT_SEC</li>
+            <li>TLS_NEGOTIATION_TIMEOUT_MSEC</li>
+            </ul>
+            </tp:docstring>
+            </arg>
+        </method>
+
+	   <method name="getCredentials" tp:name-for-bindings="getCredentials">
 		   <tp:docstring>
 		   </tp:docstring>
-		   <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
 		   <arg type="s" name="accountID" direction="in">
 			   <tp:docstring>
 			   </tp:docstring>
 		   </arg>
-		   <arg type="i" name="index" direction="in">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-		   <arg type="a{ss}" name="credentialInformation" direction="out">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="getNumberOfCredential" tp:name-for-bindings="getNumberOfCredential">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="s" name="accountID" direction="in">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-		   <arg type="i" name="numberOfCredential" direction="out">
+		   <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
+		   <arg type="aa{ss}" name="credentialInformation" direction="out">
 			   <tp:docstring>
 			   </tp:docstring>
 		   </arg>
@@ -279,118 +222,55 @@
 		   </arg>
 	   </method>
 
-	   <method name="getToneLocaleList" tp:name-for-bindings="getToneLocaleList">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
-		   <arg type="as" name="list" direction="out">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="getVersion" tp:name-for-bindings="getVersion">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="s" name="version" direction="out">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="getRingtoneList" tp:name-for-bindings="getRingtoneList">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
-		   <arg type="as" name="list" direction="out">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="getPlaybackDeviceList" tp:name-for-bindings="getPlaybackDeviceList">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
-		   <arg type="as" name="list" direction="out">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="getRecordDeviceList" tp:name-for-bindings="getRecordDeviceList">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
-		   <arg type="as" name="list" direction="out">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="isRingtoneEnabled" tp:name-for-bindings="isRingtoneEnabled">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="i" name="bool" direction="out">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="ringtoneEnabled" tp:name-for-bindings="ringtoneEnabled">
-		   <tp:docstring>
-		   </tp:docstring>
-	   </method>
-
-	   <method name="getRingtoneChoice" tp:name-for-bindings="getRingtoneChoice">
+	   <method name="getAudioManager" tp:name-for-bindings="getAudioManager">
 		   <tp:docstring>
 		   </tp:docstring>
-		   <arg type="s" name="tone" direction="out">
+		   <arg type="s" name="api" direction="out">
 			   <tp:docstring>
 			   </tp:docstring>
 		   </arg>
 	   </method>
 
-	   <method name="setRingtoneChoice" tp:name-for-bindings="setRingtoneChoice">
+	   <method name="setAudioManager" tp:name-for-bindings="setAudioManager">
 		   <tp:docstring>
 		   </tp:docstring>
-		   <arg type="s" name="tone" direction="in">
+		   <arg type="s" name="api" direction="in">
 			   <tp:docstring>
 			   </tp:docstring>
 		   </arg>
 	   </method>
 
-	   <method name="getAudioManager" tp:name-for-bindings="getAudioManager">
+	   <method name="getRecordPath" tp:name-for-bindings="getRecordPath">
 		   <tp:docstring>
 		   </tp:docstring>
-		   <arg type="i" name="api" direction="out">
+		   <arg type="s" name="rec" direction="out">
 			   <tp:docstring>
 			   </tp:docstring>
 		   </arg>
 	   </method>
 
-	   <method name="setAudioManager" tp:name-for-bindings="setAudioManager">
+	   <method name="setRecordPath" tp:name-for-bindings="setRecordPath">
 		   <tp:docstring>
 		   </tp:docstring>
-		   <arg type="i" name="api" direction="in">
+		   <arg type="s" name="rec" direction="in">
 			   <tp:docstring>
 			   </tp:docstring>
 		   </arg>
 	   </method>
-
-	   <method name="getRecordPath" tp:name-for-bindings="getRecordPath">
+	   
+	   <method name="getIsAlwaysRecording" tp:name-for-bindings="getIsAlwaysRecording">
 		   <tp:docstring>
 		   </tp:docstring>
-		   <arg type="s" name="rec" direction="out">
+		   <arg type="b" name="res" direction="out">
 			   <tp:docstring>
 			   </tp:docstring>
 		   </arg>
 	   </method>
 
-	   <method name="setRecordPath" tp:name-for-bindings="setRecordPath">
+	   <method name="setIsAlwaysRecording" tp:name-for-bindings="setIsAlwaysRecording">
 		   <tp:docstring>
 		   </tp:docstring>
-		   <arg type="s" name="rec" direction="in">
+		   <arg type="b" name="enabled" direction="in">
 			   <tp:docstring>
 			   </tp:docstring>
 		   </arg>
@@ -400,7 +280,7 @@
 
 	   <!-- Codecs-related methods -->
 
-	   <method name="getCodecList" tp:name-for-bindings="getCodecList">
+	   <method name="getAudioCodecList" tp:name-for-bindings="getAudioCodecList">
 		   <tp:docstring>
 		   </tp:docstring>
 		   <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
@@ -410,7 +290,7 @@
 		   </arg>
 	   </method>
 
-	   <method name="getCodecDetails" tp:name-for-bindings="getCodecDetails">
+	   <method name="getAudioCodecDetails" tp:name-for-bindings="getAudioCodecDetails">
 		   <tp:docstring>
 		   </tp:docstring>
 		   <arg type="i" name="payload" direction="in">
@@ -424,7 +304,7 @@
 		   </arg>
 	   </method>
 
-	   <method name="getActiveCodecList" tp:name-for-bindings="getActiveCodecList">
+	   <method name="getActiveAudioCodecList" tp:name-for-bindings="getActiveAudioCodecList">
 		   <tp:docstring>
 		   </tp:docstring>
 		   <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
@@ -438,7 +318,7 @@
 		   </arg>
 	   </method>
 
-	   <method name="setActiveCodecList" tp:name-for-bindings="setActiveCodecList">
+	   <method name="setActiveAudioCodecList" tp:name-for-bindings="setActiveAudioCodecList">
 		   <tp:docstring>
 		   </tp:docstring>
 		   <annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="VectorString"/>
@@ -455,7 +335,7 @@
 
 	   <!-- Audio devices methods -->
 
-	   <method name="getInputAudioPluginList" tp:name-for-bindings="getInputAudioPluginList">
+	   <method name="getAudioPluginList" tp:name-for-bindings="getAudioPluginList">
 		   <tp:docstring>
 		   </tp:docstring>
 		   <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
@@ -465,50 +345,49 @@
 		   </arg>
 	   </method>
 
-	   <method name="getOutputAudioPluginList" tp:name-for-bindings="getOutputAudioPluginList">
+	   <method name="setAudioPlugin" tp:name-for-bindings="setAudioPlugin">
 		   <tp:docstring>
 		   </tp:docstring>
-		   <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
-		   <arg type="as" name="list" direction="out">
+		   <arg type="s" name="audioPlugin" direction="in">
 			   <tp:docstring>
 			   </tp:docstring>
 		   </arg>
 	   </method>
 
-	   <method name="setInputAudioPlugin" tp:name-for-bindings="setInputAudioPlugin">
+	   <method name="getAudioOutputDeviceList" tp:name-for-bindings="getAudioOutputDeviceList">
 		   <tp:docstring>
 		   </tp:docstring>
-		   <arg type="s" name="audioPlugin" direction="in">
+		   <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
+		   <arg type="as" name="list" direction="out">
 			   <tp:docstring>
 			   </tp:docstring>
 		   </arg>
 	   </method>
 
-	   <method name="setOutputAudioPlugin" tp:name-for-bindings="setOutputAudioPlugin">
+	   <method name="setAudioOutputDevice" tp:name-for-bindings="setAudioOutputDevice">
 		   <tp:docstring>
 		   </tp:docstring>
-		   <arg type="s" name="audioPlugin" direction="in">
+		   <arg type="i" name="index" direction="in">
 			   <tp:docstring>
 			   </tp:docstring>
 		   </arg>
 	   </method>
 
-	   <method name="getAudioOutputDeviceList" tp:name-for-bindings="getAudioOutputDeviceList">
+	   <method name="setAudioInputDevice" tp:name-for-bindings="setAudioInputDevice">
 		   <tp:docstring>
 		   </tp:docstring>
-		   <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
-		   <arg type="as" name="list" direction="out">
+		   <arg type="i" name="index" direction="in">
 			   <tp:docstring>
 			   </tp:docstring>
 		   </arg>
 	   </method>
 
-	   <method name="setAudioOutputDevice" tp:name-for-bindings="setAudioOutputDevice">
-		   <tp:docstring>
+	   <method name="setAudioRingtoneDevice" tp:name-for-bindings="setAudioRingtoneDevice">
+	           <tp:docstring>
 		   </tp:docstring>
 		   <arg type="i" name="index" direction="in">
-			   <tp:docstring>
-			   </tp:docstring>
+		     <tp:docstring>
+		     </tp:docstring>
 		   </arg>
 	   </method>
 
@@ -522,14 +401,6 @@
 		   </arg>
 	   </method>
 
-	   <method name="setAudioInputDevice" tp:name-for-bindings="setAudioInputDevice">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="i" name="index" direction="in">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
 
 	   <method name="getCurrentAudioDevicesIndex" tp:name-for-bindings="getCurrentAudioDevicesIndex">
 		   <tp:docstring>
@@ -563,126 +434,92 @@
 		   </arg>
 	   </method>
 
-	   <!--    General Settings Panel         -->
-
-	   <method name="isMd5CredentialHashing" tp:name-for-bindings="isMd5CredentialHashing">
-		   <tp:docstring>
+       <method name="getEchoCancelState" tp:name-for-bindings="getNoiseSuppressState">
+	           <tp:docstring>
 		   </tp:docstring>
-		   <arg type="b" name="res" direction="out">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="setMd5CredentialHashing" tp:name-for-bindings="setMd5CredentialHashing">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="b" name="enabled" direction="in">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="isIax2Enabled" tp:name-for-bindings="isIax2Enabled">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="i" name="res" direction="out">
-			   <tp:docstring>
+		   <arg type="s" name="state" direction="out">
+		           <tp:docstring>
 			   </tp:docstring>
 		   </arg>
 	   </method>
 
-	   <method name="setNotify" tp:name-for-bindings="setNotify">
-		   <tp:docstring>
-		   </tp:docstring>
+	   <method name="setEchoCancelState" tp:name-for-bindings="setEchoCancelState">
+	           <arg type="s" name="state" direction="in">
+	           </arg>
 	   </method>
 
-	   <method name="getNotify" tp:name-for-bindings="getNotify">
-		   <tp:docstring>
+	   <method name="setEchoCancelTailLength" tp:name-for-bindings="setEchoCancelTailLength">
+	           <tp:docstring>
 		   </tp:docstring>
-		   <arg type="i" name="level" direction="out">
-			   <tp:docstring>
-			   </tp:docstring>
+		   <arg type="i" name="index" direction="in">
+		     <tp:docstring>
+		     </tp:docstring>
 		   </arg>
 	   </method>
-
-	   <method name="setMailNotify" tp:name-for-bindings="setMailNotify">
-		   <tp:docstring>
+	   
+	   <method name="getEchoCancelTailLength" tp:name-for-bindings="getEchoCancelTailLength">
+	           <tp:docstring>
 		   </tp:docstring>
-	   </method>
-
-	   <method name="getMailNotify" tp:name-for-bindings="getMailNotify">
-		   <tp:docstring>
+		   <arg type="i" name="index" direction="out">
+		     <tp:docstring>
+		     </tp:docstring>
+		   </arg>
+	   </method>
+	   
+	   <method name="setEchoCancelDelay" tp:name-for-bindings="setEchoCancelDelay">
+	       <tp:docstring>
+	       </tp:docstring>
+	       <arg type="i" name="index" direction="in">
+	       </arg>
+	   </method> 
+	   
+	   <method name="getEchoCancelDelay" tp:name-for-bindings="getEchoCancelDelay">
+	       <tp:docstring>
+	       </tp:docstring>
+	       <arg type="i" name="index" direction="out">
+	       </arg>
+	   </method>
+	   
+	   
+	   <method name="getNoiseSuppressState" tp:name-for-bindings="getEchoCancelState">
+	           <tp:docstring>
 		   </tp:docstring>
-		   <arg type="i" name="level" direction="out">
-			   <tp:docstring>
+		   <arg type="s" name="state" direction="out">
+		           <tp:docstring>
 			   </tp:docstring>
 		   </arg>
 	   </method>
 
-	   <method name="getDialpad" tp:name-for-bindings="getDialpad">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="i" name="state" direction="out">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
+	   <method name="setNoiseSuppressState" tp:name-for-bindings="setNoiseSuppressState">
+	           <arg type="s" name="state" direction="in">
+	           </arg>
 	   </method>
 
-	   <method name="setDialpad" tp:name-for-bindings="setDialpad">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="b" name="display" direction="in">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
+	   <!--    General Settings Panel         -->
 
-	   <method name="getSearchbar" tp:name-for-bindings="getSearchbar">
+	   <method name="isIax2Enabled" tp:name-for-bindings="isIax2Enabled">
 		   <tp:docstring>
 		   </tp:docstring>
-		   <arg type="i" name="state" direction="out">
+		   <arg type="i" name="res" direction="out">
 			   <tp:docstring>
 			   </tp:docstring>
 		   </arg>
 	   </method>
 
-	   <method name="setSearchbar" tp:name-for-bindings="setSearchbar">
-		   <tp:docstring>
-		   </tp:docstring>
-	   </method>
-
-	   <method name="setHistoryEnabled" tp:name-for-bindings="setHistoryEnabled">
+	   <method name="setMailNotify" tp:name-for-bindings="setMailNotify">
 		   <tp:docstring>
 		   </tp:docstring>
 	   </method>
 
-	   <method name="getHistoryEnabled" tp:name-for-bindings="getHistoryEnabled">
+	   <method name="getMailNotify" tp:name-for-bindings="getMailNotify">
 		   <tp:docstring>
 		   </tp:docstring>
-		   <arg type="s" name="state" direction="out">
+		   <arg type="i" name="level" direction="out">
 			   <tp:docstring>
 			   </tp:docstring>
 		   </arg>
 	   </method>
 
-	   <method name="getVolumeControls" tp:name-for-bindings="getVolumeControls">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="i" name="state" direction="out">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="setVolumeControls" tp:name-for-bindings="setVolumeControls">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="b" name="display" direction="in">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
 
 	   <method name="getHistoryLimit" tp:name-for-bindings="getHistoryLimit">
 		   <tp:docstring>
@@ -702,125 +539,6 @@
 		   </arg>
 	   </method>
 
-	   <method name="startHidden" tp:name-for-bindings="startHidden">
-		   <tp:docstring>
-		   </tp:docstring>
-	   </method>
-
-	   <method name="isStartHidden" tp:name-for-bindings="isStartHidden">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="i" name="state" direction="out">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="popupMode" tp:name-for-bindings="popupMode">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="i" name="state" direction="out">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="switchPopupMode" tp:name-for-bindings="switchPopupMode">
-		   <tp:docstring>
-		   </tp:docstring>
-	   </method>
-
-	   <method name="getWindowWidth" tp:name-for-bindings="getWindowWidth">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="i" name="width" direction="out">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="getWindowHeight" tp:name-for-bindings="getWindowHeight">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="i" name="height" direction="out">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="setWindowWidth" tp:name-for-bindings="setWindowWidth">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="i" name="width" direction="in">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="setWindowHeight" tp:name-for-bindings="setWindowHeight">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="i" name="height" direction="in">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="getWindowPositionX" tp:name-for-bindings="getWindowPositionX">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="i" name="posX" direction="out">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="setWindowPositionX" tp:name-for-bindings="setWindowPositionX">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="i" name="posX" direction="in">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="getWindowPositionY" tp:name-for-bindings="getWindowPositionY">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="i" name="posY" direction="out">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="setWindowPositionY" tp:name-for-bindings="setWindowPositionY">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="i" name="posY" direction="in">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="enableStatusIcon" tp:name-for-bindings="enableStatusIcon">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="s" name="value" direction="in">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-	   <method name="isStatusIconEnabled" tp:name-for-bindings="isStatusIconEnabled">
-		   <tp:docstring>
-		   </tp:docstring>
-		   <arg type="s" name="value" direction="out">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
-	   </method>
-
-
 	   <!-- Addressbook configuration -->
 	   <method name="getAddressbookSettings" tp:name-for-bindings="getAddressbookSettings">
 		   <tp:docstring>
@@ -888,7 +606,7 @@
 		   <tp:docstring>
 		   </tp:docstring>
 		   <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
-		   <arg type="a{ss}" name="entries" direction="out">
+		   <arg type="as" name="entries" direction="out">
 			   <tp:docstring>
 			   </tp:docstring>
 		   </arg>
@@ -898,7 +616,7 @@
 		   <tp:docstring>
 		   </tp:docstring>
 		   <annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="MapStringString"/>
-		   <arg type="a{ss}" name="entries" direction="in">
+		   <arg type="as" name="entries" direction="in">
 			   <tp:docstring>
 			   </tp:docstring>
 		   </arg>
@@ -938,10 +656,6 @@
 	   <method name="getTlsSettings" tp:name-for-bindings="getTlsSettings">
 		   <tp:docstring>
 		   </tp:docstring>
-		   <arg type="s" name="accountID" direction="in">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
 		   <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
 		   <arg type="a{ss}" name="details" direction="out">
 			   <tp:docstring>
@@ -952,11 +666,7 @@
 	   <method name="setTlsSettings" tp:name-for-bindings="setTlsSettings">
 		   <tp:docstring>
 		   </tp:docstring>
-		   <annotation name="com.trolltech.QtDBus.QtTypeName.In1" value="MapStringString"/>
-		   <arg type="s" name="accountID" direction="in">
-			   <tp:docstring>
-			   </tp:docstring>
-		   </arg>
+		   <annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="MapStringString"/>
 		   <arg type="a{ss}" name="details" direction="in">
 			   <tp:docstring>
 			   </tp:docstring>
@@ -997,20 +707,20 @@
 	   </method>
 
 	   <method name="getShortcuts" tp:name-for-bindings="getShortcuts">
-                   <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringInt"/>
 		   <tp:docstring>
 		   </tp:docstring>
-		   <arg type="a{si}" name="shortcutsMap" direction="out">
+                   <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
+		   <arg type="a{ss}" name="shortcutsMap" direction="out">
 			   <tp:docstring>
 			   </tp:docstring>
 		   </arg>
 	   </method>
 
 	   <method name="setShortcuts" tp:name-for-bindings="setShortcuts">
-                   <annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="MapStringInt"/>
 		   <tp:docstring>
 		   </tp:docstring>
-		   <arg type="a{si}" name="shortcutsMap" direction="in">
+                   <annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="MapStringString"/>
+		   <arg type="a{ss}" name="shortcutsMap" direction="in">
 			   <tp:docstring>
 			   </tp:docstring>
 		   </arg>