BeBot - An Anarchy Online and Age Of Conan chat automaton

Archive => Age of Conan Archive => BeBot Hyborian support => Topic started by: Urme on July 03, 2008, 09:58:02 am

Title: Items and logging the chat.
Post by: Urme on July 03, 2008, 09:58:02 am
Hey,

I started the bot yesterday and it ran for a couple of hours, wasn't home so couldn't login to AoC and try it out from ingame though.

Got two questions though, in which table in mySQL are the items saved? Can't seem to find it so I'm thinking the module wasn't loaded correctly even though it looked like it was loaded when the bot was started.

The chatlogs are saved in a directory and in the format 2008-07-02.txt, is it possible to save the logs to mySQL instead with a timestamp? Also is it possible to log Guild Announcements? I was thinking of porting the chat to a website, so it displays the last 50-100 lines that's been said in the guildchat or something. Or do I have to write my own module so the logs saves in mysql?

Was searching some last night where I could find the source code for how the chatlogs are saved etc, but couldn't find it :) In which file/files can I find it?

Awesome bot btw which will be useful both ingame but you will also be able to have like news on the website about what's going on ingame, like the 10 people that dinged last and which level, chat logs from ingame, etc etc :)
Title: Re: Items and logging the chat.
Post by: Noer on July 03, 2008, 10:20:37 am
Hi,

I am glad you like it.

The items are not saved centrally in a table. It searches in a central webservice I host and it also submits all the items it sees to this webservice. This way you gain from the work all the bots are doing and you get a bigger item database much faster. The data getting submitted is kept at a minimum to keep network traffic down.

Saving logs in a mysql table is generally a bad idea. Where will you log if the mysql connection is not working? If you insist on changing this there is a core logging-module you can replace. But I wouldn't do that if I were you.

Guild announcement is a special channel only the game client currently have access to unfortunately. So we can not do anything with that yet.

I hope that answers all your questions.
Title: Re: Items and logging the chat.
Post by: Urme on July 03, 2008, 11:00:47 am
Ah k, the items thingy is a good idea.

But I could create my own module that stored the logging as well in a mysql database? The thing I want to try is to export the logs from the guildchat to a website that can display them.
The core logging-module would not be touched, only wanted to see how it's working today.
Title: Re: Items and logging the chat.
Post by: Noer on July 03, 2008, 11:02:26 am
Ah k, the items thingy is a good idea.

But I could create my own module that stored the logging as well in a mysql database? The thing I want to try is to export the logs from the guildchat to a website that can display them.
The core logging-module would not be touched, only wanted to see how it's working today.

You could add it to the items module or copy the functionality from the items module and make your own.
Title: Re: Items and logging the chat.
Post by: Alreadythere on July 03, 2008, 11:34:38 am
But I could create my own module that stored the logging as well in a mysql database? The thing I want to try is to export the logs from the guildchat to a website that can display them.
The core logging-module would not be touched, only wanted to see how it's working today.
Sure, you'll have to write a module hooking into the guild chat channel (register_event("gmsg", "org") should do that if Noer is using the same pseudo-channel name as the AO version).

Then you can store all guild chat in a table in any manner you want.

