@expertflow/sdk-for-customer-facing-channels
Version:
NPM Package to install SDK for Chat, WebRTC Audio, and Video Calls that will land on Cisco Contact Center Agents handling calls using Cisco Jabber or similar in any node-based application.
1,497 lines • 490 kB
JavaScript
/*! For license information please see sip.min.js.LICENSE.txt */
!(function (e, t) {
"object" == typeof exports && "object" == typeof module
? (module.exports = t())
: "function" == typeof define && define.amd
? define([], t)
: "object" == typeof exports
? (exports.SIP = t())
: (e.SIP = t());
})(this, () =>
(() => {
"use strict";
var e = {
d: (t, s) => {
for (var i in s)
e.o(s, i) &&
!e.o(t, i) &&
Object.defineProperty(t, i, { enumerable: !0, get: s[i] });
},
o: (e, t) => Object.prototype.hasOwnProperty.call(e, t),
r: (e) => {
"undefined" != typeof Symbol &&
Symbol.toStringTag &&
Object.defineProperty(e, Symbol.toStringTag, { value: "Module" }),
Object.defineProperty(e, "__esModule", { value: !0 });
},
},
t = {};
e.r(t),
e.d(t, {
Ack: () => l,
Bye: () => g,
Cancel: () => u,
ContentTypeUnsupportedError: () => o,
Core: () => s,
EmitterImpl: () => p,
Grammar: () => y,
Info: () => f,
Invitation: () => Q,
Inviter: () => ee,
Message: () => W,
Messager: () => te,
NameAddrHeader: () => v,
Notification: () => K,
Parameters: () => m,
Publisher: () => le,
PublisherState: () => se,
Referral: () => Y,
Registerer: () => ge,
RegistererState: () => ie,
RequestPendingError: () => a,
SIPExtension: () => J,
Session: () => z,
SessionDescriptionHandlerError: () => c,
SessionState: () => Z,
SessionTerminatedError: () => h,
StateTransitionError: () => d,
Subscriber: () => pe,
Subscription: () => ue,
SubscriptionState: () => ne,
TransportState: () => oe,
URI: () => w,
UserAgent: () => dt,
UserAgentRegisteredOptionTags: () => X,
UserAgentState: () => ae,
Web: () => i,
equivalentURI: () => b,
name: () => At,
version: () => Ct,
});
var s = {};
e.r(s),
e.d(s, {
ByeUserAgentClient: () => Pe,
ByeUserAgentServer: () => _e,
C: () => G,
CancelUserAgentClient: () => lt,
ClientTransaction: () => Ie,
Dialog: () => Ae,
DigestAuthentication: () => we,
Exception: () => n,
Grammar: () => y,
IncomingMessage: () => H,
IncomingRequestMessage: () => P,
IncomingResponseMessage: () => x,
InfoUserAgentClient: () => qe,
InfoUserAgentServer: () => Me,
InviteClientTransaction: () => De,
InviteServerTransaction: () => $e,
InviteUserAgentClient: () => Ye,
InviteUserAgentServer: () => Ze,
Levels: () => ce,
Logger: () => be,
LoggerFactory: () => Te,
MessageUserAgentClient: () => Ne,
MessageUserAgentServer: () => Oe,
NameAddrHeader: () => v,
NonInviteClientTransaction: () => Ce,
NonInviteServerTransaction: () => xe,
NotifyUserAgentClient: () => Ue,
NotifyUserAgentServer: () => je,
OutgoingRequestMessage: () => k,
Parameters: () => m,
Parser: () => he,
PrackUserAgentClient: () => Fe,
PrackUserAgentServer: () => Le,
PublishUserAgentClient: () => Je,
ReInviteUserAgentClient: () => Be,
ReInviteUserAgentServer: () => Ge,
ReSubscribeUserAgentClient: () => Qe,
ReSubscribeUserAgentServer: () => gt,
ReferUserAgentClient: () => Ve,
ReferUserAgentServer: () => We,
RegisterUserAgentClient: () => ze,
RegisterUserAgentServer: () => Xe,
ServerTransaction: () => Ee,
SessionDialog: () => Ke,
SessionState: () => O,
SignalingState: () => U,
SubscribeUserAgentClient: () => tt,
SubscribeUserAgentServer: () => st,
SubscriptionDialog: () => et,
SubscriptionState: () => re,
Timers: () => L,
Transaction: () => ye,
TransactionState: () => de,
TransactionStateError: () => B,
TransportError: () => Re,
URI: () => w,
UserAgentClient: () => He,
UserAgentCore: () => rt,
UserAgentServer: () => ke,
constructOutgoingResponse: () => Se,
equivalentURI: () => b,
fromBodyLegacy: () => q,
getBody: () => N,
isBody: () => M,
});
var i = {};
e.r(i),
e.d(i, {
SessionDescriptionHandler: () => at,
SessionManager: () => $t,
SimpleUser: () => It,
Transport: () => ht,
WebAudioSessionDescriptionHandler: () => yt,
addMidLines: () => Tt,
cleanJitsiSdpImageattr: () => mt,
defaultManagedSessionFactory: () => Et,
defaultMediaStreamFactory: () => nt,
defaultPeerConnectionConfiguration: () => ot,
defaultSessionDescriptionHandlerFactory: () => ct,
holdModifier: () => St,
startLocalConference: () => Rt,
stripG722: () => vt,
stripRtpPayload: () => wt,
stripTcpCandidates: () => pt,
stripTelephoneEvent: () => ft,
stripVideo: () => bt,
});
const r = "0.21.2";
class n extends Error {
constructor(e) {
super(e), Object.setPrototypeOf(this, new.target.prototype);
}
}
class o extends n {
constructor(e) {
super(e || "Unsupported content type.");
}
}
class a extends n {
constructor(e) {
super(e || "Request pending.");
}
}
class c extends n {
constructor(e) {
super(e || "Unspecified session description handler error.");
}
}
class h extends n {
constructor() {
super("The session has terminated.");
}
}
class d extends n {
constructor(e) {
super(e || "An error occurred during state transition.");
}
}
class l {
constructor(e) {
this.incomingAckRequest = e;
}
get request() {
return this.incomingAckRequest.message;
}
}
class g {
constructor(e) {
this.incomingByeRequest = e;
}
get request() {
return this.incomingByeRequest.message;
}
accept(e) {
return this.incomingByeRequest.accept(e), Promise.resolve();
}
reject(e) {
return this.incomingByeRequest.reject(e), Promise.resolve();
}
}
class u {
constructor(e) {
this.incomingCancelRequest = e;
}
get request() {
return this.incomingCancelRequest;
}
}
class p {
constructor() {
this.listeners = new Array();
}
addListener(e, t) {
const s = (t) => {
this.removeListener(s), e(t);
};
!0 === (null == t ? void 0 : t.once)
? this.listeners.push(s)
: this.listeners.push(e);
}
emit(e) {
this.listeners.slice().forEach((t) => t(e));
}
removeAllListeners() {
this.listeners = [];
}
removeListener(e) {
this.listeners = this.listeners.filter((t) => t !== e);
}
on(e) {
return this.addListener(e);
}
off(e) {
return this.removeListener(e);
}
once(e) {
return this.addListener(e, { once: !0 });
}
}
class f {
constructor(e) {
this.incomingInfoRequest = e;
}
get request() {
return this.incomingInfoRequest.message;
}
accept(e) {
return this.incomingInfoRequest.accept(e), Promise.resolve();
}
reject(e) {
return this.incomingInfoRequest.reject(e), Promise.resolve();
}
}
class m {
constructor(e) {
this.parameters = {};
for (const t in e) e.hasOwnProperty(t) && this.setParam(t, e[t]);
}
setParam(e, t) {
e &&
(this.parameters[e.toLowerCase()] = null == t ? null : t.toString());
}
getParam(e) {
if (e) return this.parameters[e.toLowerCase()];
}
hasParam(e) {
return !(!e || void 0 === this.parameters[e.toLowerCase()]);
}
deleteParam(e) {
if (((e = e.toLowerCase()), this.hasParam(e))) {
const t = this.parameters[e];
return delete this.parameters[e], t;
}
}
clearParams() {
this.parameters = {};
}
}
class v extends m {
constructor(e, t, s) {
super(s), (this.uri = e), (this._displayName = t);
}
get friendlyName() {
return this.displayName || this.uri.aor;
}
get displayName() {
return this._displayName;
}
set displayName(e) {
this._displayName = e;
}
clone() {
return new v(
this.uri.clone(),
this._displayName,
JSON.parse(JSON.stringify(this.parameters)),
);
}
toString() {
let e =
this.displayName || "0" === this.displayName
? '"' + this.displayName + '" '
: "";
e += "<" + this.uri.toString() + ">";
for (const t in this.parameters)
this.parameters.hasOwnProperty(t) &&
((e += ";" + t),
null !== this.parameters[t] && (e += "=" + this.parameters[t]));
return e;
}
}
class w extends m {
constructor(e = "sip", t, s, i, r, n) {
if ((super(r || {}), (this.headers = {}), !s))
throw new TypeError('missing or invalid "host" parameter');
for (const e in n) n.hasOwnProperty(e) && this.setHeader(e, n[e]);
(this.raw = { scheme: e, user: t, host: s, port: i }),
(this.normal = {
scheme: e.toLowerCase(),
user: t,
host: s.toLowerCase(),
port: i,
});
}
get scheme() {
return this.normal.scheme;
}
set scheme(e) {
(this.raw.scheme = e), (this.normal.scheme = e.toLowerCase());
}
get user() {
return this.normal.user;
}
set user(e) {
this.normal.user = this.raw.user = e;
}
get host() {
return this.normal.host;
}
set host(e) {
(this.raw.host = e), (this.normal.host = e.toLowerCase());
}
get aor() {
return this.normal.user + "@" + this.normal.host;
}
get port() {
return this.normal.port;
}
set port(e) {
this.normal.port = this.raw.port = e;
}
setHeader(e, t) {
this.headers[this.headerize(e)] = t instanceof Array ? t : [t];
}
getHeader(e) {
if (e) return this.headers[this.headerize(e)];
}
hasHeader(e) {
return !!e && !!this.headers.hasOwnProperty(this.headerize(e));
}
deleteHeader(e) {
if (((e = this.headerize(e)), this.headers.hasOwnProperty(e))) {
const t = this.headers[e];
return delete this.headers[e], t;
}
}
clearHeaders() {
this.headers = {};
}
clone() {
return new w(
this._raw.scheme,
this._raw.user || "",
this._raw.host,
this._raw.port,
JSON.parse(JSON.stringify(this.parameters)),
JSON.parse(JSON.stringify(this.headers)),
);
}
toRaw() {
return this._toString(this._raw);
}
toString() {
return this._toString(this._normal);
}
get _normal() {
return this.normal;
}
get _raw() {
return this.raw;
}
_toString(e) {
let t = e.scheme + ":";
e.scheme.toLowerCase().match("^sips?$") || (t += "//"),
e.user && (t += this.escapeUser(e.user) + "@"),
(t += e.host),
(e.port || 0 === e.port) && (t += ":" + e.port);
for (const e in this.parameters)
this.parameters.hasOwnProperty(e) &&
((t += ";" + e),
null !== this.parameters[e] && (t += "=" + this.parameters[e]));
const s = [];
for (const e in this.headers)
if (this.headers.hasOwnProperty(e))
for (const t in this.headers[e])
this.headers[e].hasOwnProperty(t) &&
s.push(e + "=" + this.headers[e][t]);
return s.length > 0 && (t += "?" + s.join("&")), t;
}
escapeUser(e) {
let t;
try {
t = decodeURIComponent(e);
} catch (e) {
throw e;
}
return encodeURIComponent(t)
.replace(/%3A/gi, ":")
.replace(/%2B/gi, "+")
.replace(/%3F/gi, "?")
.replace(/%2F/gi, "/");
}
headerize(e) {
const t = {
"Call-Id": "Call-ID",
Cseq: "CSeq",
"Min-Se": "Min-SE",
Rack: "RAck",
Rseq: "RSeq",
"Www-Authenticate": "WWW-Authenticate",
},
s = e.toLowerCase().replace(/_/g, "-").split("-"),
i = s.length;
let r = "";
for (let e = 0; e < i; e++)
0 !== e && (r += "-"),
(r += s[e].charAt(0).toUpperCase() + s[e].substring(1));
return t[r] && (r = t[r]), r;
}
}
function b(e, t) {
if (e.scheme !== t.scheme) return !1;
if (e.user !== t.user || e.host !== t.host || e.port !== t.port)
return !1;
if (
!(function (e, t) {
const s = Object.keys(e.parameters),
i = Object.keys(t.parameters);
return (
!!s
.filter((e) => i.includes(e))
.every((s) => e.parameters[s] === t.parameters[s]) &&
!!["user", "ttl", "method", "transport"].every(
(s) =>
(e.hasParam(s) && t.hasParam(s)) ||
(!e.hasParam(s) && !t.hasParam(s)),
) &&
!!["maddr"].every(
(s) =>
(e.hasParam(s) && t.hasParam(s)) ||
(!e.hasParam(s) && !t.hasParam(s)),
)
);
})(e, t)
)
return !1;
const s = Object.keys(e.headers),
i = Object.keys(t.headers);
if (0 !== s.length || 0 !== i.length) {
if (s.length !== i.length) return !1;
const r = s.filter((e) => i.includes(e));
if (r.length !== i.length) return !1;
if (
!r.every(
(s) =>
e.headers[s].length &&
t.headers[s].length &&
e.headers[s][0] === t.headers[s][0],
)
)
return !1;
}
return !0;
}
function T(e, t, s) {
return (
(s = s || " "),
e.length > t ? e : ((t -= e.length), e + (s += s.repeat(t)).slice(0, t))
);
}
class S extends Error {
constructor(e, t, s, i) {
super(),
(this.message = e),
(this.expected = t),
(this.found = s),
(this.location = i),
(this.name = "SyntaxError"),
"function" == typeof Object.setPrototypeOf
? Object.setPrototypeOf(this, S.prototype)
: (this.__proto__ = S.prototype),
"function" == typeof Error.captureStackTrace &&
Error.captureStackTrace(this, S);
}
static buildMessage(e, t) {
function s(e) {
return e.charCodeAt(0).toString(16).toUpperCase();
}
function i(e) {
return e
.replace(/\\/g, "\\\\")
.replace(/"/g, '\\"')
.replace(/\0/g, "\\0")
.replace(/\t/g, "\\t")
.replace(/\n/g, "\\n")
.replace(/\r/g, "\\r")
.replace(/[\x00-\x0F]/g, (e) => "\\x0" + s(e))
.replace(/[\x10-\x1F\x7F-\x9F]/g, (e) => "\\x" + s(e));
}
function r(e) {
return e
.replace(/\\/g, "\\\\")
.replace(/\]/g, "\\]")
.replace(/\^/g, "\\^")
.replace(/-/g, "\\-")
.replace(/\0/g, "\\0")
.replace(/\t/g, "\\t")
.replace(/\n/g, "\\n")
.replace(/\r/g, "\\r")
.replace(/[\x00-\x0F]/g, (e) => "\\x0" + s(e))
.replace(/[\x10-\x1F\x7F-\x9F]/g, (e) => "\\x" + s(e));
}
function n(e) {
switch (e.type) {
case "literal":
return '"' + i(e.text) + '"';
case "class":
const t = e.parts.map((e) =>
Array.isArray(e) ? r(e[0]) + "-" + r(e[1]) : r(e),
);
return "[" + (e.inverted ? "^" : "") + t + "]";
case "any":
return "any character";
case "end":
return "end of input";
case "other":
return e.description;
}
}
return (
"Expected " +
(function (e) {
const t = e.map(n);
let s, i;
if ((t.sort(), t.length > 0)) {
for (s = 1, i = 1; s < t.length; s++)
t[s - 1] !== t[s] && ((t[i] = t[s]), i++);
t.length = i;
}
switch (t.length) {
case 1:
return t[0];
case 2:
return t[0] + " or " + t[1];
default:
return t.slice(0, -1).join(", ") + ", or " + t[t.length - 1];
}
})(e) +
" but " +
(((o = t) ? '"' + i(o) + '"' : "end of input") + " found.")
);
var o;
}
format(e) {
let t = "Error: " + this.message;
if (this.location) {
let s,
i = null;
for (s = 0; s < e.length; s++)
if (e[s].source === this.location.source) {
i = e[s].text.split(/\r\n|\n|\r/g);
break;
}
let r = this.location.start,
n = this.location.source + ":" + r.line + ":" + r.column;
if (i) {
let e = this.location.end,
s = T("", r.line.toString().length, " "),
o = i[r.line - 1],
a = r.line === e.line ? e.column : o.length + 1;
t +=
"\n --\x3e " +
n +
"\n" +
s +
" |\n" +
r.line +
" | " +
o +
"\n" +
s +
" | " +
T("", r.column - 1, " ") +
T("", a - r.column, "^");
} else t += "\n at " + n;
}
return t;
}
}
const R = function (e, t) {
const s = {},
i = (t = void 0 !== t ? t : {}).grammarSource,
r = {
Contact: 119,
Name_Addr_Header: 156,
Record_Route: 176,
Request_Response: 81,
SIP_URI: 45,
Subscription_State: 186,
Supported: 191,
Require: 182,
Via: 194,
absoluteURI: 84,
Call_ID: 118,
Content_Disposition: 130,
Content_Length: 135,
Content_Type: 136,
CSeq: 146,
displayName: 122,
Event: 149,
From: 151,
host: 52,
Max_Forwards: 154,
Min_SE: 213,
Proxy_Authenticate: 157,
quoted_string: 40,
Refer_To: 178,
Replaces: 179,
Session_Expires: 210,
stun_URI: 217,
To: 192,
turn_URI: 223,
uuid: 226,
WWW_Authenticate: 209,
challenge: 158,
sipfrag: 230,
Referred_By: 231,
};
let n = 119;
const o = [
"\r\n",
b("\r\n", !1),
/^[0-9]/,
T([["0", "9"]], !1, !1),
/^[a-zA-Z]/,
T(
[
["a", "z"],
["A", "Z"],
],
!1,
!1,
),
/^[0-9a-fA-F]/,
T(
[
["0", "9"],
["a", "f"],
["A", "F"],
],
!1,
!1,
),
/^[\0-\xFF]/,
T([["\0", "\xff"]], !1, !1),
/^["]/,
T(['"'], !1, !1),
" ",
b(" ", !1),
"\t",
b("\t", !1),
/^[a-zA-Z0-9]/,
T(
[
["a", "z"],
["A", "Z"],
["0", "9"],
],
!1,
!1,
),
";",
b(";", !1),
"/",
b("/", !1),
"?",
b("?", !1),
":",
b(":", !1),
"@",
b("@", !1),
"&",
b("&", !1),
"=",
b("=", !1),
"+",
b("+", !1),
"$",
b("$", !1),
",",
b(",", !1),
"-",
b("-", !1),
"_",
b("_", !1),
".",
b(".", !1),
"!",
b("!", !1),
"~",
b("~", !1),
"*",
b("*", !1),
"'",
b("'", !1),
"(",
b("(", !1),
")",
b(")", !1),
"%",
b("%", !1),
function () {
return " ";
},
function () {
return ":";
},
/^[!-~]/,
T([["!", "~"]], !1, !1),
/^[\x80-\uFFFF]/,
T([["\x80", "\uffff"]], !1, !1),
/^[\x80-\xBF]/,
T([["\x80", "\xbf"]], !1, !1),
/^[a-f]/,
T([["a", "f"]], !1, !1),
"`",
b("`", !1),
"<",
b("<", !1),
">",
b(">", !1),
"\\",
b("\\", !1),
"[",
b("[", !1),
"]",
b("]", !1),
"{",
b("{", !1),
"}",
b("}", !1),
function () {
return "*";
},
function () {
return "/";
},
function () {
return "=";
},
function () {
return "(";
},
function () {
return ")";
},
function () {
return ">";
},
function () {
return "<";
},
function () {
return ",";
},
function () {
return ";";
},
function () {
return ":";
},
function () {
return '"';
},
/^[!-']/,
T([["!", "'"]], !1, !1),
/^[*-[]/,
T([["*", "["]], !1, !1),
/^[\]-~]/,
T([["]", "~"]], !1, !1),
function (e) {
return e;
},
/^[#-[]/,
T([["#", "["]], !1, !1),
/^[\0-\t]/,
T([["\0", "\t"]], !1, !1),
/^[\v-\f]/,
T([["\v", "\f"]], !1, !1),
/^[\x0E-\x7F]/,
T([["\x0e", "\x7f"]], !1, !1),
function () {
((t = t || { data: {} }).data.uri = new w(
t.data.scheme,
t.data.user,
t.data.host,
t.data.port,
)),
delete t.data.scheme,
delete t.data.user,
delete t.data.host,
delete t.data.host_type,
delete t.data.port;
},
function () {
((t = t || { data: {} }).data.uri = new w(
t.data.scheme,
t.data.user,
t.data.host,
t.data.port,
t.data.uri_params,
t.data.uri_headers,
)),
delete t.data.scheme,
delete t.data.user,
delete t.data.host,
delete t.data.host_type,
delete t.data.port,
delete t.data.uri_params,
"SIP_URI" === t.startRule && (t.data = t.data.uri);
},
"sips",
b("sips", !0),
"sip",
b("sip", !0),
function (e) {
(t = t || { data: {} }).data.scheme = e;
},
function () {
(t = t || { data: {} }).data.user = decodeURIComponent(
f().slice(0, -1),
);
},
function () {
(t = t || { data: {} }).data.password = f();
},
function () {
return ((t = t || { data: {} }).data.host = f()), t.data.host;
},
function () {
return ((t = t || { data: {} }).data.host_type = "domain"), f();
},
/^[a-zA-Z0-9_\-]/,
T([["a", "z"], ["A", "Z"], ["0", "9"], "_", "-"], !1, !1),
/^[a-zA-Z0-9\-]/,
T([["a", "z"], ["A", "Z"], ["0", "9"], "-"], !1, !1),
function () {
return ((t = t || { data: {} }).data.host_type = "IPv6"), f();
},
"::",
b("::", !1),
function () {
return ((t = t || { data: {} }).data.host_type = "IPv6"), f();
},
function () {
return ((t = t || { data: {} }).data.host_type = "IPv4"), f();
},
"25",
b("25", !1),
/^[0-5]/,
T([["0", "5"]], !1, !1),
"2",
b("2", !1),
/^[0-4]/,
T([["0", "4"]], !1, !1),
"1",
b("1", !1),
/^[1-9]/,
T([["1", "9"]], !1, !1),
function (e) {
return (
(t = t || { data: {} }),
(e = parseInt(e.join(""))),
(t.data.port = e),
e
);
},
"transport=",
b("transport=", !0),
"udp",
b("udp", !0),
"tcp",
b("tcp", !0),
"sctp",
b("sctp", !0),
"tls",
b("tls", !0),
function (e) {
(t = t || { data: {} }).data.uri_params || (t.data.uri_params = {}),
(t.data.uri_params.transport = e.toLowerCase());
},
"user=",
b("user=", !0),
"phone",
b("phone", !0),
"ip",
b("ip", !0),
function (e) {
(t = t || { data: {} }).data.uri_params || (t.data.uri_params = {}),
(t.data.uri_params.user = e.toLowerCase());
},
"method=",
b("method=", !0),
function (e) {
(t = t || { data: {} }).data.uri_params || (t.data.uri_params = {}),
(t.data.uri_params.method = e);
},
"ttl=",
b("ttl=", !0),
function (e) {
(t = t || { data: {} }).data.params || (t.data.params = {}),
(t.data.params.ttl = e);
},
"maddr=",
b("maddr=", !0),
function (e) {
(t = t || { data: {} }).data.uri_params || (t.data.uri_params = {}),
(t.data.uri_params.maddr = e);
},
"lr",
b("lr", !0),
function () {
(t = t || { data: {} }).data.uri_params || (t.data.uri_params = {}),
(t.data.uri_params.lr = void 0);
},
function (e, s) {
(t = t || { data: {} }).data.uri_params || (t.data.uri_params = {}),
(s = null === s ? void 0 : s[1]),
(t.data.uri_params[e.toLowerCase()] = s);
},
function (e, s) {
(e = e.join("").toLowerCase()),
(s = s.join("")),
(t = t || { data: {} }).data.uri_headers ||
(t.data.uri_headers = {}),
t.data.uri_headers[e]
? t.data.uri_headers[e].push(s)
: (t.data.uri_headers[e] = [s]);
},
function () {
"Refer_To" === (t = t || { data: {} }).startRule &&
((t.data.uri = new w(
t.data.scheme,
t.data.user,
t.data.host,
t.data.port,
t.data.uri_params,
t.data.uri_headers,
)),
delete t.data.scheme,
delete t.data.user,
delete t.data.host,
delete t.data.host_type,
delete t.data.port,
delete t.data.uri_params);
},
"//",
b("//", !1),
function () {
(t = t || { data: {} }).data.scheme = f();
},
b("SIP", !0),
function () {
(t = t || { data: {} }).data.sip_version = f();
},
"INVITE",
b("INVITE", !1),
"ACK",
b("ACK", !1),
"VXACH",
b("VXACH", !1),
"OPTIONS",
b("OPTIONS", !1),
"BYE",
b("BYE", !1),
"CANCEL",
b("CANCEL", !1),
"REGISTER",
b("REGISTER", !1),
"SUBSCRIBE",
b("SUBSCRIBE", !1),
"NOTIFY",
b("NOTIFY", !1),
"REFER",
b("REFER", !1),
"PUBLISH",
b("PUBLISH", !1),
function () {
return ((t = t || { data: {} }).data.method = f()), t.data.method;
},
function (e) {
(t = t || { data: {} }).data.status_code = parseInt(e.join(""));
},
function () {
(t = t || { data: {} }).data.reason_phrase = f();
},
function () {
(t = t || { data: {} }).data = f();
},
function () {
var e, s;
for (
s = (t = t || { data: {} }).data.multi_header.length, e = 0;
e < s;
e++
)
if (null === t.data.multi_header[e].parsed) {
t.data = null;
break;
}
null !== t.data ? (t.data = t.data.multi_header) : (t.data = -1);
},
function () {
var e;
(t = t || { data: {} }).data.multi_header ||
(t.data.multi_header = []);
try {
(e = new v(t.data.uri, t.data.displayName, t.data.params)),
delete t.data.uri,
delete t.data.displayName,
delete t.data.params;
} catch (t) {
e = null;
}
t.data.multi_header.push({
position: c,
offset: m().start.offset,
parsed: e,
});
},
function (e) {
'"' === (e = f().trim())[0] && (e = e.substring(1, e.length - 1)),
((t = t || { data: {} }).data.displayName = e);
},
"q",
b("q", !0),
function (e) {
(t = t || { data: {} }).data.params || (t.data.params = {}),
(t.data.params.q = e);
},
"expires",
b("expires", !0),
function (e) {
(t = t || { data: {} }).data.params || (t.data.params = {}),
(t.data.params.expires = e);
},
function (e) {
return parseInt(e.join(""));
},
"0",
b("0", !1),
function () {
return parseFloat(f());
},
function (e, s) {
(t = t || { data: {} }).data.params || (t.data.params = {}),
(s = null === s ? void 0 : s[1]),
(t.data.params[e.toLowerCase()] = s);
},
"render",
b("render", !0),
"session",
b("session", !0),
"icon",
b("icon", !0),
"alert",
b("alert", !0),
function () {
"Content_Disposition" === (t = t || { data: {} }).startRule &&
(t.data.type = f().toLowerCase());
},
"handling",
b("handling", !0),
"optional",
b("optional", !0),
"required",
b("required", !0),
function (e) {
(t = t || { data: {} }).data = parseInt(e.join(""));
},
function () {
(t = t || { data: {} }).data = f();
},
"text",
b("text", !0),
"image",
b("image", !0),
"audio",
b("audio", !0),
"video",
b("video", !0),
"application",
b("application", !0),
"message",
b("message", !0),
"multipart",
b("multipart", !0),
"x-",
b("x-", !0),
function (e) {
(t = t || { data: {} }).data.value = parseInt(e.join(""));
},
function (e) {
(t = t || { data: {} }).data = e;
},
function (e) {
(t = t || { data: {} }).data.event = e.toLowerCase();
},
function () {
var e = (t = t || { data: {} }).data.tag;
(t.data = new v(t.data.uri, t.data.displayName, t.data.params)),
e && t.data.setParam("tag", e);
},
"tag",
b("tag", !0),
function (e) {
(t = t || { data: {} }).data.tag = e;
},
function (e) {
(t = t || { data: {} }).data = parseInt(e.join(""));
},
function (e) {
(t = t || { data: {} }).data = e;
},
function () {
(t = t || { data: {} }).data = new v(
t.data.uri,
t.data.displayName,
t.data.params,
);
},
"digest",
b("Digest", !0),
"realm",
b("realm", !0),
function (e) {
(t = t || { data: {} }).data.realm = e;
},
"domain",
b("domain", !0),
"nonce",
b("nonce", !0),
function (e) {
(t = t || { data: {} }).data.nonce = e;
},
"opaque",
b("opaque", !0),
function (e) {
(t = t || { data: {} }).data.opaque = e;
},
"stale",
b("stale", !0),
"true",
b("true", !0),
function () {
(t = t || { data: {} }).data.stale = !0;
},
"false",
b("false", !0),
function () {
(t = t || { data: {} }).data.stale = !1;
},
"algorithm",
b("algorithm", !0),
"md5",
b("MD5", !0),
"md5-sess",
b("MD5-sess", !0),
function (e) {
(t = t || { data: {} }).data.algorithm = e.toUpperCase();
},
"qop",
b("qop", !0),
"auth-int",
b("auth-int", !0),
"auth",
b("auth", !0),
function (e) {
(t = t || { data: {} }).data.qop || (t.data.qop = []),
t.data.qop.push(e.toLowerCase());
},
function (e) {
(t = t || { data: {} }).data.value = parseInt(e.join(""));
},
function () {
var e, s;
for (
s = (t = t || { data: {} }).data.multi_header.length, e = 0;
e < s;
e++
)
if (null === t.data.multi_header[e].parsed) {
t.data = null;
break;
}
null !== t.data ? (t.data = t.data.multi_header) : (t.data = -1);
},
function () {
var e;
(t = t || { data: {} }).data.multi_header ||
(t.data.multi_header = []);
try {
(e = new v(t.data.uri, t.data.displayName, t.data.params)),
delete t.data.uri,
delete t.data.displayName,
delete t.data.params;
} catch (t) {
e = null;
}
t.data.multi_header.push({
position: c,
offset: m().start.offset,
parsed: e,
});
},
function () {
(t = t || { data: {} }).data = new v(
t.data.uri,
t.data.displayName,
t.data.params,
);
},
function () {
((t = t || { data: {} }).data.replaces_from_tag &&
t.data.replaces_to_tag) ||
(t.data = -1);
},
function () {
(t = t || { data: {} }).data = { call_id: t.data };
},
"from-tag",
b("from-tag", !0),
function (e) {
(t = t || { data: {} }).data.replaces_from_tag = e;
},
"to-tag",
b("to-tag", !0),
function (e) {
(t = t || { data: {} }).data.replaces_to_tag = e;
},
"early-only",
b("early-only", !0),
function () {
(t = t || { data: {} }).data.early_only = !0;
},
function (e, t) {
return t;
},
function (e, t) {
return (function (e, t) {
return [e].concat(t);
})(e, t);
},
function (e) {
"Require" === (t = t || { data: {} }).startRule &&
(t.data = e || []);
},
function (e) {
(t = t || { data: {} }).data.value = parseInt(e.join(""));
},
"active",
b("active", !0),
"pending",
b("pending", !0),
"terminated",
b("terminated", !0),
function () {
(t = t || { data: {} }).data.state = f();
},
"reason",
b("reason", !0),
function (e) {
(t = t || { data: {} }), void 0 !== e && (t.data.reason = e);
},
function (e) {
(t = t || { data: {} }), void 0 !== e && (t.data.expires = e);
},
"retry_after",
b("retry_after", !0),
function (e) {
(t = t || { data: {} }), void 0 !== e && (t.data.retry_after = e);
},
"deactivated",
b("deactivated", !0),
"probation",
b("probation", !0),
"rejected",
b("rejected", !0),
"timeout",
b("timeout", !0),
"giveup",
b("giveup", !0),
"noresource",
b("noresource", !0),
"invariant",
b("invariant", !0),
function (e) {
"Supported" === (t = t || { data: {} }).startRule &&
(t.data = e || []);
},
function () {
var e = (t = t || { data: {} }).data.tag;
(t.data = new v(t.data.uri, t.data.displayName, t.data.params)),
e && t.data.setParam("tag", e);
},
"ttl",
b("ttl", !0),
function (e) {
(t = t || { data: {} }).data.ttl = e;
},
"maddr",
b("maddr", !0),
function (e) {
(t = t || { data: {} }).data.maddr = e;
},
"received",
b("received", !0),
function (e) {
(t = t || { data: {} }).data.received = e;
},
"branch",
b("branch", !0),
function (e) {
(t = t || { data: {} }).data.branch = e;
},
"rport",
b("rport", !0),
function (e) {
(t = t || { data: {} }),
void 0 !== e && (t.data.rport = e.join(""));
},
function (e) {
(t = t || { data: {} }).data.protocol = e;
},
b("UDP", !0),
b("TCP", !0),
b("TLS", !0),
b("SCTP", !0),
function (e) {
(t = t || { data: {} }).data.transport = e;
},
function () {
(t = t || { data: {} }).data.host = f();
},
function (e) {
(t = t || { data: {} }).data.port = parseInt(e.join(""));
},
function (e) {
return parseInt(e.join(""));
},
function (e) {
"Session_Expires" === (t = t || { data: {} }).startRule &&
(t.data.deltaSeconds = e);
},
"refresher",
b("refresher", !1),
"uas",
b("uas", !1),
"uac",
b("uac", !1),
function (e) {
"Session_Expires" === (t = t || { data: {} }).startRule &&
(t.data.refresher = e);
},
function (e) {
"Min_SE" === (t = t || { data: {} }).startRule && (t.data = e);
},
"stuns",
b("stuns", !0),
"stun",
b("stun", !0),
function (e) {
(t = t || { data: {} }).data.scheme = e;
},
function (e) {
(t = t || { data: {} }).data.host = e;
},
"?transport=",
b("?transport=", !1),
"turns",
b("turns", !0),
"turn",
b("turn", !0),
function (e) {
(t = t || { data: {} }).data.transport = e;
},
function () {
(t = t || { data: {} }).data = f();
},
"Referred-By",
b("Referred-By", !1),
"b",
b("b", !1),
"cid",
b("cid", !1),
],
a = [
I('2 ""6 7!'),
I('4"""5!7#'),
I('4$""5!7%'),
I('4&""5!7\''),
I(";'.# &;("),
I('4(""5!7)'),
I('4*""5!7+'),
I('2,""6,7-'),
I('2.""6.7/'),
I('40""5!71'),
I(
'22""6273.\x89 &24""6475.} &26""6677.q &28""6879.e &2:""6:7;.Y &2<""6<7=.M &2>""6>7?.A &2@""6@7A.5 &2B""6B7C.) &2D""6D7E',
),
I(";).# &;,"),
I(
'2F""6F7G.} &2H""6H7I.q &2J""6J7K.e &2L""6L7M.Y &2N""6N7O.M &2P""6P7Q.A &2R""6R7S.5 &2T""6T7U.) &2V""6V7W',
),
I('%%2X""6X7Y/5#;#/,$;#/#$+#)(#\'#("\'#&\'#/"!&,)'),
I(
'%%$;$0#*;$&/,#; /#$+")("\'#&\'#." &"/=#$;$/�#*;$&&&#/\'$8":Z" )("\'#&\'#',
),
I(';.." &"'),
I("%$;'.# &;(0)*;'.# &;(&/?#28\"\"6879/0$;//'$8#:[# )(#'#(\"'#&'#"),
I(
'%%$;2/�#*;2&&&#/g#$%$;.0#*;.&/,#;2/#$+")("\'#&\'#0=*%$;.0#*;.&/,#;2/#$+")("\'#&\'#&/#$+")("\'#&\'#/"!&,)',
),
I('4\\""5!7].# &;3'),
I('4^""5!7_'),
I('4`""5!7a'),
I(';!.) &4b""5!7c'),
I(
'%$;).\x95 &2F""6F7G.\x89 &2J""6J7K.} &2L""6L7M.q &2X""6X7Y.e &2P""6P7Q.Y &2H""6H7I.M &2@""6@7A.A &2d""6d7e.5 &2R""6R7S.) &2N""6N7O/\x9e#0\x9b*;).\x95 &2F""6F7G.\x89 &2J""6J7K.} &2L""6L7M.q &2X""6X7Y.e &2P""6P7Q.Y &2H""6H7I.M &2@""6@7A.A &2d""6d7e.5 &2R""6R7S.) &2N""6N7O&&&#/"!&,)',
),
I(
'%$;).\x89 &2F""6F7G.} &2L""6L7M.q &2X""6X7Y.e &2P""6P7Q.Y &2H""6H7I.M &2@""6@7A.A &2d""6d7e.5 &2R""6R7S.) &2N""6N7O/\x92#0\x8f*;).\x89 &2F""6F7G.} &2L""6L7M.q &2X""6X7Y.e &2P""6P7Q.Y &2H""6H7I.M &2@""6@7A.A &2d""6d7e.5 &2R""6R7S.) &2N""6N7O&&&#/"!&,)',
),
I(
'2T""6T7U.\xe3 &2V""6V7W.\xd7 &2f""6f7g.\xcb &2h""6h7i.\xbf &2:""6:7;.\xb3 &2D""6D7E.\xa7 &22""6273.\x9b &28""6879.\x8f &2j""6j7k.\x83 &;&.} &24""6475.q &2l""6l7m.e &2n""6n7o.Y &26""6677.M &2>""6>7?.A &2p""6p7q.5 &2r""6r7s.) &;\'.# &;(',
),
I(
'%$;).\u012b &2F""6F7G.\u011f &2J""6J7K.\u0113 &2L""6L7M.\u0107 &2X""6X7Y.\xfb &2P""6P7Q.\xef &2H""6H7I.\xe3 &2@""6@7A.\xd7 &2d""6d7e.\xcb &2R""6R7S.\xbf &2N""6N7O.\xb3 &2T""6T7U.\xa7 &2V""6V7W.\x9b &2f""6f7g.\x8f &2h""6h7i.\x83 &28""6879.w &2j""6j7k.k &;&.e &24""6475.Y &2l""6l7m.M &2n""6n7o.A &26""6677.5 &2p""6p7q.) &2r""6r7s/\u0134#0\u0131*;).\u012b &2F""6F7G.\u011f &2J""6J7K.\u0113 &2L""6L7M.\u0107 &2X""6X7Y.\xfb &2P""6P7Q.\xef &2H""6H7I.\xe3 &2@""6@7A.\xd7 &2d""6d7e.\xcb &2R""6R7S.\xbf &2N""6N7O.\xb3 &2T""6T7U.\xa7 &2V""6V7W.\x9b &2f""6f7g.\x8f &2h""6h7i.\x83 &28""6879.w &2j""6j7k.k &;&.e &24""6475.Y &2l""6l7m.M &2n""6n7o.A &26""6677.5 &2p""6p7q.) &2r""6r7s&&&#/"!&,)',
),
I("%;//?#2P\"\"6P7Q/0$;//'$8#:t# )(#'#(\"'#&'#"),
I("%;//?#24\"\"6475/0$;//'$8#:u# )(#'#(\"'#&'#"),
I("%;//?#2>\"\"6>7?/0$;//'$8#:v# )(#'#(\"'#&'#"),
I("%;//?#2T\"\"6T7U/0$;//'$8#:w# )(#'#(\"'#&'#"),
I("%;//?#2V\"\"6V7W/0$;//'$8#:x# )(#'#(\"'#&'#"),
I('%2h""6h7i/0#;//\'$8":y" )("\'#&\'#'),
I('%;//6#2f""6f7g/\'$8":z" )("\'#&\'#'),
I("%;//?#2D\"\"6D7E/0$;//'$8#:{# )(#'#(\"'#&'#"),
I("%;//?#22\"\"6273/0$;//'$8#:|# )(#'#(\"'#&'#"),
I("%;//?#28\"\"6879/0$;//'$8#:}# )(#'#(\"'#&'#"),
I("%;//0#;&/'$8\":~\" )(\"'#&'#"),
I("%;&/0#;//'$8\":~\" )(\"'#&'#"),
I("%;=/T#$;G.) &;K.# &;F0/*;G.) &;K.# &;F&/,$;>/#$+#)(#'#(\"'#&'#"),
I('4\x7f""5!7\x80.A &4\x81""5!7\x82.5 &4\x83""5!7\x84.) &;3.# &;.'),
I(
"%%;//Q#;&/H$$;J.# &;K0)*;J.# &;K&/,$;&/#$+$)($'#(#'#(\"'#&'#/\"!&,)",
),
I(
"%;//]#;&/T$%$;J.# &;K0)*;J.# &;K&/\"!&,)/1$;&/($8$:\x85$!!)($'#(#'#(\"'#&'#",
),
I(';..G &2L""6L7M.; &4\x86""5!7\x87./ &4\x83""5!7\x84.# &;3'),
I(
'%2j""6j7k/J#4\x88""5!7\x89.5 &4\x8a""5!7\x8b.) &4\x8c""5!7\x8d/#$+")("\'#&\'#',
),
I("%;N/M#28\"\"6879/>$;O.\" &\"/0$;S/'$8$:\x8