EVE Technology Lab

 
  • Topic is locked indefinitely.
27 Pages123Next pageLast page
 

Yapeal PHP API library (version 1.0.5)

First post
Author
#1 - 2011-09-08 14:20:41 UTC  |  Edited by: Dragonaire
Yapeal has now been in development for about five years and proven to be useful for many people in their Eve API applications and websites. For a description of what it does check out the project on GitHib.

Yapeal has now moved out of what I considered 'Beta' into 'Stable' stage of development. For people use to Mircosoft's way of doing things Yapeal is now XP vs Win98 (It actually works for more than an hour) Twisted

Yapeal is licensed under GNU LGPL 3

***NEW***
HOME PAGE https://github.com/Dragonrun1/yapeal

You can find the old one at:
OLD PAGE https://sourceforge.net/projects/yapeal/

You can find my public API key on the home page of the Wiki as well.

It's now recommended that everyone uses Composer to install Yapeal. You'll now find Yapeal on Packagist. All developers should look at moving their own project to using Composer as it''ll make dependence management oh so much easier.

Older versions of Yapeal are still available through the Mercurial repository at:

https://sourceforge.net/p/yapeal/code/

They have also been import to GitHub and all new development will be done on GitHub so look there for information and updates.

For more information about Mercurial see http://mercurial.selenic.com/
Windows users may find http://tortoisehg.bitbucket.org/ easier to use.

Please report any bugs as an issue on GitHub (Preferred) or in this thread.

You can contact me through the developer info on GitHub.

Finds camping stations from the inside much easier. Designer of Yapeal for the Eve API. Check out the Yapeal PHP API Library thread.

#2 - 2011-09-08 14:32:21 UTC
Here an extend explanation of what Yapeal does since it a little different then the other PHP API libraries people are using.

It doesn't only grab the data from the API for you but also saves the new data into a MySQL database for you. It was made to be ran from a crontab job and works in the background to 'Auto-magically' as I call it, keep the database updated so all you have to do is work with the database tables not the API and XML. It's made to be set and forget once configured.

Some features:

  • Auto download of API data
  • Auto updating of database tables
  • Can be ran from crontab (preferred setup)
  • Can be run from command-line for debugging or special needs
  • Keeps track in the database of API cachedUntil times so it is API friendly even if ran every minute in crontab
  • Does optional local caching of XML file from API
  • Multiple corporations and multiple characters by just adding their information to database tables


Many other features but those are the main ones for now.

Finds camping stations from the inside much easier. Designer of Yapeal for the Eve API. Check out the Yapeal PHP API Library thread.

#3 - 2011-09-08 22:32:20 UTC  |  Edited by: Ruziel
Trying out the new keys version. Found one issue so far:

The schema for the size of the errorText field in the the eveErrorList table needs to be updated. The current size is VARCHAR(255), there's a new error being returned by the API with a text length of 305 characters or so.
Specifically error code 904 = "Your IP address has been temporarily blocked because it is causing too many errors. See the cacheUntil timestamp for when it will be opened again. IPs that continually cause a lot of errors in the API will be permanently banned, please take measures to minimize problematic API calls from your application."
Pandemic Legion
#4 - 2011-09-08 22:43:22 UTC
My only problem with Yapeal is the management of our api in the database,

I understand when this was brought up originally you said you wanted to leave this open to allow the dev to completely customise how he wants to store the keys.

However, i'm still confused on the proper storage and looking through the avilable wiki on google code didn't help me either.

Is there anything you could provide. For example a quick function on adding a single char / api and all options checked.


Meh.

#5 - 2011-09-09 00:29:06 UTC
PsyKzz wrote:
My only problem with Yapeal is the management of our api in the database,

I understand when this was brought up originally you said you wanted to leave this open to allow the dev to completely customise how he wants to store the keys.

However, i'm still confused on the proper storage and looking through the avilable wiki on google code didn't help me either.

Is there anything you could provide. For example a quick function on adding a single char / api and all options checked.





There are helper classes in class/util/ for managing keys.

EVEVERIFY - A recruiting API Verification and Audit Tool

Also try out Yapeal for your php api needs

Miko Kiun
#6 - 2011-09-09 05:49:33 UTC
Is there any current plan to incorporate the new feature in CharacterInfo.xml.aspx including employment history?
#7 - 2011-09-09 06:19:42 UTC
Not really in the main Yapeal code as for some unknown reason CCP decide to put an API that requires key etc in eve section where none of the other APIs do. Until they fix that by putting it where it belongs in char section it can't be supported really.
Having said that I will say that some work has been done to add what I call a retriever to Yapeal for stuff like during website sign up where you might just need one or two API calls without waiting on normal Yapeal crontab etc. I plan to make it more versatile when it comes to the parameters that you can have it pass to the APIs which should allow it to be used for some of the oddball APIs like CharacterInfo as well.

Finds camping stations from the inside much easier. Designer of Yapeal for the Eve API. Check out the Yapeal PHP API Library thread.

#8 - 2011-09-11 06:58:36 UTC
I've been working on updating some of the wiki pages for CAK and have finished with the last of the featured ones. Take a look and if something doesn't seem to be clear or you find an error let me know.

In other news I'm looking to merge branches/keys/ over to trunk/ soon as I believe it is complete and there doesn't seem to be any bugs. I've already made a last tag from the current pre-CAK trunk/ just to have it as a reference for the future. There is some work being done on contracts that I'm hoping can be merged into keys soon and once it's been tested and reviewed a little the process to make branches/keys/ the new trunk/ will begin.