Check out the Examples module on some explanations how to hook into events. The Wiki (http://bebot.link/wiki/base_module) contains some information too.
Title: Re: Items and logging the chat.
Post by: Urme on July 03, 2008, 11:48:52 am
Thanks guys, I'll look into it tonight
Title: Re: Items and logging the chat.
Post by: Noer on July 03, 2008, 12:40:42 pm
Yup thats the way I do it. Look in the items.php module for the regular expression needed to extract the item information.
Title: Re: Items and logging the chat.
Post by: meatshield on July 03, 2008, 08:25:43 pm
This might be too much to ask, but I'm gonna toss it out there.

Is there a way to copy your items database? I have no need for it at this time, but I think it could be useful. It's definitly useful to have a central location hosted by you so we have access to more times. I'm just not sure if we have access to it other than through the bot (its really my fault for not having a programming clue in the world).
Title: Re: Items and logging the chat.
Post by: Noer on July 03, 2008, 11:24:09 pm
This might be too much to ask, but I'm gonna toss it out there.

Is there a way to copy your items database? I have no need for it at this time, but I think it could be useful. It's definitly useful to have a central location hosted by you so we have access to more times. I'm just not sure if we have access to it other than through the bot (its really my fault for not having a programming clue in the world).

You can't really use this database for much else than what I provide currently. Its just a list of IDs and names. We don't get stats or anything on the items. If theres something you lack from the item database module currently put it under suggestions and I will look into it.
Title: Re: Items and logging the chat.
Post by: meatshield on July 04, 2008, 02:01:56 am
I'm not too worried about it. Was more curious than anything else. Thanks for replying though. The support for Bebot is wondeful.
Title: Re: Items and logging the chat.
Post by: figgy on July 04, 2008, 07:26:59 am
In the sake of online privacy protection and being considered an open-source project it might benefit to also release the source to this database webserver. I understand the reason behind a central database, but a lot of use and privacy concerns arise.

That being said, I'm sure there is no reason to be able to open-source the database/web input system as well seeing as it's a standard URL encode system with a DB backend. Quite frankly it would allow people like me to remain able to run our systems within our control and develop upon it as well (like for example a database sharing and mirroring ring amongst mysql.)

A lot of this would not only be good for the community but help retain an open and available system that cannot be interrupted by lack of network communications...
Title: Re: Items and logging the chat.
Post by: Noer on July 05, 2008, 12:50:38 pm
In the sake of online privacy protection and being considered an open-source project it might benefit to also release the source to this database webserver. I understand the reason behind a central database, but a lot of use and privacy concerns arise.

That being said, I'm sure there is no reason to be able to open-source the database/web input system as well seeing as it's a standard URL encode system with a DB backend. Quite frankly it would allow people like me to remain able to run our systems within our control and develop upon it as well (like for example a database sharing and mirroring ring amongst mysql.)

A lot of this would not only be good for the community but help retain an open and available system that cannot be interrupted by lack of network communications...

You can see in the items module what is being submitted to the central search. Itemid, item level requirement, item name, a hashvalue to validate these data, botname to make the "/tell <botname>" work and thats it. Only thing I can log other than that is the IP. So its not like theres much privacy issues about that.

I can understand that you guys are curious about this part - but its not a part I have any plan on releasing.
Title: Re: Items and logging the chat.
Post by: figgy on July 06, 2008, 01:13:41 am
Noer, this project appears to be released under the GNU license as far as I can tell...

And within that license it states we should have appropriate access to all sources according to that being developed...

If this is going to be a privately released project or toolset, please release it under a different license as currently you hold yourself applicable to the GNU agreement in your current distribution method.


This is more of a question of following the appropriate community guidelines from within the GNU community. I understand I can decode your source and build my own applicable php submission, but for the sake of how this is licensed, and the sake of information usage it would be ideal to release this or at least claim a different licensing option.

I appreciate you maintaining a central database, but I have no requirement to communicate outside of my network to another entity. Additionally, it raises question about the use of an open-source project to supply closed-source data that will otherwise not be made publicly available.

This can leave potential for financial uses without the direct knowledge of the participants. I was only kindly asking for the sources to be released to all functions as dictated by the License agreement and for privacy concerns and constraints.

and this would be part of the license I hold in concern:

" For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have.  You must make sure that they, too, receive or can get the
source code.  And you must show them these terms so they know their
rights."
Title: Re: Items and logging the chat.
Post by: Noer on July 06, 2008, 03:44:01 am
Noer, this project appears to be released under the GNU license as far as I can tell...

And within that license it states we should have appropriate access to all sources according to that being developed...

If this is going to be a privately released project or toolset, please release it under a different license as currently you hold yourself applicable to the GNU agreement in your current distribution method.


This is more of a question of following the appropriate community guidelines from within the GNU community. I understand I can decode your source and build my own applicable php submission, but for the sake of how this is licensed, and the sake of information usage it would be ideal to release this or at least claim a different licensing option.

I appreciate you maintaining a central database, but I have no requirement to communicate outside of my network to another entity. Additionally, it raises question about the use of an open-source project to supply closed-source data that will otherwise not be made publicly available.

This can leave potential for financial uses without the direct knowledge of the participants. I was only kindly asking for the sources to be released to all functions as dictated by the License agreement and for privacy concerns and constraints.

and this would be part of the license I hold in concern:

" For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have.  You must make sure that they, too, receive or can get the
source code.  And you must show them these terms so they know their
rights."

Its very simple to disable the module if you don't feel like using it. Rename it to "_items.php" or delete it from the module-folder. The code is opensource, only thing not available is the data from the items - because of the reasons I already explained you. If it was made available for download it would discourage people from using the module and therefore making the item database less populated. That the data is stored centrally and not made available for download breaks nothing in the GPL v2 - and I can inform you that it has worked like this for ages in Anarchy Online. It is no different than if you made a module that used Google from it, I doubt you would ask for Google's source code then.

Quite frankly I don't understand why you are gonna make such a fuzz out of it. Its as if you think theres some magically secret information I have on the items - but I only have what everyone else has. Item ID, level requirement, hash and item name. Not gonna bother answer anymore of these posts on this topic from you and you wont get the data for download.
Title: Re: Items and logging the chat.
Post by: Lisa on July 06, 2008, 03:54:13 am
Noer, this project appears to be released under the GNU license as far as I can tell...

And within that license it states we should have appropriate access to all sources according to that being developed...
The database is NOT GPL'ed and is not a part of the bot, the bot can integrate with the database by a plugin who's source is publically available.

If this is going to be a privately released project or toolset, please release it under a different license as currently you hold yourself applicable to the GNU agreement in your current distribution method.
I'm pretty sure MySQL is available under a different license.

And in short, quit yer bitching. The GPL does not apply where there is no GPL, stop acting like it does.
Title: Re: Items and logging the chat.
Post by: figgy on July 06, 2008, 04:45:37 am
Lisa, when you release something under a license it adheres the portions within as far as I was aware with most developed projects. If it's not GPL'd, why include the license file?

Additionally, I'm not asking for the database or it's information within, I am asking for the root PHP code that is paired with the bot "module" itself for the purposes of creating our own databases at will as a function of the application release. It wasn't a matter of concern to request the actual data itself as I would never want to violate a privacy constraint through someone elses submitted data without a prior notification and agreement with them.

That being said, my initial point and concern still stands distributed "within the source" is still part of the project. Granted I have seen other modules that are released seperately within their own licensing constraints.

Also, the official site itself on google code states this is a GPLv2 release:
"Bebot Hyborian is distributed under its original GPL v2 license. This means in short that you are allowed to modify and release updates to the bot as long as you credit the original contributors. If you release anything using a modified version of this bot you have to release the complete source code of your modified bot under a GPL v2 license aswell."
Title: Re: Items and logging the chat.
Post by: Vhab on July 06, 2008, 10:50:53 am
Having released projects under GPL myself, I can state you misunderstood GPL.
I'll try to keep this simple with a few examples.

It applies to a single package that has been released.
If you release binaries and related resource files under GPL, you need to make the source available (with a GPL notice)
Also, you can't release non-GPL stuff in the same package as GPL stuff. However, you can release them as separate packages and require the user to combine them.

Now when it comes to Noer's database. He didn't release the source, he didn't release the binaries. Infact, all he did was make it available through a web service.
Even if the source for that service was GPL he's still not obligated to release till he distributes a binary version (or the source ofcourse, but that's a given).
Infact, Noer could state the data the service feeds is available under GPL and still legally keep the source of the service closed-source.

