2
<node name="/configurationmanager-introspec" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
3
<interface name="org.sflphone.SFLphone.ConfigurationManager">
5
<tp:docstring xmlns="http://www.w3.org/1999/xhtml">
6
Used to handle the configuration stuff: accounts settings, account registration, user preferences, ...
9
<method name="getAccountTemplate" tp:name-for-bindings="getAccountTemplate">
10
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
11
<arg type="a{ss}" name="details" direction="out" tp:type="String_String_Map">
15
<method name="getAccountDetails" tp:name-for-bindings="getAccountDetails">
17
Get all parameters of the specified account.
19
<arg type="s" name="accountID" direction="in">
24
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
25
<arg type="a{ss}" name="details" direction="out" tp:type="String_String_Map">
27
The available keys / parameters are:
29
<li>CONFIG_ACCOUNT_ENABLE: True or False (Default: True)</li>
30
<li>CONFIG_ACCOUNT_RESOLVE_ONCE</li>
31
<li>CONFIG_ACCOUNT_TYPE: SIP or IAX2 (Default: SIP)</li>
32
<li>HOSTNAME: The IP adress or hostname of the registrar</li>
33
<li>USERNAME: The username (or extension) of the account</li>
34
<li>PASSWORD: The password associated to the account</li>
36
<li>CONFIG_ACCOUNT_MAILBOX: Number to dial to access the voicemail box</li>
37
<li>CONFIG_ACCOUNT_REGISTRATION_EXPIRE: SIP header expiration value (Default: 1600)</li>
38
<li>LOCAL_INTERFACE: The network interface (Default: eth0)</li>
39
<li>PUBLISHED_SAMEAS_LOCAL: If False, the published address equals the local address. This is the default.</li>
40
<li>PUBLISHED_ADDRESS: The SIP published address</li>
41
<li>LOCAL_PORT: The SIP listening port (Default: 5060)</li>
42
<li>PUBLISHED_PORT: The SIP published port</li>
43
<li>DISPLAY_NAMEL: The display name</li>
44
<li>STUN_ENABLE: True or False (Default: False)</li>
45
<li>STUN_SERVER: The STUN server address</li>
46
<li>ACCOUNT_REGISTRATION_STATUS: The account registration status. Should be Registered to make calls.</li>
47
<li>ACCOUNT_REGISTRATION_STATE_CODE</li>
48
<li>ACCOUNT_REGISTRATION_STATE_DESC</li>
49
<li>SRTP_KEY_EXCHANGE</li>
50
<li>SRTP_ENABLE: Whether or not voice communication are encrypted - True or False (Default: False)</li>
51
<li>SRTP_RTP_FALLBACK</li>
52
<li>ZRTP_DISPLAY_SAS</li>
53
<li>ZRTP_DISPLAY_SAS_ONCE</li>
54
<li>ZRTP_HELLO_HASH</li>
55
<li>ZRTP_NOT_SUPP_WARNING</li>
56
<li>TLS_LISTENER_PORT: TLS listening port (Default: 5061)</li>
57
<li>TLS_ENABLE: Whether or not signalling is encrypted - True or False (Default: False)</li>
58
<li>TLS_CA_LIST_FILE</li>
59
<li>TLS_CERTIFICATE_FILE</li>
60
<li>TLS_PRIVATE_KEY_FILE</li>
63
<li>TLS_SERVER_NAME</li>
64
<li>TLS_VERIFY_SERVER</li>
65
<li>TLS_VERIFY_CLIENT</li>
66
<li>TLS_REQUIRE_CLIENT_CERTIFICATE</li>
67
<li>TLS_NEGOTIATION_TIMEOUT_SEC</li>
68
<li>TLS_NEGOTIATION_TIMEOUT_MSEC</li>
74
<method name="setAccountDetails" tp:name-for-bindings="setAccountDetails">
76
Send new account parameters, or account parameters changes, to the core. The hash table is not required to be complete, only the updated parameters may be specified.
77
<tp:rationale>Account settings are written to the configuration file when sflphone properly quits.</tp:rationale>
78
<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>
80
<annotation name="com.trolltech.QtDBus.QtTypeName.In1" value="MapStringString"/>
81
<arg type="s" name="accountID" direction="in">
83
<arg type="a{ss}" name="details" direction="in" tp:type="String_String_Map">
87
<method name="setCredentials" tp:name-for-bindings="setCredentials">
88
<arg type="s" name="accountID" direction="in">
90
<annotation name="com.trolltech.QtDBus.QtTypeName.In1" value="VectorMapStringString"/>
91
<arg type="aa{ss}" name="credentialInformation" direction="in" tp:type="String_String_Map">
95
<method name="getIp2IpDetails" tp:name-for-bindings="getIp2IpDetails">
97
Get configuration settings of the IP2IP_PROFILE. They are sligthly different from account settings since no VoIP accounts are involved.
99
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
100
<arg type="a{ss}" name="details" direction="out" tp:type="String_String_Map">
102
Available parameters are:
105
<li>SRTP_KEY_EXCHANGE</li>
107
<li>SRTP_RTP_FALLBACK</li>
108
<li>ZRTP_DISPLAY_SAS</li>
109
<li>ZRTP_HELLO_HASH</li>
110
<li>ZRTP_NOT_SUPP_WARNING</li>
111
<li>ZRTP_DISPLAY_SAS_ONCE</li>
112
<li>LOCAL_INTERFACE</li>
114
<li>TLS_LISTENER_PORT</li>
115
<li>TLS_CA_LIST_FILE</li>
116
<li>TLS_CERTIFICATE_FILE</li>
117
<li>TLS_PRIVATE_KEY_FILE</li>
118
<li>TLS_PASSWORD</li>
121
<li>TLS_SERVER_NAME</li>
122
<li>TLS_VERIFY_SERVER</li>
123
<li>TLS_VERIFY_CLIENT</li>
124
<li>TLS_REQUIRE_CLIENT_CERTIFICATE</li>
125
<li>TLS_NEGOTIATION_TIMEOUT_SEC</li>
126
<li>TLS_NEGOTIATION_TIMEOUT_MSEC</li>
132
<method name="getCredentials" tp:name-for-bindings="getCredentials">
133
<arg type="s" name="accountID" direction="in">
135
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorMapStringString"/>
136
<arg type="aa{ss}" name="credentialInformation" direction="out">
140
<method name="addAccount" tp:name-for-bindings="addAccount">
142
Add a new account. When created, the signal <tp:member-ref>accountsChanged</tp:member-ref> is emitted. The clients must then call <tp:member-ref>getAccountList</tp:member-ref> to update their internal data structure.
143
<tp:rationale>If no details are specified, the default parameters are used.</tp:rationale>
144
<tp:rationale>The core tries to register the account as soon it is created.</tp:rationale>
146
<annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="MapStringString"/>
147
<arg type="a{ss}" name="details" direction="in" tp:type="String_String_Map">
149
The new account settings
152
<arg type="s" name="createdAccountId" direction="out">
159
<method name="setAccountsOrder" tp:name-for-bindings="setAccountsOrder">
161
Update the accounts order.
162
<tp:rationale>When placing a call, the first registered account in the list is used.</tp:rationale>
164
<arg type="s" name="order" direction="in">
166
An ordered list of account IDs, delimited by '/'
171
<method name="removeAccount" tp:name-for-bindings="removeAccount">
173
Remove an existing account. When removed, the signal <tp:member-ref>accountsChanged</tp:member-ref> is emitted. The clients must then call <tp:member-ref>getAccountList</tp:member-ref> to update their internal data structure.
175
<arg type="s" name="accoundID" direction="in">
177
The account to remove, identified by its ID
182
<method name="getAccountList" tp:name-for-bindings="getAccountList">
184
Get a list of all created accounts, as stored by the core.
186
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
187
<arg type="as" name="list" direction="out">
189
A list of account IDs
194
<method name="registerAllAccounts" tp:name-for-bindings="registerAllAccounts">
196
Send account registration (REGISTER) for all accounts, even if they are not enabled.
200
<method name="sendRegister" tp:name-for-bindings="sendRegister">
202
Send account registration (REGISTER) to the registrar.
204
Register the account if enable=true, unregister if enable=false.
206
@param[in] input accountID
208
<arg type="s" name="accountID" direction="in">
213
<arg type="b" name="enable" direction="in">
215
<p>To register, enable must be true.</p>
216
<p>To un-register, enable must be false.</p>
221
<method name="getAudioManager" tp:name-for-bindings="getAudioManager">
222
<arg type="s" name="api" direction="out">
226
<method name="setAudioManager" tp:name-for-bindings="setAudioManager">
227
<arg type="s" name="api" direction="in">
231
<method name="getRecordPath" tp:name-for-bindings="getRecordPath">
232
<arg type="s" name="rec" direction="out">
236
<method name="setRecordPath" tp:name-for-bindings="setRecordPath">
237
<arg type="s" name="rec" direction="in">
241
<method name="getIsAlwaysRecording" tp:name-for-bindings="getIsAlwaysRecording">
242
<arg type="b" name="res" direction="out">
246
<method name="setIsAlwaysRecording" tp:name-for-bindings="setIsAlwaysRecording">
247
<arg type="b" name="enabled" direction="in">
251
<!-- /////////////////////// -->
253
<!-- Codecs-related methods -->
255
<method name="getAudioCodecList" tp:name-for-bindings="getAudioCodecList">
256
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorInt"/>
257
<arg type="ai" name="list" direction="out">
261
<method name="getAudioCodecDetails" tp:name-for-bindings="getAudioCodecDetails">
262
<arg type="i" name="payload" direction="in">
264
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
265
<arg type="as" name="details" direction="out">
269
<method name="getActiveAudioCodecList" tp:name-for-bindings="getActiveAudioCodecList">
270
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorInt"/>
271
<arg type="s" name="accountID" direction="in">
273
<arg type="ai" name="list" direction="out">
277
<method name="setActiveAudioCodecList" tp:name-for-bindings="setActiveAudioCodecList">
278
<annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="VectorString"/>
279
<arg type="as" name="list" direction="in">
281
<arg type="s" name="accountID" direction="in">
285
<!-- Audio devices methods -->
287
<method name="getAudioPluginList" tp:name-for-bindings="getAudioPluginList">
288
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
289
<arg type="as" name="list" direction="out">
293
<method name="setAudioPlugin" tp:name-for-bindings="setAudioPlugin">
294
<arg type="s" name="audioPlugin" direction="in">
298
<method name="getAudioOutputDeviceList" tp:name-for-bindings="getAudioOutputDeviceList">
299
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
300
<arg type="as" name="list" direction="out">
304
<method name="setAudioOutputDevice" tp:name-for-bindings="setAudioOutputDevice">
305
<arg type="i" name="index" direction="in">
309
<method name="setAudioInputDevice" tp:name-for-bindings="setAudioInputDevice">
310
<arg type="i" name="index" direction="in">
314
<method name="setAudioRingtoneDevice" tp:name-for-bindings="setAudioRingtoneDevice">
315
<arg type="i" name="index" direction="in">
319
<method name="getAudioInputDeviceList" tp:name-for-bindings="getAudioInputDeviceList">
320
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
321
<arg type="as" name="list" direction="out">
326
<method name="getCurrentAudioDevicesIndex" tp:name-for-bindings="getCurrentAudioDevicesIndex">
327
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
328
<arg type="as" name="list" direction="out">
332
<method name="getAudioDeviceIndex" tp:name-for-bindings="getAudioDeviceIndex">
333
<arg type="s" name="name" direction="in">
335
<arg type="i" name="index" direction="out">
339
<method name="getCurrentAudioOutputPlugin" tp:name-for-bindings="getCurrentAudioOutputPlugin">
340
<arg type="s" name="plugin" direction="out">
344
<method name="getEchoCancelState" tp:name-for-bindings="getNoiseSuppressState">
345
<arg type="s" name="state" direction="out">
349
<method name="getRingtoneList" tp:name-for-bindings="getRingtoneList">
350
<tp:added version="1.1.1"/>
351
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
353
Get a map [Path,Filename] of available ringtone. Note, set the ringtone with the complete path
355
<arg type="a{ss}" name="list" direction="out">
359
<method name="setEchoCancelState" tp:name-for-bindings="setEchoCancelState">
360
<arg type="s" name="state" direction="in">
364
<method name="setEchoCancelTailLength" tp:name-for-bindings="setEchoCancelTailLength">
365
<arg type="i" name="index" direction="in">
369
<method name="getEchoCancelTailLength" tp:name-for-bindings="getEchoCancelTailLength">
370
<arg type="i" name="index" direction="out">
374
<method name="setEchoCancelDelay" tp:name-for-bindings="setEchoCancelDelay">
375
<arg type="i" name="index" direction="in">
379
<method name="getEchoCancelDelay" tp:name-for-bindings="getEchoCancelDelay">
380
<arg type="i" name="index" direction="out">
384
<!-- General Settings Panel -->
386
<method name="getNoiseSuppressState" tp:name-for-bindings="getEchoCancelState">
387
<arg type="s" name="state" direction="out">
391
<method name="setNoiseSuppressState" tp:name-for-bindings="setNoiseSuppressState">
392
<arg type="s" name="state" direction="in">
396
<!-- General Settings Panel -->
398
<method name="isIax2Enabled" tp:name-for-bindings="isIax2Enabled">
399
<arg type="i" name="res" direction="out">
403
<method name="setMailNotify" tp:name-for-bindings="setMailNotify">
406
<method name="getMailNotify" tp:name-for-bindings="getMailNotify">
407
<arg type="i" name="level" direction="out">
412
<method name="getHistoryLimit" tp:name-for-bindings="getHistoryLimit">
413
<arg type="i" name="days" direction="out">
417
<method name="setHistoryLimit" tp:name-for-bindings="setHistoryLimit">
418
<arg type="i" name="days" direction="in">
422
<!-- Addressbook configuration -->
423
<method name="getAddressbookSettings" tp:name-for-bindings="getAddressbookSettings">
424
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringInt"/>
425
<arg type="a{si}" name="settings" direction="out">
429
<method name="setAddressbookSettings" tp:name-for-bindings="setAddressbookSettings">
430
<annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="MapStringInt"/>
431
<arg type="a{si}" name="settings" direction="in">
435
<!-- Addressbook list -->
436
<method name="getAddressbookList" tp:name-for-bindings="getAddressbookList">
437
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
438
<arg type="as" name="settings" direction="out">
442
<method name="setAddressbookList" tp:name-for-bindings="setAddressbookList">
443
<annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="VectorString"/>
444
<arg type="as" name="settings" direction="in">
448
<!-- Hook configuration -->
449
<method name="getHookSettings" tp:name-for-bindings="getHookSettings">
450
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
451
<arg type="a{ss}" name="settings" direction="out">
455
<method name="setHookSettings" tp:name-for-bindings="setHookSettings">
456
<annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="MapStringString"/>
457
<arg type="a{ss}" name="settings" direction="in">
461
<method name="getHistory" tp:name-for-bindings="getHistory">
462
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorMapStringString"/>
463
<!-- Return a List of type Dict<string, string> >...a List of Dicts -->
464
<arg type="aa{ss}" name="entries" direction="out"/>
467
<method name="clearHistory" tp:name-for-bindings="clearHistory">
470
<signal name="accountsChanged" tp:name-for-bindings="accountsChanged">
473
<signal name="historyChanged" tp:name-for-bindings="historyChanged">
476
<signal name="registrationStateChanged" tp:name-for-bindings="registrationStateChanged">
477
<arg type="s" name="accountID"/>
478
<arg type="i" name="registration_state"/>
481
<signal name="stunStatusFailure" tp:name-for_bindings="stunStatusFailure">
482
<arg type="s" name="reason">
486
<signal name="stunStatusSuccess" tp:name-for_bindings="stunStatusSuccess">
487
<arg type="s" name="message">
491
<signal name="errorAlert" tp:name-for-bindings="errorAlert">
492
<arg type="i" name="code">
497
<method name="getSupportedTlsMethod" tp:name-for-bindings="getSupportedTlsMethod">
498
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
499
<arg type="as" name="list" direction="out">
503
<method name="getTlsSettingsDefault" tp:name-for-bindings="getTlsSettingsDefault">
504
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
505
<arg type="a{ss}" name="details" direction="out">
509
<method name="getTlsSettings" tp:name-for-bindings="getTlsSettings">
510
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
511
<arg type="a{ss}" name="details" direction="out">
515
<method name="setTlsSettings" tp:name-for-bindings="setTlsSettings">
516
<annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="MapStringString"/>
517
<arg type="a{ss}" name="details" direction="in">
521
<method name="getAddrFromInterfaceName" tp:name-for-bindings="getAddrFromInterfaceName">
522
<arg type="s" name="interface" direction="in">
524
<arg type="s" name="address" direction="out">
528
<method name="getAllIpInterface" tp:name-for-bindings="getAllIpInterface">
529
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
530
<arg type="as" name="list" direction="out">
534
<method name="getAllIpInterfaceByName" tp:name-for-bindings="getAllIpInterfaceByName">
535
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
536
<arg type="as" name="list" direction="out">
540
<method name="getShortcuts" tp:name-for-bindings="getShortcuts">
541
<annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
542
<arg type="a{ss}" name="shortcutsMap" direction="out">
546
<method name="setShortcuts" tp:name-for-bindings="setShortcuts">
547
<annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="MapStringString"/>
548
<arg type="a{ss}" name="shortcutsMap" direction="in">