I've also had someone come up with an idea for how to work around the issues surrounding the IMHO misplaced /eve/CharacterInfo API. If it proves out the API should be added to the grow number of APIs Yapeal supports.

Finds camping stations from the inside much easier. Designer of Yapeal for the Eve API. Check out the Yapeal PHP API Library thread.

Amarr Empire
#9 - 2011-09-13 01:41:27 UTC
Is there support yet for the new Contract API?
#10 - 2011-09-13 03:08:25 UTC
Fredrick Engly wrote:
Is there support yet for the new Contract API?



*Johnathan Roark whistles

EVEVERIFY - A recruiting API Verification and Audit Tool

Also try out Yapeal for your php api needs

#11 - 2011-09-13 03:17:04 UTC
I've been waiting to see if someone would finish the other couple contract APIs before releasing it (Looks at Roark) but doesn't look like that going to happen for a few more days anyway so I'll probably be merging what's been done into keys in the next day or two once it's been tested a little bit since QA (me) has found a couple problems and thought it might be a good idea Blink

Finds camping stations from the inside much easier. Designer of Yapeal for the Eve API. Check out the Yapeal PHP API Library thread.

Amarr Empire
#12 - 2011-09-13 06:05:29 UTC
groovy thx guys..

Is there a nublette way of upgrading also? svn update, database script to run?

Dont really want to loose whatever data I have in there at the moment but if I must then I must

#13 - 2011-09-13 18:24:51 UTC
Cant wait for an update. Thanks for your hard work.
#14 - 2011-09-13 23:13:28 UTC
Fredrick Engly wrote:
groovy thx guys..

Is there a nublette way of upgrading also? svn update, database script to run?

Dont really want to loose whatever data I have in there at the moment but if I must then I must




The way I would do it is first make a backup. Delete all of the util* tables. You may also want to delete all of the account tables as well. Run the createmysqltables.php file and see if it works.

EVEVERIFY - A recruiting API Verification and Audit Tool

Also try out Yapeal for your php api needs

#15 - 2011-09-14 04:42:26 UTC
As Johnathan Roark said make a good backup or two then delete the util* and account* tables and run the script. There are only minor changes to the other tables that it should handle without problems. You can find some more complete instructions in INSTALL.txt just insert the above in the correct places.

Quote:
Is there support yet for the new Contract API?
Merge the contract branch into keys and uploaded some updated archives on SourceForge as well. Work on the other two contract APIs is in progress as well.

Finds camping stations from the inside much easier. Designer of Yapeal for the Eve API. Check out the Yapeal PHP API Library thread.

#16 - 2011-09-15 04:30:09 UTC
Ok I've gone ahead and merged branches/keys into trunk/ Big smile It's as good as it was going to get in the near future and seems to be as bug free as can be without wider testing. enjoy.

revision 1228

Finds camping stations from the inside much easier. Designer of Yapeal for the Eve API. Check out the Yapeal PHP API Library thread.

#17 - 2011-09-15 15:17:45 UTC  |  Edited by: EcicIdol
Dragonaire,

I am a bit confused about the utilRegisteredCharacter and utilRegisteredCorporation.

In the utilRegisteredCorporation, I see 5 rows. http://i51.tinypic.com/2qdtr37.jpg

Could you explain what I am suppose to do with that? I have my new custom API key entered in the utilRegisteredKey The wording on your wiki is a bit off and I am confused. My goal is to pull the following data for my corp.

AccountBalance AssetList CorporationSheet Divisions WalletDivisions Logo IndustryJobs KillLog Attackers Items Victim MarketOrders MemberTracking Standings StarbaseDetail Fuel GeneralSettings StarbaseList WalletJournal WalletTransactions
#18 - 2011-09-15 21:08:32 UTC
You have the option to ignore it depending on your needs actually. Make sure you've read the updated http://code.google.com/p/yapeal/wiki/UtilDatabaseTableDependences and http://code.google.com/p/yapeal/wiki/UsingClassUtilClasses wiki pages as they have been updated in the last few days. You'll want to pay attention to the part about them being optional if registered_mode is set to that. Now to try to help out on understanding the table you asked about the classes use what are called magic methods to make the columns from the tables look like properties in the class. which makes setting and changing them very easy. You can also get them as well. There are also a couple methods addActiveAPI() and deleteActiveAPI() which let you just use the API names instead. To set the $corp->activeAPIMask directly you'll need to use a bitmap instead just like I show near the end there. Hopeful this little extra info will get you headed in the right way but if not I'll try to do a long explanation after work for you Blink

Finds camping stations from the inside much easier. Designer of Yapeal for the Eve API. Check out the Yapeal PHP API Library thread.

#19 - 2011-09-16 05:39:42 UTC  |  Edited by: EcicIdol
So what tables should I enter data into for corp API? Could you take a screenshot of the places to enter in data to pull corp info? Just some dummy info in a screenshot would be great. Thanks.
#20 - 2011-09-16 06:02:26 UTC  |  Edited by: Drapko Nitzhonot
EcicIdol wrote:
So what tables should I enter data into for corp API? Could you take a screenshot of the places to enter in data to pull corp info? Just some dummy info in a screenshot would be great. Thanks.


utilRegisteredCorporation


utilRegisteredKey

  • activeAPIMask: same as before
  • isActive: 1
  • keyID: it's the ID of your API key
  • proxy: if you don't know, don't touch it
  • vCode: it's the vCode of your API key


utilSections

  • corp row: change isActive to 1
27 Pages123Next pageLast page
Forum Jump