17. A session border controller that provides context to data in a Session Initiation Protocol (SIP) message through a scripting-type programming language comprising: a processor; and a memory comprising machine readable instructions that when executed by the processor, cause the system to: provide one or more pre-defined contexts by a scripting-type computer programming language, wherein the contexts are each configured to allow a rule to use a pointer to a particular portion of a SIP message, wherein each context is a pointer that references the memory location of the respective portion of data that it is associated with; provide one or more rules of an ingress profile and one or more rules of an egress profile, wherein the one or more rules of the ingress profile are different than the one or more rules of the egress profile, and wherein each of the one or more rules includes at least one trigger and at least one action; receive a SIP message flow, wherein the SIP message flow includes one or more SIP messages that are received in series; parse each SIP message as it is received in order to identify whether a particular SIP message activates a trigger included in a particular rule; for each SIP message that triggers the particular rule of either the ingress profile or the egress profile, apply a context overlay to the SIP message such that each context included in the particular rule references its associated portion of the SIP message; and using the one or more contexts, apply, to each SIP message, the one or more rules of the ingress profile or the one or more rules of the egress profile for which the at least one action is triggered.
18. The session border controller of claim 17 , wherein the machine readable instructions when executed by the processor further cause the system to provide a user interface configured to receive rules entered by a user, the rules including triggers and actions to be applied to SIP messages and contexts for referencing particular portions of the SIP messages.