Home

Advertisement

Ruby XRI resolver

  • Oct. 18th, 2007 at 8:22 AM

Good work Victor and Kermit

Solid progress on the road to XRI 2.0.

I am including Victors email to me with a link to the project site.

-----

It's our pleasure to announce the first release of barx - a Ruby XRI resolution library and XRI proxy resolver.

We believe that barx is the first implementation of the XRI 2.0 WD11 spec - it supports the entire spec as defined in ED06 <http://www.oasis-open.org/committees/download.php/25741/xri-resolution-v2.0-wd-11-ed-06.pdf> with the exception of SAML trusted resolution.

The proxy resolver is a fast HTTP server based on Mongrel <http://mongrel.rubyforge.org/> and Merb <http://merb.rubyforge.org/files/readme.html> that can be run as a local service (on localhost:someport) to provide XRI resolution and caching for other applications such as OpenID relying parties, or as a scalable public service if desired.

The API used by barx is also available as a standalone rubygem, and can be used to support the development of other applications, or to XRI-enable existing applications.

The gem contains an examples directory with some examples of how the gem can be incorporated into other applications. The proxy server contains an example plugin that demonstrates how enable the resolution of alternative community roots.

To install the gem (Ruby and rubygems required):
gem install barx

To download the proxy:
http://rubyforge.org/frs/?group_id=4509

Project homepage:
http://xrisoft.org

Enjoy!
=victor.grey and =kermit.snelson

Tags:


If you aren't setting up a custom URL there is a shorter version of the URL form that works with linksafe.

You can use: xri.net/(your iName)
Example: xri.net/=thread-safe

This relies on some defaults in the iName XRDS.

By default if you ask the XRI proxy server at XRI.net for an iname in the format: http://xri.net/=thread-safe

It will return your contact page. If that contains the correct openID headers then its a valid openID 1.0 URL.

(Yes I am purposely leaving out accept types from the above, That a whole topic on its own.)

This trick doesn't work with 2idi.

There are two lines that need to be added to the 2idi contact page to make it work, and maybe an XRDS change.

I will ask Victor Grey about it next time I talk to him.

=thread-safe

Tags:

Delegating a URL openID to an iName

  • Oct. 7th, 2007 at 6:41 PM

Some sites like LiveJournal haven't updated their openID libraries to support iNames yet.

This presents a challenge to people like myself that want to use our iNames at these sites.

Fortunately this isn't an insurmountable one. There are a couple of things you can do to get around this.

One of my iNames is =Thread-Safe this happens to be registered at LinkSafe.

Linksafe has conveniently provisioned contact pages as a URL openIDs.

http://linksafe-contact.ezibroker.net/contact/=thread-safe

This works anyplace that takes openID.

As I have a domain and want a nicer name, I provisioned thread-safe.net as a openID using =thread-safe.

All that is required is a bit of cut and paste into index.html.

In my case for LinkSafe:
<link rel="openid.server" href="https://linksafe.ezibroker.net/server/" />
<link rel="openid.delegate" href="=thread-safe" />


For 2idi:
<link rel="openid.server" href="https://2idi.com/openid/" />
<link rel="openid.delegate" href="=thread-safe" />

This gets posted between at the top of the file.

If you are using linksafe then just replace =thread-safe with your iName.

The most important part of this is making your openid.delegate your iName.

There are many more interesting things that openID 2.0 will bring including full iName support.
In the interim some people may find this useful.

=thread-safe

Tags: