blob: e9514aa0038d44a69afe8a5f7fef3e3e886f8d4b [file] [log] [blame]
simon06527b02022-10-01 15:01:47 -04001/**
2 * Account parameters
3 *
4 * See `jami-daemon/src/account_schema.h`
5 */
6export default interface AccountDetails {
7 // Common account parameters
8 'Account.type': string;
9 'Account.alias': string;
10 'Account.displayName': string;
11 'Account.mailbox': string;
12 'Account.enable': string;
13 'Account.autoAnswer': string;
14 'Account.sendReadReceipt': string;
15 'Account.rendezVous': string;
16 'Account.registrationExpire': string;
17 'Account.dtmfType': string;
18 'Account.ringtonePath': string;
19 'Account.ringtoneEnabled': string;
20 'Account.videoEnabled': string;
21 'Account.keepAliveEnabled': string;
22 'Account.presenceEnabled': string;
23 'Account.presencePublishSupported': string;
24 'Account.presenceSubscribeSupported': string;
25 'Account.presenceStatus': string;
26 'Account.presenceNote': string;
27
28 'Account.hostname': string;
29 'Account.username': string;
30 'Account.routeset': string;
31 'Account.allowIPAutoRewrite': string;
32 'Account.password': string;
33 'Account.realm': string;
34 'Account.useragent': string;
35 'Account.hasCustomUserAgent': string;
36 'Account.audioPortMin': string;
37 'Account.audioPortMax': string;
38 'Account.videoPortMin': string;
39 'Account.videoPortMax': string;
40
41 'Account.bindAddress': string;
42 'Account.localInterface': string;
43 'Account.publishedSameAsLocal': string;
44 'Account.localPort': string;
45 'Account.publishedPort': string;
46 'Account.publishedAddress': string;
47 'Account.upnpEnabled': string;
48 'Account.defaultModerators': string;
49 'Account.localModeratorsEnabled': string;
50 'Account.allModeratorEnabled': string;
51
52 // SIP specific parameters
53 'STUN.server': string;
54 'STUN.enable': string;
55 'TURN.server': string;
56 'TURN.enable': string;
57 'TURN.username': string;
58 'TURN.password': string;
59 'TURN.realm': string;
60
61 // SRTP specific parameters
62 'SRTP.enable': string;
63 'SRTP.keyExchange': string;
64 'SRTP.rtpFallback': string;
65
66 'TLS.listenerPort': string;
67 'TLS.enable': string;
68 'TLS.certificateListFile': string;
69 'TLS.certificateFile': string;
70 'TLS.privateKeyFile': string;
71 'TLS.password': string;
72 'TLS.method': string;
73 'TLS.ciphers': string;
74 'TLS.serverName': string;
75 'TLS.verifyServer': string;
76 'TLS.verifyClient': string;
77 'TLS.requireClientCertificate': string;
78 'TLS.negotiationTimeoutSec': string;
79
80 // DHT specific parameters
81 'DHT.port': string;
82 'DHT.PublicInCalls': string;
83
84 // Volatile parameters
85 'Account.registrationStatus': string;
86 'Account.registrationCode': string;
87 'Account.registrationDescription': string;
88 'Transport.statusCode': string;
89 'Transport.statusDescription': string;
90}
91
92/**
93 * Volatile properties
94 *
95 * See `jami-daemon/src/jami/account_const.h`
96 */
97export interface VolatileDetails {
98 'Account.active': string;
99 'Account.deviceAnnounced': string;
100 'Account.registeredName': string;
101}
102
103/**
104 * See `ConfProperties` in `jami-daemon/src/jami/account_const.h
105 */
106export interface AccountConfig {
107 id?: string;
108 type?: string;
109 alias?: string;
110 displayName?: string;
111 enable?: boolean;
112 mailbox?: string;
113 dtmfType?: string;
114 autoAnswer?: boolean;
115 sendReadReceipt?: string;
116 rendezVous?: boolean;
117 activeCallLimit?: string;
118 hostname?: string;
119 username?: string;
120 bindAddress?: string;
121 routeset?: string;
122 password?: string;
123 realm?: string;
124 localInterface?: string;
125 publishedSameAsLocal?: boolean;
126 localPort?: string;
127 publishedPort?: string;
128 publishedAddress?: string;
129 useragent?: string;
130 upnpEnabled?: boolean;
131 hasCustomUserAgent?: string;
132 allowCertFromHistory?: string;
133 allowCertFromContact?: string;
134 allowCertFromTrusted?: string;
135 archivePassword?: string;
136 archiveHasPassword?: string;
137 archivePath?: string;
138 archivePIN?: string;
139 deviceID?: string;
140 deviceName?: string;
141 proxyEnabled?: boolean;
142 proxyServer?: string;
143 proxyPushToken?: string;
144 keepAliveEnabled?: boolean;
145 peerDiscovery?: string;
146 accountDiscovery?: string;
147 accountPublish?: string;
148 managerUri?: string;
149 managerUsername?: string;
150 bootstrapListUrl?: string;
151 dhtProxyListUrl?: string;
152 defaultModerators?: string;
153 localModeratorsEnabled?: boolean;
154 allModeratorsEnabled?: boolean;
155 allowIPAutoRewrite?: string;
156
157 // Audio
158 audioPortMax?: string;
159 audioPortMin?: string;
160
161 // Video
162 videoEnabled?: boolean;
163 videoPortMax?: boolean;
164 videoPortMin?: string;
165
166 // Ringtone
167 ringtonePath?: string;
168 ringtoneEnabled?: boolean;
169}