public DefaultSipClient(SipClientAccount account) { if (account == null) { throw new ArgumentNullException("Invalid account."); } Account = account; TransactionLayer = new TransactionAgent(Account.RegistrarUri); }
/// <summary> /// Initialize new sip dialogue. /// </summary> /// <param name="initRequestMethod"></param> /// <param name="requestUri"></param> /// <param name="from"></param> /// <param name="transactionLayer"></param> public SipDialogue(string initRequestMethod, SipUri requestUri, Identification from, ISipTransactionLayer transactionLayer) : this() { From = from; To = new Identification(from.Uri, null); DestinationUri = requestUri; _transactionLayer = transactionLayer; _transactionLayer.TransactionComplete += PrivateTransactionAgent_TransactionComplete; DialogueId = DialogueHelpers.GenerateCallId(); _responseHandler = new DefaultResponseHandler(); _initRequest = initRequestMethod; // Temporary solution, must be handled by "dialogue flow" // TODO create default action with init request method }