Solipsis URL Handler
From Solipsis
| Table of contents |
URL format
The current scheme is the following: slp://192.33.178.60:9999/
This means: either open a new navigator or re-use an existing one, and jump near the node whose UDP address is 192.33.178.60 and dedicated port is 9999.
We may need another URL format or scheme to jump near a given position - instead of jumping near a given host...
To test, go to the list of meeting points
Registering URLs
The slp URL scheme must be registered under the specific OS or desktop environment, so that the URLs are clickable in a Web browser. This is done automatically by the Solipsis navigator at launch.
Windows
The way to register URL schemes is explained in this forum post about ed2k URLs (http://www.emule-project.org/home/perl/help.cgi?l=1&rm=show_topic&topic_id=146).
The following registry has been tested on Windows XP Professional (change "C:\\path\\to\\navigator\\navigator.py" with the good path)
Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\slp] @="" "URL Protocol"="" [HKEY_CLASSES_ROOT\slp\shell] [HKEY_CLASSES_ROOT\slp\shell\open] [HKEY_CLASSES_ROOT\slp\shell\open\command] @="C:\\Program Files\\Python24\\python.exe C:\\path\\to\\navigator\\navigator.py --url \"%1\""
Gnome
Under Gnome, one can register URL schemes by creating some GConf keys for the specific URL schemes (it works with Firefox, Galeon, Epiphany):
gconftool -s /desktop/gnome/url-handlers/slp/enabled --type bool true gconftool -s /desktop/gnome/url-handlers/slp/command --type string "python /path/to/navigator.py --url %s" gconftool -s /desktop/gnome/url-handlers/slp/needs_terminal --type bool false
There is probably a way to do it directly in Python using the python-gconf extensions.
