SigServer DEV: Difference between revisions
No edit summary |
m (→Data Retrieval) |
||
Line 56: | Line 56: | ||
caution, don't access these urls more than one or twice a day or you will get yourself an automatic 24h ban! | caution, don't access these urls more than one or twice a day or you will get yourself an automatic 24h ban! | ||
* [http://anidb.info/perl-bin/animedb.pl?show=xml&t=userlatest&uid=32&list=file] | * [http://anidb.info/perl-bin/animedb.pl?show=xml&t=userlatest&uid=32&list=file http://anidb.info/perl-bin/animedb.pl?show=xml&t=userlatest&uid=32&list=file] | ||
* [http://anidb.info/perl-bin/animedb.pl?show=xml&t=userlatest&uid=32&list=anime] | * [http://anidb.info/perl-bin/animedb.pl?show=xml&t=userlatest&uid=32&list=anime http://anidb.info/perl-bin/animedb.pl?show=xml&t=userlatest&uid=32&list=anime] | ||
* [http://anidb.info/perl-bin/animedb.pl?show=xml&t=userstat&uid=32] | * [http://anidb.info/perl-bin/animedb.pl?show=xml&t=userstat&uid=32 http://anidb.info/perl-bin/animedb.pl?show=xml&t=userstat&uid=32] | ||
* [http://anidb.info/perl-bin/animedb.pl?show=xml&t=animestat&aid=1] | * [http://anidb.info/perl-bin/animedb.pl?show=xml&t=animestat&aid=1 http://anidb.info/perl-bin/animedb.pl?show=xml&t=animestat&aid=1] | ||
* [http://anidb.info/perl-bin/animedb.pl?show=xml&t=animestat&aid=1&uid=32&gid=41] | * [http://anidb.info/perl-bin/animedb.pl?show=xml&t=animestat&aid=1&uid=32&gid=41 http://anidb.info/perl-bin/animedb.pl?show=xml&t=animestat&aid=1&uid=32&gid=41] | ||
The mylist export documentation may be helpful in understanding the meaning of the different fields in the XML replies: [[Mylist_export_template_guidelines]] | The mylist export documentation may be helpful in understanding the meaning of the different fields in the XML replies: [[Mylist_export_template_guidelines]] |
Revision as of 09:10, 5 February 2007
General
this is the place to contribute ideas on a possible future addition of a special signature picture feature to anidb.
Related forum thread: AniDB Development Forum - SigServer
For other areas of active development on AniDB, check: Development
Vision
AniDB users can create highly personalized signature images which can be used in forum singatures and which acurately reflect user specific or general anidb data. Some examples are:
- Mylist statistics of the user (Mylist size, latest added, latest watched, total watched, ...)
- Vote statistics general or user based (Top3 animes, my Top3, worst anime ever, ...)
- General anidb statistics
- Group statistics (Latest releases by group X, ...)
- Anime statistics (percent aired, percent subbed, latest file added, total users, total groups, total files, total eps, ...)
- ...
The user would not need any webspace to host such images and would not need to update/regenerate them. All signature images would be directly loaded from an AniDB webserver.
Data
Implementation
General
here a short outline of the way it is supposed to work: (Let's call the new server "sig server" for now)
- The sig server has it's own user database
- Users can configure the signature pics via a webinterface of the sig server
- The sig server provides an url which returns the sig pic
- When the url is requested the sig server will look for a locally cached pic or cached anidb status information for the user and will either return the cached pic, a new pic created with the cached information or will issue an http request to retrieve the needed stats via as XML and then create the pic.
It is important to underline at this point that the sig server does never directly interact with the anidb database. It does not have SQL access, it does not store the users anidb password (only their anidb username) and it never modifies any information on anidb.
On suggestion for how things could look like (feel free to suggest other ways):
- AniDB will link to the sig server
- A first time user will visit the sig server and register a new account (username and password can be different from anidb)
- Once registered the user gets to a configuration page where he has to enter his anidb username (without the anidb password!) and there will be a help text explaining the required profile settings on anidb for this to work (the anidb XML interface will only provide the information if the user selected certain permissions for the guest user)
- the user can then either select an image from a selection of publicly available pictures stored on the server or can upload is own picture (for each own picture the user can specify whether it should be made public or not (needs mod review)).
- once a picture is selected the user can select the type of data shown and the formatting from predefined profiles or can define his own profile (profile can be made public)
- a profile should be very configurable, allowing selections like:
- information to display
- font/size/color/location/... for each part
- maybe some kind of basic scripting
- one user should be able to specify upto N signature picture+profile combinations which can all be active at the same time (maybe 5 ?)
- some nice statistics and a modding interface would be good
Hosting
We have a dedicated server ready for hosting this feature. Restrictions:
- Database related code should be able to work with PostgreSQL AND MySQL
- Currently the server only runs PHP4 Php Info, but PHP5 could be installed.
Data Retrieval
The SigServer will receive the required data by making HTTP GET requests to the main anidb server and by getting XML replies. Here are some examples.
caution, don't access these urls more than one or twice a day or you will get yourself an automatic 24h ban!
- http://anidb.info/perl-bin/animedb.pl?show=xml&t=userlatest&uid=32&list=file
- http://anidb.info/perl-bin/animedb.pl?show=xml&t=userlatest&uid=32&list=anime
- http://anidb.info/perl-bin/animedb.pl?show=xml&t=userstat&uid=32
- http://anidb.info/perl-bin/animedb.pl?show=xml&t=animestat&aid=1
- http://anidb.info/perl-bin/animedb.pl?show=xml&t=animestat&aid=1&uid=32&gid=41
The mylist export documentation may be helpful in understanding the meaning of the different fields in the XML replies: Mylist_export_template_guidelines