Получение списка продуктов

Для получения продуктов необходимо использовать метод getProducts(ids):

func _get_products():
    if billing != null:
        billing.getProducts([
            "example1",
            "example2"
        ])
 
func _on_get_products(data: Dictionary): 
    if data['status'== 'success' and data.has('items'):
        var items = data['items']
        for key in items:
            print(items[key])
    elif data['status'== 'failure':
        print('failure')
        print(data['message'])

Метод _on_get_products(data: Dictionary) — это обработчик сигнала rustore_get_products, который получает сообщение со списком доступных товаров.

  • ids  список идентификаторов продуктов. 

По ключу data['status']  хранится статус выполнения запроса. Возможные значения:

  • success  удачное выполнение запроса. В этом случае по ключу data['items'] будет храниться список доступных продуктов.
  • failure — произошла ошибка запроса. В ключе data['message'] хранится сообщение ошибки.

Доступные поля продукта:

  • product_id — идентификатор продукта; 
  • product_type — тип продукта; 
  • product_status — статус продукта; 
  • price_lable — отформатированная цена товара, включая валютный знак на языке [language];
  • price — цена в минимальных единицах (в копейках); 
  • currency — код валюты ISO 4217; 
  • language — язык, указанный с помощью BCP 47 кодирования; 
  • title — название продукта на языке [language];
  • description — описание продукта на языке [language]; 
  • image_url — ссылка на картинку; 
  • promo_image_url — ссылка на промо картинку;
  • subscription — описание подписки, возвращается только для продуктов с типом subscription.

Доступные поля subscription

  • subscription_period — период подписки;
  • free_trial_period — пробный период подписки;
  • grace_period — льготный период подписки;
  • introductory_price — отформатированная вступительная цена подписки, включая знак валюты, на языке product:language;
  • introductory_price_amount — вступительная цена в минимальных единицах валюты (в копейках);
  • introductory_price_period — расчетный период вступительной цены.

Доступные поля для кючей  subscription_period, free_trial_period, grace_period и introductory_price_period

  • years — количество лет;
  • months — количество месяцев;
  • days — количество дней.
Обновлено 7 августа 2023 г.
Was this information helpful?