using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Net; using System.Xml; using System.IO; using System.Text; using System.Collections; /// /// Summary description for RPCPing /// public class RPCPing { public RPCPing() { // // TODO: Add constructor logic here // } public string Send() { string result = ""; ArrayList RPCServers = new ArrayList(); RPCServers.Add("http://api.moreover.com/ping"); RPCServers.Add("http://blogsearch.google.com/ping/RPC2"); RPCServers.Add("http://ping.syndic8.com/xmlrpc.php"); RPCServers.Add("http://rpc.blogrolling.com/pinger/"); RPCServers.Add("http://rpc.icerocket.com:10080/"); RPCServers.Add("http://ping.blo.gs/"); RPCServers.Add("http://ping.myblog.jp"); RPCServers.Add("http://ping.syndic8.com/xmlrpc.php"); RPCServers.Add("http://services.newsgator.com/ngws/xmlrpcping.aspx "); foreach (var item in RPCServers) { try { Execute(item.ToString()); } catch (Exception ex) { result = ex.Message; } } // Execute("http://rpc.pingomatic.com/RPC2"); return ""; } /// /// Creates a web request and with the RPC-XML code in the stream. /// private string Execute(string url) { string result = ""; try { HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); request.Method = "POST"; request.ContentType = "text/xml"; request.Timeout = 6000; AddXmlToRequest(request,"Guncel.im Sosyal İmleme","http://guncel.im/feed.aspx?Full=All"); WebResponse WR= request.GetResponse(); StreamReader srx = new StreamReader(WR.GetResponseStream(), System.Text.Encoding.Default); result= srx.ReadToEnd(); } catch (Exception ex) { result = ex.Message; // Log the error. } return result; } /// /// Adds the XML to web request. The XML is the standard /// XML used by RPC-XML requests. /// private static void AddXmlToRequest(HttpWebRequest request,string prmWebsiteName,string prmWebsiteURL) { Stream stream = (Stream)request.GetRequestStream(); using (XmlTextWriter writer = new XmlTextWriter(stream, Encoding.ASCII)) { writer.WriteStartDocument(); writer.WriteStartElement("methodCall"); writer.WriteElementString("methodName", "weblogUpdates.ping"); writer.WriteStartElement("params"); writer.WriteStartElement("param"); // Add the name of your website here writer.WriteElementString("value",prmWebsiteName); writer.WriteEndElement(); writer.WriteStartElement("param"); // The absolute URL of your website - not the updated or new page writer.WriteElementString("value", prmWebsiteURL); writer.WriteEndElement(); writer.WriteEndElement(); writer.WriteEndElement(); } } }