Showing posts with label feeds. Show all posts
Showing posts with label feeds. Show all posts

Sunday, March 31, 2013

From Google Reader To Tiny Tiny RSS

In early 2000s, I migrated from FeedReader application to Google Reader. Now it's time to move on, again.
I have chosen Tiny Tiny RSS because :
  • It was in Slashdot comments
  • It has both a Web interface and an Android app
  • It is a very active project
  • I can host it myself (it's not in some cloud)
  • Articles will not be marked read after 30 days
  • I can disable article purge
Hosting
Tiny Tiny RSS works fine with WampServer but I do not allow connections from internet to my local home private network.
I could not use the following web hosting providers :
  • free.fr : no support for PHP 5.3
  • olympe : doc is dead, do not know how to upload files
  • 000webhost : ftp is deadly slow, tt-rss does not work (uname, not writable errors)
  • byethost : dojo not defined error, could not load feeds
  • Toile Libre : dead
I have chosen hostinger :
  • ttrss works ! (PHP 5.3.20 and you can enable PHP 5.4)
  • small .p.ht url suffix
PHP has open_basedir restrictions but :
  • you can use this patch
  • You must use the 'resolved' url once all redirections have been resolved
Sample feeds resolved by firefox :
  • The Daily WTF : http://thedailywtf.com/rss.aspx gives http://syndication.thedailywtf.com/TheDailyWtf
  • PC Inpact : http://www.pcinpact.com/rss/news.xml gives http://pcinpact.com.feedsportal.com/c/35178/f/652880/index.rss
Edit 2013.04.01 : hostinger lets you add cron jobs to update feeds.
Edit 2013.04.11 : 10 days later, I got an official answer from hostinger support saying that cron jobs only support PHP 5.2. Too bad...

Sunday, February 20, 2011

Argotic Syndication Framework Desillusion

When I discovered Argotic Syndication Framework a few hours ago, I thought : One to rule them all. They say on their web site that I don't have to speak the syndication langage. But, I failed to make it work on the first syndication feeds I tried : blog.free.fr atom feeds generated with dotclear raise the following exception :
   at Argotic.Common.Guard.ArgumentNotNullOrEmptyString(String value, String name)
   at Argotic.Syndication.AtomPersonConstruct.set_Name(String value)
   at Argotic.Syndication.AtomPersonConstruct.Load(XPathNavigator source)
   at Argotic.Syndication.AtomPersonConstruct.Load(XPathNavigator source, SyndicationResourceLoadSettings settings)
   at Argotic.Data.Adapters.Atom10SyndicationResourceAdapter.FillFeedCollections(AtomFeed feed, XPathNavigator source, XmlNamespaceManager manager, SyndicationResourceLoadSettings settings)
   at Argotic.Data.Adapters.Atom10SyndicationResourceAdapter.Fill(AtomFeed resource)
   at Argotic.Data.Adapters.SyndicationResourceAdapter.FillAtomResource(ISyndicationResource resource, SyndicationResourceMetadata resourceMetadata)
   at Argotic.Data.Adapters.SyndicationResourceAdapter.Fill(ISyndicationResource resource, SyndicationContentFormat format)
   at Argotic.Syndication.AtomFeed.Load(XPathNavigator navigator, SyndicationResourceLoadSettings settings, SyndicationResourceLoadedEventArgs eventData)
   at Argotic.Syndication.AtomFeed.Load(Uri source, ICredentials credentials, IWebProxy proxy, SyndicationResourceLoadSettings settings)
   at Argotic.Syndication.AtomFeed.Create(Uri source, ICredentials credentials, IWebProxy proxy, SyndicationResourceLoadSettings settings)
   at Argotic.Syndication.AtomFeed.Create(Uri source, SyndicationResourceLoadSettings settings)
   at Argotic.Syndication.AtomFeed.Create(Uri source)
It fails to parse publication dates in Univers Freebox syndication feeds or Slashdot feeds. Well, it seems I have to learn this langage anyway... Edit : After failing again on slashdot feeds with .NET 3.5 classes, I found Peter's blog. Actually my code was getting closer to his solution.