What GPL essentially does is prevent people from releasing binaries without source and restrict all further projects derived upon it to GPL (or compatible license).
Do note, that as long as an application using GPL code is not released, the author has no obligation to release their source code. For example, several MMO's are known to use GPL libraries in their server software.

You're trying to stretch GPL way too far and you're making yourself look like an ass in the process.
Title: Re: Items and logging the chat.
Post by: Alreadythere on July 06, 2008, 11:01:16 am
BeBot itself is under GPL2. Noer is adhering to those rules, and everything used directly by his AoC version is published.

The items module is using an external web service. Nowhere in the GPL2 is any requirement that external services used by GPL2 software have to be published too.

If you don't like using a service you know nothing about and don't trust Noer enough to run a community friendly service feel free to disable the module or stop using the bot. If you got some privacy issues about Noer saving IPs and/or botnames for some statistics (and perhaps due to legal requirements) it's the same.

Every central service offered to the AoC community will run into the same problem: do we trust the one offering the service? AO services have the same problem, but nobody who offered a service there has broken faith as far as I know.

To answer your point about a copy of the database: Noer has published the information transmitted. Simply go and create a table using those information to create your local copy, and then adapt your private items module to use it. Done.

Closing this topic, it has gone too far from the original discussion.

PS: I wrote this while Vhab was writing his post.
Title: Re: Items and logging the chat.
Post by: Khalem on July 06, 2008, 11:01:32 am
Vhab beat me to it.

Now please respect Noer's decision to keep the database backend private in order to make it a more useful tool for the vast majority of users.

You should have no issues whatsoever writing up or having someone else write up a backend for your own use, so you can collect and utilize your own data.

SimplePortal 2.3.7 © 2008-2024, SimplePortal