Мы уже некоторое время готовим новый движок для Виртономики. Основная концепция этого механизма - разделение предоставления данных и их представления. То есть, реализуется некоторый интерфейс (API) который позволяет получать данные из игры, не зависимо от их представления в разметке HTML в вашем браузере.
Я пока не готов дать доступ ко всем функциям нового движка, но могу его предоставить к наиболее необходимым методам, для того, чтобы вы могли разрабатывать скрипты, которые не чувствительны к изменениям дизайна Виртономики. Все данные будут предоставляются в формате JSON.
В этой теме вы можете оставлять свои пожелания: какие функции необходимы в первую очередь для реализации полезных скриптов для нашей игры.
Я не гарантирую, что своевременно буду удовлетворять желания наших уважаемых разработчиков скриптов, так как наши ресурсы для разработки весьма ограничены.
- список категорий продуктов product/categories
- список продуктов product/browse
- список розничных продуктов product/goods
два последних метода могут принимать параметр category_id в качестве фильтра
Наверное, самый ожидаемый метод.
Если вы авторизованы в игре, то можно просматривать информацию о своих предприятиях запросом:
unit/summary?id=<unit_id> - где unit_id это id предприятия
- информация о компании my/company
список предприятий своей компании:
company/units?id=<company_id>
можно передавать параметры pagesize и pagenum для постраничного получения данных
Во всех методах, которые возвращают списки, можно передавать в параметрах к этому запросу, необходимые значения полей в качестве фильтров. Например, запрос: company/units?id=<company_id>&unit_type_id=1817 вернет только офисы.
список контрактов:
по поставщикам unit/sale/contracts?id=<unit_id>
по закупкам unit/supply/contracts?id=<unit_id>
можно передавать product_id в качестве фильтра
финансовый отчет по компании:
company/report/finance/byitem?id=<company_id>
Если вы изменили данные предприятия в виртономике через интерфейс пользователя, то необходимо актуализировать данные предприятия, которые вы получали через API, так как для получения данных в самой виртономике и в новом движке используются разные механизмы кэширования.
Чтобы актуализировать данные предприятия, надо выполнить POST запрос: unit/refresh
в POST данных надо передать id=<unit id> и token=<post token>.
Post token нужно получить с помощью GET запроса token
- информация по зарплатам в городах geo/salary
- информация по трудовым ресурсам geo/labors
Оба запроса могут принимать фильтр geo=<country_id>[/<region_id>[/<city_id>]]. Например, geo=7060 - Казахстан, geo=7060/7063 или geo=0/7063 - регион: Южный Казахстан, geo=0/0/422189 - город Гавана.
- транспорт и стоимость доставки geo/transport
Запрос должен принимать параметры city_id - город отправки или назначения, product_id - товар и geo (аналогично параметру geo для запроса geo/salary) - пункт назначения или отправки.
- различные бонусы в странах geo/country/bonus
- таможенные, экспортные и импортные пошлины geo/country/duty Принимает параметр country_id.
- значения ЕНВД для региона geo/region/envd
- стоимость энергии для региона geo/region/energy
Запросы должны принимать параметр region_id
кобры счас многим не хватает ((
а в самой вирте нету функционала чтоб быстро что то найти
так что теперь если я хочу продать хлеб мне приходиться тыкать по всем городам проверяя спрос на хлеб в каждом
занимает это около 30 минут
а если попробовать открыть продуктовый магазин и проанализировать все товары то наверное недели будет мало ))
кобры счас многим не хватает ((
а в самой вирте нету функционала чтоб быстро что то найти
так что теперь если я хочу продать хлеб мне приходиться тыкать по всем городам проверяя спрос на хлеб в каждом
занимает это около 30 минут
а если попробовать открыть продуктовый магазин и проанализировать все товары то наверное недели будет мало ))
кобры счас многим не хватает ((
а в самой вирте нету функционала чтоб быстро что то найти
так что теперь если я хочу продать хлеб мне приходиться тыкать по всем городам проверяя спрос на хлеб в каждом
занимает это около 30 минут
а если попробовать открыть продуктовый магазин и проанализировать все товары то наверное недели будет мало ))
Вы из Сибири? А правда, что у Вас медведи по дорогам ходят?
Нет не правда, У нас дорог нет!
Номер нашего счета: 661899
//virtonomica.ru/virtonomica-big-business
Можно ли в marketing/report/trade/offers как-то задать целевой город/юнит, чтобы поля вроде transport_cost, brand_value_at_customer_city были ненулевыми? Т.е. чтобы получаемые данные соответствовали тем, что выводятся при закупках с конкретного юнита. https://virtonomica.ru/api/olga/main/marketing/report/trade/offers?product_id=1529
И еще пожелание:
Список содержит только офферы, открытые "Любому покупателю". Корпоративные, своей или определенным компаниям отсутствуют. Это очень неудобно и не особо полезно.
Не могли бы вы "персонализировать" результат, чтобы включить все доступные компании предложения?
А можно в АПИ бонусов городов добавить поддерживаемые отделы розницы?.. Я конечно все не пробовал смотреть, но на Вере в Коканде однозначно включена поддержка 2-х отделов, и она в Апи не отображается, и по другим городам которые пробовал массив retail везде пуст, это не тот массив где планировалось выводить эти данные? Что забавно эти параметры явно есть и в другом АПИ: https://virtonomica.ru/api/vera/main/geo/city/browse?app=adapter_vrt&format=html&tpl=geo%2Fcity%2Fbonuses&ajax=1&pagenum=1 но если их отображать без шаблона и не в формате html то данные так же не отображаются. тот же массив retail пуст.
А можно в АПИ бонусов городов добавить поддерживаемые отделы розницы?.. Я конечно все не пробовал смотреть, но на Вере в Коканде однозначно включена поддержка 2-х отделов, и она в Апи не отображается, и по другим городам которые пробовал массив retail везде пуст, это не тот массив где планировалось выводить эти данные? Что забавно эти параметры явно есть и в другом АПИ: https://virtonomica.ru/api/vera/main/geo/city/browse?app=adapter_vrt&format=html&tpl=geo%2Fcity%2Fbonuses&ajax=1&pagenum=1 но если их отображать без шаблона и не в формате html то данные так же не отображаются. тот же массив retail пуст.