예제 #1
0
        public void InitPjsua(UaConfig uaCfg, LoggingConfig logCfg, MediaConfig mediaCfg)
        {
            var ua_cfg = _mapper.Map(uaCfg, _uaCfg);
            var l_cfg = _mapper.Map(logCfg, _lCfg);
            
            ua_cfg.cb.on_reg_state = OnRegState;
            
            ua_cfg.cb.on_call_state = OnCallState;
            ua_cfg.cb.on_call_media_state = OnCallMediaState;
            ua_cfg.cb.on_incoming_call = OnIncomingCall;
            ua_cfg.cb.on_stream_destroyed = OnStreamDestroyed;
            ua_cfg.cb.on_dtmf_digit = OnDtmfDigit;
            ua_cfg.cb.on_call_transfer_request = OnCallTransfer;
            ua_cfg.cb.on_call_transfer_status = OnCallTransferStatus;
            ua_cfg.cb.on_call_redirected = OnCallRedirect;
            
            ua_cfg.cb.on_nat_detect = OnNatDetect;

            ua_cfg.cb.on_buddy_state = OnBuddyState;
            ua_cfg.cb.on_incoming_subscribe = OnIncomingSubscribe;
            ua_cfg.cb.on_pager = OnPager;
            ua_cfg.cb.on_pager_status = OnPagerStatus;
            ua_cfg.cb.on_typing = OnTyping;

            l_cfg.AnonymousMember1 = OnLog;

            //etc;
            _mCfg = new pjsua_media_config();
            PJSUA_DLL.Media.pjsua_media_config_default(_mCfg);
            Helper.GuardError(PJSUA_DLL.Basic.pjsua_init(ua_cfg, l_cfg, _mapper.Map(mediaCfg, _mCfg)));
        }
예제 #2
0
        public DefaultSipUserAgent(IBasicApiProvider basicApi, IEventsProvider eventsProvider, LoggingConfig loggingConfig, 
            IContainer container)
        {
            Helper.GuardNotNull(basicApi);
            Helper.GuardNotNull(eventsProvider);
            Helper.GuardNotNull(loggingConfig);
            Helper.GuardNotNull(container);
            _basicApi = basicApi;
            _loggingConfig = loggingConfig;
            _container = container;
            _loggingConfig = loggingConfig;

            eventsProvider.Subscribe<LogRequested>(OnLog);
        }
예제 #3
0
 public LoggingConfig Map(pjsua_logging_config cfg, LoggingConfig config)
 {
     return _engine.Map(cfg, config);
 }
예제 #4
0
 public pjsua_logging_config Map(LoggingConfig config, pjsua_logging_config cfg)
 {
     return _engine.Map(config, cfg);
 }
예제 #5
0
 public void InitPjsua(UaConfig uaCfg, LoggingConfig logCfg, MediaConfig mediaCfg)
 {
 }