Tyrannis: улучшения в API
reported by CCP Stillman| 2010.05.17 |  Оригинал блога

Приветствую.

Как Вы уже наверное знаете в Tyrannis-е мы представим вашему вниманию календарь и  обновленные контакты. Кроме доступа к ним из игры и через  EVE Gate мы предоставим соответствующие API для доступа к этому новому функционалу из ваших собственных приложений. Но кроме введения этих новых функций API, мы также внесли изменения как в уже существующие API, и кроме того добавили две новые функции в API POS-ов, для упрощения работы с ними.

Несмотря на то, что  EVE Gate - это значительный шаг на пути предоставления доступа к игровой вселенной вне игры, мы так же готовы предоставить Вам возможность получать данные из контактов и календаря из ваших собственных приложений, работающих как на настольных, таки на мобильных, так и на хрен еще знает каких ( ;-) ) платформах, которые вы сможете написать сами и максимально приспособить под свои нужды, поделившись ими и с другими игроками.

Календарь

Calendar API состоит из двух запросов, оба из которых требуют полный API ключ:

[*]/corp/ContactList.xml.aspx
[*]corporateContactList
[*]contactID, contactName, standing
[*]allianceContactList
[*]contactID, contactName, standing
[*]/char/ContactList.xml.aspx
[*]contactID, contactName, inWatchList, standing
[*]/char/ContactNotifications.xml.aspx
[*]notificationID, senderID, senderName, sentDate,  messageData

Несколько замечаний касательно особенностей Calendar API:

[*]В связи с тем, что отсылка уведомлений(Contact Notifications) возможно только для чаров, только ContactList.xml.aspx API доступен как для чаров, так и для корпораций.
[*]Кроме того, альянсы так же получили контакты, и вы сможете их выгрузить вместе с контактами корпорации.
[*]ContactNotification.xml.aspx позволяет получить все не прочтенные уведомления из вашего почтового ящика. Таким образом, все прочтенные уведомления не будут доступны через API.

POS-ы.

В  Tyrannis-е мы предоставляем вам возможность определять, из контактов корпы или альянса будут браться стендинги для POS-ов. Как следствие, нам пришлось изменить структуру StarbaseDetail.xml.aspx, для соответствия этим изменениям. Тег combatSettings теперь содержит элемент "useStandingsFrom", атрибут ownerID  которого указывает на соответствующую корпу или альянс, чьи стендинги будет использовать данный POS. Выглядеть это будет примерно так:
http://cdn1.eveonline.com/community/devblog/2010/ApiDevBlog.jpg

Оутпосты

Новые функции Outpost API позволят вам получить информацию о корпоративных оутпостах, для этого необходим полный директорский(или ЦЕО) ключ той корпорации, кому принадлежат эти оутпосты.

[*]/corp/OutpostList.xml.aspx
[*]stationID, ownerID, stationName, solarSystemID,  dockingCostPerShipVolume, officeRentalCost, stationTypeID,  reprocessingEfficiency, reprocessingStationTake,  standingOwnerID
[*]/corp/OutpostServiceDetail.xml.aspx?itemID=
[*]stationed, ownerID, serviceName, minStanding,  surchargePerBadStanding, discountPerGoodStanding

Два важных замечания:

[*]Как и для POS-ов, присутствует ownerID, определяющий источник стендингов.
[*]Если сервисы имеют значения по умолчанию, то они не будут отображены в OutpostServiceDetail.xml.aspx.

Заключение

Мы надеемся, что вы сможете с пользой для себя использовать эти новый API функции. Ну и как всегда, вопросы и замечания - приветствуются.

Обсуждение на Ив-ру.