Click here to Skip to main content
15,894,405 members
Articles / Programming Languages / C#

SIP Stack with SIP Proxy - (VOIP)

Rate me:
Please Sign up or sign in to vote.
4.86/5 (45 votes)
11 Jun 2007CPOL2 min read 1.6M   28.1K   162  
C# implementation of SIP
using System;
using System.Net;

namespace LumiSoft.Net
{
	/// <summary>
	/// Provides data for the ValidateIPAddress event for servers.
	/// </summary>
	public class ValidateIP_EventArgs
	{
		private IPEndPoint m_pLocalEndPoint  = null;
		private IPEndPoint m_pRemoteEndPoint = null;
		private bool       m_Validated       = true;
		private object     m_SessionTag      = null;
		private string     m_ErrorText       = "";

		/// <summary>
		/// Default constructor.
		/// </summary>
		/// <param name="localEndPoint">Server IP.</param>
		/// <param name="remoteEndPoint">Connected client IP.</param>
		public ValidateIP_EventArgs(IPEndPoint localEndPoint,IPEndPoint remoteEndPoint)
		{
			m_pLocalEndPoint  = localEndPoint;
			m_pRemoteEndPoint = remoteEndPoint;
		}

		#region Properties Implementation

		/// <summary>
		/// IP address of computer, which is sending mail to here.
		/// </summary>
		public string ConnectedIP
		{
			get{ return m_pRemoteEndPoint.Address.ToString(); }
		}

		/// <summary>
		/// Gets local endpoint.
		/// </summary>
		public IPEndPoint LocalEndPoint
		{
			get{ return m_pLocalEndPoint; }
		}

		/// <summary>
		/// Gets remote endpoint.
		/// </summary>
		public IPEndPoint RemoteEndPoint
		{
			get{ return m_pRemoteEndPoint; }
		}


		/// <summary>
		/// Gets or sets if IP is allowed access.
		/// </summary>
		public bool Validated
		{
			get{ return m_Validated; }

			set{ m_Validated = value; }
		}

		/// <summary>
		/// Gets or sets user data what is stored to session.Tag property.
		/// </summary>
		public object SessionTag
		{
			get{ return m_SessionTag; }

			set{ m_SessionTag = value; }
		}

		/// <summary>
		/// Gets or sets error text what is sent to connected socket. NOTE: This is only used if Validated = false.
		/// </summary>
		public string ErrorText
		{
			get{ return m_ErrorText; }

			set{ m_ErrorText = value; }
		}

		#endregion

	}
}

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Estonia Estonia
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions