ZDK
ISIPConfig.h
1 #ifndef __ISIPCONFIG__
2 #define __ISIPCONFIG__
3 
4 #include "IZHandle.h"
5 
6 #include "Types/SharedPointerTypes.h"
7 
8 #include "Types/TransportType.h"
9 #include "Types/RPortType.h"
10 #include "Types/DTMFTypeSIP.h"
11 #include "Types/RTCPFeedbackType.h"
12 
13 namespace ZDK
14 {
15 
16 //# @abi(all) documentation
19 class ISIPConfig : public virtual ZDK::IZHandle
20 {
21 public:
22  //# @abi(all) documentation
30  //# @abi(jni|obj_c) property
31  virtual ZDK::Shared::String Domain() const = 0;
32 
33  //# @abi(all) documentation
41  //# @abi(jni|obj_c) property
42  virtual void Domain(ZDK::Shared::String value) = 0;
43 
44  //# @abi(all) documentation
55  //# @abi(jni|obj_c) property
56  virtual bool UseOutboundProxy() const = 0;
57 
58  //# @abi(all) documentation
69  //# @abi(jni|obj_c) property
70  virtual void UseOutboundProxy(bool value) = 0;
71 
72  //# @abi(all) documentation
82  //# @abi(jni|obj_c) property
83  //# @abi(jni|obj_c) @param(return) nullable
84  virtual ZDK::Shared::String OutboundProxy() const = 0;
85 
86  //# @abi(all) documentation
96  //# @abi(jni|obj_c) property
97  //# @abi(jni|obj_c) @param(value) nullable
98  virtual void OutboundProxy(ZDK::Shared::String value) = 0;
99 
100  //# @abi(all) documentation
123  //# @abi(jni|obj_c) property
124  //# @abi(jni|obj_c) @param(value) nullable
125  virtual ZDK::Shared::String SipInstance() const = 0;
126 
127  //# @abi(all) documentation
150  //# @abi(jni|obj_c) property
151  //# @abi(jni|obj_c) @param(value) nullable
152  virtual void SipInstance(ZDK::Shared::String value) = 0;
153 
154  //# @abi(all) documentation
161  //# @abi(jni|obj_c) property
162  virtual ZDK::TransportType Transport() const = 0;
163 
164  //# @abi(all) documentation
171  //# @abi(jni|obj_c) property
172  virtual void Transport(ZDK::TransportType value) = 0;
173 
174  //# @abi(all) documentation
184  //# @abi(jni|obj_c) property
185  //# @abi(jni|obj_c) @param(return) nullable
186  virtual ZDK::Shared::String AuthUsername() const = 0;
187 
188  //# @abi(all) documentation
198  //# @abi(jni|obj_c) property
199  //# @abi(jni|obj_c) @param(value) nullable
200  virtual void AuthUsername(ZDK::Shared::String value) = 0;
201 
202  //# @abi(all) documentation
207  //# @abi(jni|obj_c) property
208  //# @abi(jni|obj_c) @param(return) nullable
209  virtual ZDK::Shared::String CallerID() const = 0;
210 
211  //# @abi(all) documentation
216  //# @abi(jni|obj_c) property
217  //# @abi(jni|obj_c) @param(value) nullable
218  virtual void CallerID(ZDK::Shared::String value) = 0;
219 
220  //# @abi(all) documentation
240  //# @abi(jni|obj_c) property
241  virtual ZDK::RPortType RPort() const = 0;
242 
243  //# @abi(all) documentation
264  //# @abi(jni|obj_c) property
265  virtual void RPort(ZDK::RPortType value) = 0;
266 
267  //# @abi(all) documentation
274  //# @abi(jni|obj_c) property
275  virtual bool EnableSRTP() const = 0;
276 
277  //# @abi(all) documentation
284  //# @abi(jni|obj_c) property
285  virtual void EnableSRTP(bool value) = 0;
286 
287  //# @abi(all) documentation
294  //# @abi(jni|obj_c) property
295  virtual ZDK::DTMFTypeSIP DTMF() const = 0;
296 
297  //# @abi(all) documentation
304  //# @abi(jni|obj_c) property
305  virtual void DTMF(ZDK::DTMFTypeSIP value) = 0;
306 
307  //# @abi(all) documentation
316  //# @abi(jni|obj_c) property
317  virtual bool EnablePushNotifications() const = 0;
318 
319  //# @abi(all) documentation
328  //# @abi(jni|obj_c) property
329  virtual void EnablePushNotifications(bool value) = 0;
330 
331  //# @abi(all) documentation
340  //# @abi(jni|obj_c) property
341  virtual bool EnablePushRtpMediaProxy() const = 0;
342 
343  //# @abi(all) documentation
352  //# @abi(jni|obj_c) property
353  virtual void EnablePushRtpMediaProxy(bool value) = 0;
354 
355  //# @abi(all) documentation
364  //# @abi(jni|obj_c) property
365  virtual ZDK::TransportType PushTransport() const = 0;
366 
367  //# @abi(all) documentation
376  //# @abi(jni|obj_c) property
377  virtual void PushTransport(ZDK::TransportType value) = 0;
378 
379  //# @abi(all) documentation
389  //# @abi(jni|obj_c) property
390  virtual bool EnablePreconditions() const = 0;
391 
392  //# @abi(all) documentation
402  //# @abi(jni|obj_c) property
403  virtual void EnablePreconditions(bool value) = 0;
404 
405  //# @abi(all) documentation
412  //# @abi(jni|obj_c) property
413  virtual bool EnableVideoFMTP() const = 0;
414 
415  //# @abi(all) documentation
427  //# @abi(jni|obj_c) property
428  virtual void EnableVideoFMTP(bool value) = 0;
429 
430  //# @abi(all) documentation
447  //# @abi(jni|obj_c) property
448  virtual ZDK::RTCPFeedbackType RTCPFeedback() const = 0;
449 
450  //# @abi(all) documentation
467  //# @abi(jni|obj_c) property
468  virtual void RTCPFeedback(ZDK::RTCPFeedbackType value) = 0;
469 
470  //# @abi(all) documentation
477  //# @abi(jni|obj_c) property
478  //# @abi(jni|obj_c) @param(return) nullable
479  virtual ZDK::Shared::StunConfig Stun() = 0;
480 
481  //# @abi(all) documentation
488  //# @abi(jni|obj_c) property
489  //# @abi(jni|obj_c) @param(value) nullable
490  virtual void Stun(ZDK::Shared::StunConfig value) = 0;
491 
492  //# @abi(all) documentation
499  //# @abi(jni|obj_c) property
500  //# @abi(jni|obj_c) @param(return) nullable
501  virtual ZDK::Shared::MSRPConfig MSRP() = 0;
502 
503  //# @abi(all) documentation
510  //# @abi(jni|obj_c) property
511  //# @abi(jni|obj_c) @param(value) nullable
512  virtual void MSRP(ZDK::Shared::MSRPConfig value) = 0;
513 
514  //# @abi(all) documentation
521  //# @abi(jni|obj_c) property
522  //# @abi(jni|obj_c) @param(return) nullable
523  virtual ZDK::Shared::ZRTPConfig ZRTP() = 0;
524 
525  //# @abi(all) documentation
532  //# @abi(jni|obj_c) property
533  //# @abi(jni|obj_c) @param(value) nullable
534  virtual void ZRTP(ZDK::Shared::ZRTPConfig value) = 0;
535 
536  //# @abi(all) documentation
545  //# @abi(jni|obj_c) property
546  virtual bool EnablePrivacy() const = 0;
547 
548  //# @abi(all) documentation
557  //# @abi(jni|obj_c) property
558  virtual void EnablePrivacy(bool value) = 0;
559 
560  //# @abi(all) documentation
569  //# @abi(jni|obj_c) property
570  virtual int KeepAlive() const = 0;
571 
572  //# @abi(all) documentation
587  //# @abi(jni|obj_c) property
588  virtual void KeepAlive(int value) = 0;
589 
590  //# @abi(all) documentation
599  virtual bool IsEqual(ZDK::Shared::SIPConfig comp) = 0;
600 };
601 
602 } //namespace ZDK
603 
604 #endif //__ISIPCONFIG__
virtual ZDK::RTCPFeedbackType RTCPFeedback() const =0
Gets the RTCP Feedback support.
SIP specific account configuration.
Definition: ISIPConfig.h:19
virtual bool EnableSRTP() const =0
Gets the use of user's SRTP.
Definition: IZHandle.h:12
virtual ZDK::RPortType RPort() const =0
Gets the use of rport for SIP users.
virtual bool UseOutboundProxy() const =0
Gets the use of SIP Outbound as described in RFC 5626.
virtual ZDK::DTMFTypeSIP DTMF() const =0
Gets the selected DTMF band for the user.
virtual ZDK::TransportType PushTransport() const =0
Gets the selected transport being used to reach the push proxy.
virtual bool EnablePushRtpMediaProxy() const =0
Gets the use of the push notifications proxy also acting as media proxy.
virtual ZDK::Shared::String Domain() const =0
Gets the user domain.
virtual bool EnableVideoFMTP() const =0
Gets video FMTP support.
virtual ZDK::Shared::String CallerID() const =0
Gets the Caller ID used as display name part in the address of record.
virtual ZDK::Shared::StunConfig Stun()=0
Gets the STUN configuration.
virtual bool EnablePushNotifications() const =0
Gets the use of push notifications.
virtual bool IsEqual(ZDK::Shared::SIPConfig comp)=0
Compares the current configuration with the given one.
virtual ZDK::Shared::MSRPConfig MSRP()=0
Gets the MSRP configuration.
virtual ZDK::Shared::String SipInstance() const =0
Gets the configured RFC2141 URN for SIP registrations.
virtual ZDK::Shared::String OutboundProxy() const =0
Gets the configured SIP Outbound Proxy to be used.
virtual ZDK::Shared::ZRTPConfig ZRTP()=0
Gets the ZRTP configuration.
virtual ZDK::TransportType Transport() const =0
Gets the selected SIP transport.
virtual bool EnablePrivacy() const =0
Gets the use of Privacy mechanism as described in RFC 3323.
Definition: IAccountConfig.h:10
virtual int KeepAlive() const =0
Gets the keepalive interval for SIP accounts.
virtual ZDK::Shared::String AuthUsername() const =0
Gets the user name used for SIP authentication.
virtual bool EnablePreconditions() const =0
Gets the use of call's preconditions framework as described in RFC 3312.