ThreadBoard ArchivesSite FeaturesActiveworlds SupportHistoric Archives |
Please add users rating level to referrer string (Wishlist)
Please add users rating level to referrer string // WishlistcodewarriorDec 28, 2003, 6:47pm
If the referrer string contained the users rating level,
OP path servers could provide content appropriate to the rating level the user has selected. This would allow for example a museum world with a G rating, but which could display nudes by a given artist if the users level were PG or higher, and a more mundane work by that artist if the visitors rating level was G Although this can be done using cookies, using cookies or sessions precludes *all* content coming from your OP path from being cached. Anything of this nature (i.e. the users language settings, the users prefferred gender, the users cit #) that can be placed in the referrer string allows an OP path to deliver content dynamically that can still be cached. rossyboyDec 31, 2003, 7:53pm
Great idea!
[View Quote] > If the referrer string contained the users rating level, > OP path servers could provide content appropriate to > the rating level the user has selected. > > This would allow for example a museum world with > a G rating, but which could display nudes by a given > artist if the users level were PG or higher, and a more > mundane work by that artist if the visitors rating level > was G > > Although this can be done using cookies, using cookies > or sessions precludes *all* content coming from your > OP path from being cached. > > Anything of this nature (i.e. the users language settings, > the users prefferred gender, the users cit #) that can be > placed in the referrer string allows an OP path to deliver > content dynamically that can still be cached. > > strike rapierDec 31, 2003, 8:15pm
I mean heck, while were at it... Lets just start adding whole new lines to
the headers! GET /objectpath/textures.php?file=avatarfront1.jpg HTTP/1.0 Referer: ActiveWorlds/AWTeen/1032n_1039w_12a_201 aw_data: citizen#1 AWLD aw_data: citizen#2 password: H1*^%Bs54 aw_data: browser_crc: 1307096195 aw_data: browser_limit: PG/NoPorn aw_data: lets_increase_the_size_of_these_headers_just_a_little_more_till_theyre_pract ically_impossible_to_parse_and_keep_making_everything_so_rediculously_more_c omplicated_than_it_needs_to_be_shall_we [View Quote] codewarriorDec 31, 2003, 9:06pm
The referrer string can be disabled in the world options dialog.
You can buy a book that will teach you the basics of parsing strings if you find it so complicated or don't know how to write code that just ignores them. And I'm afraid I missed the post where the *uncomplicated* way to accomplish delivering dynamic content to people with different languages and ratings settings was described. What is this *simple* method of doing so that you speak of? Business opportunites galore abound if this simple problem that any lame 2D webpage can handle could just be solved. [View Quote] bowen ten.sardna@newobDec 31, 2003, 11:25pm
[View Quote]
What's so hard, break it up into an array and search the array for keywords.
-- --Bowen-- http://bowen.homelinux.com Give me ideajuice. codewarriorJan 1, 2004, 11:45am
Break *what* into an array?
> What's so hard, break it up into an array and search the array for keywords. rossyboyJan 1, 2004, 1:57pm
[View Quote]
oh come on... it's not like they're going to add 100 new lines. I think
it's a great idea. Does that Referer line actually exist right now? O_O codewarriorJan 1, 2004, 4:04pm
[View Quote]
> oh come on... it's not like they're going to add 100 new lines. I think
> it's a great idea. > > Does that Referer line actually exist right now? O_O Yes.. referrer is a standard HTTP header The current AW (added in 3.4) referrer string contains aw://{AUTH_IP}:{PORT}/{WORLDNAME} So it can currently be used by the OP path server to determine which universe and which world within that universe requests for content such as models, sounds, textures, avatars and .seq are coming from. Although some people will try their hardest to convince you otherwise, if your OP path uses a script or other means to confirm that your content is actually going to someone who is visiting your world, this feature can prevent other world owners from simply putting your OP path into their world and taking a free ride on your object path bandwidth (i.e. 'leeching') Although it does not prevent a truly determined thief from getting at your content, most content is probably not stolen by truly determined thieves anyway, and protecting your OP path by checking the referrer string means that a thief will at least have to put your stuff on their own server and use their own bandwidth to make use of it. As you can see.. appending the users rating level and language settings would add only a few bytes onto this string, and would make it no harder to parse than it is now. I would gladly volunteer to help any less experienced programmers fix their parsing code if adding any of my suggestions breaks it. As I posted in another wish, the language settings could and should be provided in another standard HTTP header anyway, which would allow the OP path server to deliver textures with writing in different languages on them, .wav files with spoken content in other languages, models appropriate to a given culture such as a French gendarme vs. an English bobby, and other very cool (and business critical) new things. Perhaps flipping someone in Malaysia the bird has a totally different meaning than it does to us. Combine that with the ability to deliver content appropriate to the users rating level and world owners would not have to choose to cater to one group or culture. They could construct worlds that adjusted themselves to the people visiting them. *all without AWI having to do anything but tack ten bytes onto the packet that should be there somewhere anyway * If you have ever seen any worlds that try to even deal with the language issue, it is quite obvious that putting a bunch of signs, objects, sounds and what have you into your world for each language you want to 'support' is going to use up far more bandwidth, time and hassle than just having your OP path give them the one version of everything appropriate to their language. Imagine if webpages had every language they supported all on the same page and you had to look for the text you could read amongst the other fifty you couldn't, and then imagine every world in AW with 50 different signs at GZ. -- Imaginez si les pages Web avaient chaque langue qu'elles ont soutenu tous à la même page et vous a dû rechercher le texte vous pourriez lire parmi les autres cinquante vous ne pourriez pas, et puis imaginer chaque monde dans l'aw avec 50 signes différents à GZ. -- Sich vorstellen Sie, wenn Webseiten jede Sprache hatten, die sie alle auf der gleichen Seite stützten und Sie mußte nach dem Text suchen Sie unter den anderen fünfzig lesen konnten Sie nicht konnten, und jede Welt in Aw mit 50 unterschiedlichen Zeichen an GZ dann sich vorstellen. -- Immagini se i Web pagi avessero ogni lingua che hanno sostenuto tutti alla stessa pagina e voi ha dovuto cercare il testo potreste leggere fra gli altri cinquanta non potreste ed allora immaginare ogni mondo in aw con 50 segni differenti a GZ. -- Imagine se os Web pages tiverem cada língua que suportaram tudo na mesma página e você teve que procurar o texto voc poderia ler amongst os outros cinqüênta você não poderia, e então imaginar cada mundo no AW com 50 sinais diferentes em GZ. -- Imagínese si los Web pages tenían cada lengua que apoyaron todos en la misma página y usted tuvo que buscar el texto usted podría leer entre los otros cincuenta usted no podría, y después imaginar cada mundo en el AW con 50 diversas muestras en GZ. -- .... -- .... -- .... -- .... -- .... -- ............. bowen ten.sardna@newobJan 1, 2004, 6:29pm
[View Quote]
> Break *what* into an array?
The string, like you said. -- --Bowen-- http://bowen.homelinux.com Give me ideajuice. codewarriorJan 1, 2004, 6:49pm
Several explosions are all that's needed to parse the current
referrer (explode() in PHP). If the things that are missing (rating level, language) were in any header in any form.. believe me I would find a way to parse and use them. [View Quote] bowen ten.sardna@newobJan 1, 2004, 7:21pm
[View Quote]
Yeah, I assumed explode() from PHP parsed it into an array. My friend
and I made a similar class for C++ -- only because I get lazy when it comes to string parsing. Really lazy. -- --Bowen-- http://bowen.homelinux.com Give me ideajuice. codewarriorJan 2, 2004, 1:24pm
That would be cool.. assuming the rating and language are tossed in there
somewhere too. Knowing the location isn't that useful to the OP path. Once it gives someone an object, that object is cached so you can't change it if they move somehwere else. The cit number would be awesome though. You could have a list of cit's on your OP path who can 'see' new stuff for example, so they could build things that don't get unveiled until later. You could also ban specific cits who you don't want to ever see any of your content.. although that's not very nice. [View Quote] bowen ten.sardna@newobJan 2, 2004, 1:59pm
[View Quote]
> That would be cool.. assuming the rating and language are tossed in there
> somewhere too. > > Knowing the location isn't that useful to the OP path. Once it gives > someone an object, that object is cached so you can't change it if > they move somehwere else. Maybe you only want certain objects to be used in certain areas. Maybe you have a more mature area of a world that uses some objects that might make mickey mouse cry. Or maybe you have boat objects and you don't want them in the air, with the birds. -- --Bowen-- http://bowen.homelinux.com Give me ideajuice. codewarriorJan 2, 2004, 2:32pm
Good examples, but they lie in the area of enforcing building
rules, and that can be done quite nicely with some kind of bot. But though I don't personally have a need for the location, I wouldn't cry about having to ignore it. [View Quote] strike rapierJan 2, 2004, 4:20pm
codewarriorJan 2, 2004, 5:54pm
That's good if the whole string is seperated with the same tokens,
but when the seperator changes from word to word it could get ugly. It is a bit of a pain though if you get half a line of valid tokens and things fall apart in the middle somewhere. At least you don't use scanf... that one is ugly. Having to work with other peoples code who use it a lot has made me very bitter. [View Quote] bowen ten.sardna@newobJan 2, 2004, 6:39pm
[View Quote]
Ew that would be ugly if it wasn't.
> It is a bit of a pain though if you get half a line of valid tokens > and things fall apart in the middle somewhere. > > At least you don't use scanf... that one is ugly. Having to work > with other peoples code who use it a lot has made me very > bitter. Have fun with it. ;) #include <string.h> #include <sstream> #include <vector> using namespace std; class explode { private: vector<string>tokens; public: explode(char*Buffer, int sep=-1) { char Buf2[1024]; stringstream str(Buffer); while(!str.eof()) { if(sep==-1) str>>Buf2; else str.getline(Buf2,1024,(char)sep); tokens.push_back(Buf2); } } int size() { return tokens.size(); } const char*operator[](int N) { return tokens[N].c_str(); } }; -- --Bowen-- http://bowen.homelinux.com Give me ideajuice. |