protected virtual void OnSipRequest(WebBrowserNavigatingEventArgs e) { SipRequestArgs srArgs = new SipRequestArgs(); srArgs.Command = e.Url.Host.ToString(); string original = e.Url.PathAndQuery.ToString(); original = original.Replace("&hash;", "#"); string[] swp = original.Split('?'); if (swp.Length == 1) { //no arguments srArgs.Command = original; } else { srArgs.Command = swp[0]; foreach (string kvpair in swp[1].Split('&')) { swp = kvpair.Split('='); string key = swp[0].ToLower(); string val=""; if (swp.Length > 1) { //argument with no value val = Uri.UnescapeDataString(swp[1]); } srArgs.Arguments.Add(key, val); } } MySipRequest(this, srArgs); e.Cancel = srArgs.Cancel; }
public void onSipRequest(object sender, SipRequestArgs args) { object[] funcArgs= new object[]{sender,args}; this.BeginInvoke(new DMySipRequest(this.PhoBrowSipRequest),funcArgs); }
public int HandleRequest(string requestString) { //togliere il codice e mettere in onSipRequest //qui passare solo la stringa SipRequestArgs srArgs = new SipRequestArgs(); Uri url = new Uri(requestString); srArgs.Command = url.Host.ToString(); string original = url.PathAndQuery.ToString(); string[] swp = original.Split('?'); if (swp.Length == 1) { //no arguments srArgs.Command = original; } else { srArgs.Command = swp[0]; foreach (string kvpair in swp[1].Split('&')) { swp = kvpair.Split('='); string key = swp[0].ToLower(); string val=""; if (swp.Length > 1) { //argument with no value val = Uri.UnescapeDataString(swp[1]); } srArgs.Arguments.Add(key, val); } } MySipRequest(this, srArgs); return ResponseCodes.OK; }