[Standards-JIG] proto-JEP: User Gaming

Frank van Schie fvschie at gmail.com
Fri Sep 8 23:06:53 UTC 2006


Nolan Eakins schreef:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Peter Saint-Andre wrote:
>
>>The idea is that this extension is a way to tell interested others that
>>you're playing this particular game right now -- not to provide static
>>information about the games you play in general. IMHO the static data
>>belongs in JEP-0154 (or extended fields for the data forms in JEP-0154).
>
>
> You may as well extend this JEP out to any application, otherwise we
> could end up seeing something like:
>
>   <game xmlns='http://jabber.org/protocol/gaming'>
>      <name>Microsoft Excel</name>
>      <uri>excel://192.168.100.100/financial model.xls</uri>
>      <level>financial model.xls</level>
>   </game>
>
> Defining some sort of madlib for this might be best: "I'm currently in
> (1)___________ using/playing (2)___________ with (3) ____________ out of
> (4)____________ others on (5) ______________".
>
> 1: Level, file, region, etc. (noun/identifier)
> 2: Application (proper noun)
> 3: Number of active players/users (number)
> 4: Maximum number of players (number > 3)
> 5: The server (URI)
>
> This may as well get defined in general terms, otherwise we'll have one
> abused and contorted format, or two separate formats describing the same
> thing.

That still seems too restrictive to me. A MMORPG has no 1, 3 or 4 of
any importance, say.

My suggestion would be closer to:

<application xmlns='http://jabber.org/protocol/application'>
    <appid>e23baf-ea12ce-86b1ac</appid>
    <name lang="en">The Settlers</name>
    <name lang="de">Die Siedler</name>
    [etc...]
    <data>
        <server>123.123.123.123</server>
        <map>SomeMapIdentification</map>
        <settlement-size>5134</settlement-size>
    </data>
</application>

Likewise, you might have (rough example):
<application xmlns='http://jabber.org/protocol/application'>
    <appid>ea12ce-86b1ac-e23baf</appid>
    <name lang="en">Netbeans 5.5 RC1</name>
    <data>
        <project>XMPP Application Plugin</project>
        <file>frankrocks.java</file>
    </data>
</application>

The name might as well be freeform for all the international and
inter-version variation you can get. The data should be freeform
between applications (but fixed for any single application in some
registry). The ID could be used to link the required <data /> format
to an application, regardless of name. Without a registry of some
sort, I think you'll quickly dive into redundant, irrelevant
information, and needlessly complicate the protocol.

If you want to go further, structure the ID with codes for application
type (FPS, word processor, whiteboard, etc), developer (if
applicable), and specific application ID within the category defined
by those two parameters. This would allow you to search a registry,
and automagically determine some peripheral data about an application
from the ID itself.

The way MSN uses its ID fields is to have applications have a registry
key with the application ID, containing startup information, so that
the application can even be started from a message. This still sounds
attractive to me. Jingle-Application, perhaps?

-- 
Frank



More information about the Standards mailing list