Secondlife:// URL scheme

From Second Life Wiki
Revision as of 17:07, 21 April 2009 by Adicted Waco (talk | contribs) (Linux Was Missing, But Was On Page That Should Re-Direct Here *Looks Up Re-Directs*)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

This wiki page answers the question, "How does the secondlife:// URL scheme work?"

For details on special secondlife:///app/ URLs that control the user interface for login and search, see Viewer URI Name Space

Windows

The Second Life client utilizes the windows registry to tell the browser which application to launch when it sees secondlife:// as the prefix to a URL. During installation of the client, if the channel is "Second Life Release" (the default channel for the client) and the grid the client is installed for is "agni", the register entry is replaced with the path to the executable. The register entry states that whenever a browser sees secondlife:// that particular installation of the Second Life client is invoked with the arguments -url <URL>.

No Client is Running

When there is no client already running, the executed client will parse the -url argument and execute according to how it is parsed.

There is already a Client Running

The client looks to see if any applications running with the class name (specific to windows) "Second Life" is up. If so, it serializes the <URL> and sends it across the other client.

Macintosh

The Mac client registers a GURL handler as soon as the Second Life Application is dragged from another volume onto your startup volume.

No Client is Running

That client will be launched and its GURL handler will handle the GURL event issued by the operating system.

There is already a Client Running and it's the GURL Client

The client will handle the GURL event

There is already a Client Running and it's *not* the GURL Client

The GURL client will be launched and it will fail with the message "Another instance of Second Life is running."

Linux (SL 1.18.6+)

The Linux client (re-)registers secondlife:// handlers with GNOME and KDE each time it is launched.

No Client is Running

When there is no client already running, the executed client will parse the -url argument and execute according to how it is parsed.

There is already a Client Running

A warning will be issued - existing clients will currently need to be closed before a new external URL is handled.