Contents tagged with Website
From now on my feeds are published through FeedBurner to get better statistics, yeah I'm a fan of stats. I've been using Google Anlytics for this site and others for some long time now and are very satisfied with it - but the lack of tracking feeds or any other type non-script-enabled stuff annoys me. From what I can understand Urchin (the company Google turned into Google Analytics) had that possibility before when making e-mail campaings, but I can't get it to work. If you have any idea how to I'd be glad.
So you out there who already subscribes, please update your feed and point to the new feed at: http://feeds.feedburner.com/WictorWilen
Simple List Extension contains a set of tags that tells the feed readers how to sort or filter the items in the feed. It also contains a tag that instructs the reader to interpret the feed as a list. If the feed is marked as a list the reader should treat the feed as the complete ordered list which means that readers must remove any cached items not present in the feed.
I did a test om my RSS feed with the extensions and when you watch it through a SLE enabled reader, Internet Explorer 7 for instance, you will now see the possibility to sort the items based on the number of comments each item has.
Note that when inserting the SLE tags the default Sort by and Filter by functions in IE7 is removed. I had to add the filter by category and sort by date and title to my feed.
This is how the feed looks like:<rss version="2.0" xmlns:cf="http://www.microsoft.com/schemas/rss/core/2005"><channel> ... <cf:listinfo><cf:sort element="pubDate" label="Date" data-type="date" default="true"/><cf:sort element="comments" label="Comments" ns="http://purl.org/rss/1.0/modules/slash/" data-type="number"/><cf:sort element="title" label="Title" data-type="text"/><cf:group element="category" label="Category/tag"/></cf:listinfo> ... </channel>
This is the second part of my dissection of a blog and I will try to explain what a TrackBack is.TrackBack is a way to communicate between blogs; for example when a blogger writes a post with comments/links to another blog the blogger can inform the blog that is being commented with a TrackBack ping. This ping will normally be fetched by the commented blog and appended as a comment.To get this to work, both the commenting blog and commented blog has to support the TrackBack protocol, see below.
And here is how it works when doing a TrackBack automatically.The commenting blog tool searches through all the URL's in the new blog entry and performs an HTTP GET request to retrieve the TrackBack ping address. The TrackBack ping address is normally included in the posts HTML code as a embedded RDF. The HTML code should be parsed and if a RDF section is found extract the value of the trackback:ping attribute, which contains the URL to which the TrackBack ping should be sent.
Example of embedded RDF<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"xmlns:dc="http://purl.org/dc/elements/1.1/"xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"><rdf:Descriptionrdf:about="http://www.wictorwilen.se/Post/68.aspx"dc:identifier="http://www.wictorwilen.se/Post/68.aspx"dc:title="Sending mail with Ctrl+Enter in Outlook 2007"trackback:ping="http://www.wictorwilen.se/trackback.aspx?id=68" /></rdf:RDF>
If the RDF and the trackback:ping attribute is found, a TrackBack ping should be sent to the URL. The ping is done using the REST model. The client sends a normal HTTP POST request with a Content-Type header with the value application/x-www-form-urlencoded and a few parameters; title, excerpt, url and blog_name. Only the url parameter is required and should contain the permalink for the blog entry sending the ping.
Example of a TrackBack pingPOST http://www.wictorwilen.se/trackback.aspx?id=68Content-type: application/x-www-form-urlencoded; charset=utf-8
The pinged server returns an XML formatted response which indicates failure or success.Example of successfull ping<?xml version="1.0"?><response><error>0</error></response>If the ping failed, the error element should contain a non-zero value and a message element with the error message should be included in the response.
That's it! If you are implementing your own blog engine, this may be of use but if you use a blog tool like blogger, Movable Type etc this will be done for you behind the scenes.
Note: A TrackBack ping should only be sent once!
Full technical specification can be found at http://www.sixapart.com/pronet/docs/trackback_spec
During the creation of this site I wanted to know more about how the blog world works behind the scenes. I will make a few articles about my findings in this matter and what I have done to create this blog.
The first article will describe on how you inform other sources and parties that your blog is updated. This is done through a Ping. You should ping whenever you have created or updated a post on your feed. Pinging is either done automatically or manually. Manual pinging is done by finding a site with a Ping interface, like http://www.bloglines.com/ping, and then enter the Url to your feed. You can find some more on the Blog Ping List at AYWE
If you would like to do an automatic Ping then the Pinging is done through an XML-RPC procedure, which is sending XML over and HTTP request. The XML contains information of your feed and the URL to which you send the request is called the endpoint. Read more about the specification here: http://www.weblogs.com/api.html.
In my implementation used an implementation like the one described by John in a post. For more exponation I set up my blog to ping a few other feeds using these endpoints:
My site is implmented using .NET 2.0 and the sample I started from uses the XML-RPC.NET library which is based on .NET 1.1. To be able to create an implementation like John has you have to make your interface public, like this:
That's it. I'll get back with some more articles on this matter.
DotNetPark has an excellent service at great prices. For me it was important to have ASP.NET and Microsoft SQL Server where I hosted my site and they have all that and more. I can easily publish the site using FTP from Visual Studio and connect to the SQL Server using the Enterprise Manager or Visual Studio. Their interface, called DotNetPanel, provides you with everything you need to host your site.You can also have a number of services installed at your request, for example how about Windows SharePoint Services!
I just want to say thanks to DotNetPark!
Welcome to my new space and domain at www.wictorwilen.se. This new place will host my blog (previously at http://dotnetjunkies.com/weblog/wicwil/).During the next few days all old posts and comments will be moved to this location.
Having my own place will make it more easy for me to create what I want and to present and blog about more stuff. This site will be an experimental playground for me and I will blog about some of the interesting stuff that I stumble upon. So expect some changes to the site and functionality.The site is just a hobby, besides my work and family, which both takes a lot of time, but it is fun to have something to rest your mind on.
This site is based on ASP.NET 2.0 and SQL Server 2000 hosted at DotNetPark. All code is custom made and experimental. Currently I have implemented a simple blog interface with pingback, trackback and comments functionality.
If you find any troubles with this new site, please contact me at firstname.lastname@example.org.