Difference between revisions of "JAGGRAB Protocol"

From RuneWiki
Jump to navigationJump to search
 
(3 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 +
== Introduction ==
 +
 
The JAGGRAB protocol is used to 'grab' cache files from the file server and download them.
 
The JAGGRAB protocol is used to 'grab' cache files from the file server and download them.
  
It is a text protocol, similar to HTTP, and the client will fall back to HTTP if JAGGRAB is unavailable. This generally happens in unsigned mode.
+
It is a text-based protocol, similar to HTTP, and the client will fall back to HTTP if JAGGRAB is unavailable. This generally happens in unsigned mode and helps users who are behind firewalls.
  
 
== Request format ==
 
== Request format ==
Line 8: Line 10:
  
 
  JAGGRAB /path/to/file
 
  JAGGRAB /path/to/file
 +
 +
=== New engine ===
 +
 +
In (perhaps all) new engine clients, the client prefixes the JAGGRAB request line with a single byte (value 17).
  
 
== Response format ==
 
== Response format ==
Line 27: Line 33:
 
* '''/sounds''' - cache 0, file 8
 
* '''/sounds''' - cache 0, file 8
  
NOTE: the client will usually postfix these with random numbers, so when checking for the file only the start of the string should be examined: not the whole one.
+
NOTE: the client will usually postfix these with random numbers, so when checking for the file only the start of the string should be examined: not the whole one.<BR>
 +
NOTE: The crc is postfixed with the client revision

Latest revision as of 08:22, 22 October 2009

Introduction

The JAGGRAB protocol is used to 'grab' cache files from the file server and download them.

It is a text-based protocol, similar to HTTP, and the client will fall back to HTTP if JAGGRAB is unavailable. This generally happens in unsigned mode and helps users who are behind firewalls.

Request format

A request is simply the text JAGGRAB, a space, the path to the file and a newline character. Therefore, it is very similar to a HTTP/0.9 GET request.

JAGGRAB /path/to/file

New engine

In (perhaps all) new engine clients, the client prefixes the JAGGRAB request line with a single byte (value 17).

Response format

The response is simply the raw file data. Once the response is sent, the connection is closed.

Files

There are a number of files which map to files in the cache.

  • /crc - the CRC table
  • /title - cache 0, file 1
  • /config - cache 0, file 2
  • /interface - cache 0, file 3
  • /media - cache 0, file 4
  • /versionlist - cache 0, file 5
  • /textures - cache 0, file 6
  • /wordenc - cache 0, file 7
  • /sounds - cache 0, file 8

NOTE: the client will usually postfix these with random numbers, so when checking for the file only the start of the string should be examined: not the whole one.
NOTE: The crc is postfixed with the client revision