{"id":508,"date":"2019-08-20T19:00:26","date_gmt":"2019-08-20T16:00:26","guid":{"rendered":"http:\/\/www.maxx.net.ua\/?p=508"},"modified":"2019-12-31T21:26:08","modified_gmt":"2019-12-31T19:26:08","slug":"%d0%ba%d0%b5%d1%80%d1%83%d0%b2%d0%b0%d0%bd%d0%bd%d1%8f-%d0%ba%d0%be%d0%bd%d0%b4%d0%b8%d1%86%d1%96%d0%be%d0%bd%d0%b5%d1%80%d0%be%d0%bc-%d0%b7%d0%b0-%d0%b4%d0%be%d0%bf%d0%be%d0%bc%d0%be%d0%b3%d0%be","status":"publish","type":"post","link":"https:\/\/www.maxx.net.ua\/?p=508","title":{"rendered":"\u041a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f \u043a\u043e\u043d\u0434\u0438\u0446\u0456\u043e\u043d\u0435\u0440\u043e\u043c \u0437\u0430 \u0434\u043e\u043f\u043e\u043c\u043e\u0433\u043e\u044e OpenHAB"},"content":{"rendered":"<p>\u041a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f \u043a\u043e\u043d\u0434\u0438\u0446\u0456\u043e\u043d\u0435\u0440\u043e\u043c \u0437\u0430 \u0434\u043e\u043f\u043e\u043c\u043e\u0433\u043e\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0438 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0456\u0457 \u0431\u0443\u0434\u0438\u043d\u043a\u0443 \u043c\u043e\u0436\u0435 \u0431\u0443\u0442\u0438 \u043a\u043e\u0440\u0438\u0441\u043d\u0438\u043c, \u0430\u043b\u0435 \u0431\u0456\u043b\u044c\u0448\u0456\u0441\u0442\u044c \u0434\u0435\u0448\u0435\u0432\u0438\u0445 \u0434\u043e\u043c\u0430\u0448\u043d\u0456\u0445 \u043a\u043e\u043d\u0434\u0438\u0446\u0456\u043e\u043d\u0435\u0440\u0456\u0432 \u043d\u0435 \u043c\u0430\u044e\u0442\u044c \u0456\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0456\u0432 \u0434\u043b\u044f \u043a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f. \u0412\u043e\u043d\u0438 \u043c\u043e\u0436\u0443\u0442\u044c \u043a\u0435\u0440\u0443\u0432\u0430\u0442\u0438\u0441\u044c \u0442\u0456\u043b\u044c\u043a\u0438 \u0437\u0430 \u0434\u043e\u043f\u043e\u043c\u043e\u0433\u043e\u044e \u0456\u043d\u0444\u0440\u0430\u0447\u0435\u0440\u0432\u043e\u043d\u043e\u0433\u043e \u043f\u0443\u043b\u044c\u0442\u0430 \u043a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f. \u0413\u0430\u0440\u043d\u0430 \u043d\u043e\u0432\u0438\u043d\u0430 \u0443 \u0442\u043e\u043c\u0443, \u0449\u043e \u0437\u0440\u043e\u0431\u0438\u0442\u0438\u00a0 \u043f\u0440\u0438\u0441\u0442\u0440\u0456\u0439 \u043a\u043e\u0442\u0440\u0438\u0439 \u0431\u0443\u0434\u0435 \u0432\u0456\u0434\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u0438 \u043d\u0430 \u043a\u043e\u043d\u0434\u0438\u0446\u0456\u043e\u043d\u0435\u0440 \u0442\u0430\u043a\u0438 \u0441\u0430\u043c\u0456 \u043a\u043e\u043c\u0430\u043d\u0434\u0438 \u044f\u043a \u043f\u0443\u043b\u044c\u0442 \u043d\u0435 \u0441\u043a\u043b\u0430\u0434\u043d\u043e. \u0412 \u0456\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0456 \u043c\u043e\u0436\u043d\u0430 \u0437\u043d\u0430\u0439\u0442\u0438 \u043a\u0456\u043b\u044c\u043a\u0430 \u0433\u043e\u0442\u043e\u0432\u0438\u0445 \u0431\u0456\u0431\u043b\u0456\u043e\u0442\u0435\u043a, \u043c\u0435\u043d\u0456 \u0431\u0456\u043b\u044c\u0448 \u0441\u043f\u043e\u0434\u043e\u0431\u0430\u043b\u0430\u0441\u044c\u00a0<a href=\"https:\/\/github.com\/ToniA\/arduino-heatpumpir\">arduino-heatpumpir<\/a>. \u0412\u043e\u043d\u0430 \u043f\u0456\u0434\u0442\u0440\u0438\u043c\u0443\u0454 arduino, ESP8266 \u0442\u0430 \u0437 \u043c\u043e\u0454\u044e \u0434\u043e\u043f\u043e\u043c\u043e\u0433\u043e\u044e &#8211; ESP32.<\/p>\n<p><strong>arduino-heatpumpir<\/strong> \u0446\u0435 \u0431\u0456\u0431\u043b\u0456\u043e\u0442\u0435\u043a\u0430, \u044f\u043a\u0430 \u0434\u043e\u0437\u0432\u043e\u043b\u044f\u0454 \u043a\u0435\u0440\u0443\u0432\u0430\u0442\u0438 \u043a\u043e\u043d\u0434\u0438\u0446\u0456\u043e\u043d\u0435\u0440\u0430\u043c\u0438 \u0437 \u044f\u043a\u043e\u0433\u043e\u0441\u044c \u043a\u043e\u0434\u0443, \u0446\u0435 \u043d\u0435 \u0433\u043e\u0442\u043e\u0432\u0435 \u0440\u0456\u0448\u0435\u043d\u043d\u044f. \u0414\u043b\u044f \u043a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f \u044f \u0431\u0430\u0436\u0430\u044e \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0432\u0430\u0442\u0438 <strong>OpenHAB<\/strong>\u00a0 \u0437\u0430 \u0434\u043e\u043f\u043e\u043c\u043e\u0433\u043e\u044e MQTT. \u0423 \u044f\u043a\u043e\u0441\u0442\u0456 \u0430\u043f\u0430\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u0437\u0430\u0431\u0435\u0437\u043f\u0435\u0447\u0435\u043d\u043d\u044f \u044f \u0431\u0443\u0434\u0443 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0432\u0430\u0442\u0438 <a href=\"http:\/\/www.maxx.net.ua\/?p=484\">ESP32 \u043c\u043e\u0434\u0443\u043b\u044c \u0437 \u043f\u0456\u0434\u0442\u0440\u0438\u043c\u043a\u043e\u044e Ethernet<\/a>. \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043d\u0435 \u0437\u0430\u0431\u0435\u0437\u043f\u0435\u0447\u0435\u043d\u043d\u044f \u043c\u043e\u0434\u0443\u043b\u044f &#8211; <a href=\"https:\/\/esphome.io\/\">ESPHome<\/a>. \u0423 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0456 \u0442\u0440\u0435\u0431\u0430 \u0441\u0442\u0432\u043e\u0440\u0438\u0442\u0438 \u0442\u0430\u043a\u0435 \u0440\u0456\u0448\u0435\u043d\u043d\u044f:<\/p>\n<p><a href=\"https:\/\/www.maxx.net.ua\/wp-content\/uploads\/2019\/08\/openhab-conditioner.png\"><img loading=\"lazy\" class=\"aligncenter wp-image-509 size-full\" src=\"https:\/\/www.maxx.net.ua\/wp-content\/uploads\/2019\/08\/openhab-conditioner.png\" alt=\"\" width=\"611\" height=\"151\" srcset=\"https:\/\/www.maxx.net.ua\/wp-content\/uploads\/2019\/08\/openhab-conditioner.png 611w, https:\/\/www.maxx.net.ua\/wp-content\/uploads\/2019\/08\/openhab-conditioner-300x74.png 300w\" sizes=\"(max-width: 611px) 100vw, 611px\" \/><\/a><\/p>\n<p><!--more-->\u0421\u0442\u0432\u043e\u0440\u044e\u0454\u043c\u043e \u043a\u043e\u043d\u0444\u0456\u0433\u0443\u0440\u0430\u0446\u0456\u044e \u0434\u043b\u044f <strong>ESPHome<\/strong>:<\/p>\n<pre><code class=\"language-yaml\">esphome:\r\n  name: heatpumpcontroller\r\n  platform: ESP32\r\n  board: wesp32\r\n  includes:\r\n    - heatpumpcontroller.h\r\n  libraries:\r\n    - \"HeatpumpIR\"\r\n    - \"Adafruit BMP085 Library\"\r\n\r\nweb_server:\r\n  port: 80    \r\n\r\nmqtt:\r\n  broker: 192.168.0.101\r\n\r\nethernet:\r\n  type: LAN8720\r\n  mdc_pin: GPIO16\r\n  mdio_pin: GPIO17\r\n  clk_mode: GPIO0_IN\r\n  phy_addr: 0\r\n\r\ni2c:\r\n  sda: 33\r\n  scl: 5\r\n  scan: True  \r\n\r\nsensor:\r\n  - platform: bmp085\r\n    temperature:\r\n      id: bmp085_temperature\r\n      name: \"Outside Temperature\"\r\n    pressure:\r\n      name: \"Outside Pressure\"\r\n    update_interval: 60s\r\n\r\nbinary_sensor:\r\n  - platform: gpio\r\n    pin: GPIO15\r\n    name: \"Switch\"    \r\n    on_press:\r\n      then:\r\n        - climate.control:\r\n            id: my_cliamte\r\n            mode: COOL\r\n            target_temperature: 21\u00b0C\r\n\r\nclimate:\r\n  - platform: custom\r\n    id: my_custom_climate\r\n    lambda: |-\r\n      auto my_custom_climate = new MyHeatPumpClimate(bmp085_temperature);\r\n      App.register_component(my_custom_climate);\r\n      return {my_custom_climate};\r\n    climates:\r\n      - name: \"My Custom Climate\"\r\n        id: my_cliamte\r\n\r\n# Enable logging\r\nlogger:\r\n\r\n# Enable Home Assistant API\r\napi:\r\n  password: \"otapass\"\r\n\r\nota:\r\n  password: \"otapass\"<\/code><\/pre>\n<pre class=\"lang:yaml decode:true \"><\/pre>\n<p>\u0426\u044f \u043a\u043e\u043d\u0444\u0456\u0433\u0443\u0440\u0430\u0446\u0456\u044f \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0454 \u0441\u043f\u0435\u0446\u0456\u0430\u043b\u044c\u043d\u043e \u0441\u0442\u0432\u043e\u0440\u0435\u043d\u0435 \u0440\u043e\u0437\u0448\u0438\u0440\u0435\u043d\u043d\u044f \u0434\u043b\u044f \u043a\u043b\u0456\u043c\u0430\u0442-\u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430.\u00a0 \u0414\u043e\u0434\u0430\u0442\u043a\u043e\u0432\u043e \u0446\u044f \u043a\u043e\u043d\u0444\u0456\u0433\u0443\u0440\u0430\u0446\u0456\u044f \u043c\u0430\u0454 \u043c\u043e\u0436\u043b\u0438\u0432\u0456\u0441\u0442\u044c \u0437\u0430 \u0434\u043e\u043f\u043e\u043c\u043e\u0433\u043e\u044e \u043a\u043d\u043e\u043f\u043a\u0438 \u043a\u0435\u0440\u0443\u0432\u0430\u0442\u0438 \u043a\u043e\u043d\u0434\u0438\u0446\u0456\u043e\u043d\u0435\u0440\u043e\u043c, \u0446\u044f \u043c\u043e\u0436\u043b\u0438\u0432\u0456\u0441\u0442\u044c \u0437\u0440\u043e\u0431\u043b\u0435\u043d\u0430 \u0442\u0456\u043b\u044c\u043a\u0438 \u0434\u043b\u044f \u0442\u0435\u0441\u0442\u0456\u0432.<\/p>\n<p>\u0412\u0438\u0445\u0456\u0434\u043d\u0438\u0439 \u043a\u043e\u0434 \u0446\u044c\u043e\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f:<\/p>\n<pre><code class=\"language-cpp\">#include \"esphome.h\"\r\n\r\n#include \r\n#include \r\n\r\n\r\nusing namespace esphome::climate;\r\n\r\nclass MyHeatPumpClimate : public Component, public Climate {\r\n public:\r\n  \/\/ constructor\r\n\r\n  MyHeatPumpClimate(sensor::Sensor *sensor) {\r\n    this-&gt;sensor_ = sensor;\r\n  }\r\n\r\n  void setup() override {\r\n    heatpumpIR = new R51MHeatpumpIR();\r\n    powerModeCmd = POWER_OFF;\r\n    operatingModeCmd = MODE_AUTO;\r\n    fanSpeedCmd = FAN_AUTO;\r\n    temperatureCmd = 22;\r\n    swingVCmd = VDIR_AUTO;\r\n    swingHCmd = HDIR_AUTO;\r\n    \/\/this-&gt;sensor_-&gt;add_on_state_callback([this](float state) {\r\n      \/\/this-&gt;current_temperature = state;\r\n      \/\/ control may have changed, recompute\r\n      \/\/this-&gt;compute_state_();\r\n      \/\/ current temperature changed, publish state\r\n      \/\/this-&gt;publish_state();\r\n    \/\/});\r\n    \/\/this-&gt;current_temperature = this-&gt;sensor_-&gt;state;\r\n    ESP_LOGI(\"custom\", \"Setup climat OK\");\r\n  }\r\n\r\n  ClimateTraits traits() override {\r\n      ClimateTraits climateTraits;\r\n      climateTraits.set_supports_current_temperature(true);\r\n      climateTraits.set_supports_two_point_target_temperature(false);\r\n      climateTraits.set_supports_auto_mode(true);\r\n      climateTraits.set_supports_cool_mode(true);\r\n      climateTraits.set_supports_heat_mode(true);\r\n      climateTraits.set_supports_away(false);\r\n      return climateTraits;\r\n  }\r\n\r\n  void control(const ClimateCall &amp;call) {\r\n    if (call.get_mode().has_value())\r\n        this-&gt;mode = *call.get_mode();\r\n    if (call.get_target_temperature().has_value()) {\r\n      ESP_LOGI(\"custom_heat\", \"Set temp to : %f\", *call.get_target_temperature());\r\n      ESP_LOGI(\"custom_heat\", \"Old: %i\", temperatureCmd);\r\n      temperatureCmd =  *call.get_target_temperature();     \r\n      ESP_LOGI(\"custom_heat\", \"New: %i\", temperatureCmd);\r\n    }\r\n    \/\/if (call.get_target_temperature_low().has_value())\r\n    \/\/    this-&gt;target_temperature_low = *call.get_target_temperature_low();\r\n    \/\/if (call.get_target_temperature_high().has_value())\r\n    \/\/    this-&gt;target_temperature_high = *call.get_target_temperature_high();\r\n    \/\/if (call.get_away().has_value())\r\n    \/\/    this-&gt;change_away_(*call.get_away());\r\n    this-&gt;compute_state_();\r\n    this-&gt;publish_state();\r\n  }\r\n\r\n  void compute_state_() {\r\n    switch (this-&gt;mode) {\r\n      case climate::CLIMATE_MODE_OFF:\r\n        powerModeCmd = POWER_OFF;\r\n        break;\r\n      case climate::CLIMATE_MODE_AUTO:\r\n        powerModeCmd = POWER_ON;\r\n        operatingModeCmd = MODE_AUTO;\r\n        break;\r\n      case climate::CLIMATE_MODE_COOL:\r\n        powerModeCmd = POWER_ON;\r\n        operatingModeCmd = MODE_COOL;\r\n        break;\r\n      case climate::CLIMATE_MODE_HEAT:\r\n        powerModeCmd = POWER_ON;\r\n        operatingModeCmd = MODE_HEAT;\r\n        break;\r\n      default:\r\n      ;\r\n    }\r\n  }\r\n\r\n  void publish_state() {\r\n    ESP_LOGI(\"custom_heat\", \"Sed data via IR  power : %i, mode: %i, fan: %i, temp: %i, sV: %i, sH: %i\",  powerModeCmd, operatingModeCmd, fanSpeedCmd, temperatureCmd, swingVCmd, swingHCmd);\r\n    IRSenderESP32 irSender(2, 0);  \r\n    heatpumpIR-&gt;send(irSender, powerModeCmd, operatingModeCmd, fanSpeedCmd, temperatureCmd, swingVCmd, swingHCmd);\r\n  }\r\n\r\n protected:\r\n    HeatpumpIR *heatpumpIR;\r\n    uint8_t powerModeCmd;\r\n    uint8_t operatingModeCmd;\r\n    uint8_t fanSpeedCmd;\r\n    uint8_t temperatureCmd;\r\n    uint8_t swingVCmd;\r\n    uint8_t swingHCmd;\r\n    sensor::Sensor *sensor_{nullptr};\r\n\r\n};<\/code><\/pre>\n<p>\u0423 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0456 \u0446\u0438\u043c \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043c\u043e\u0436\u043d\u0430 \u043a\u0435\u0440\u0443\u0432\u0430\u0442\u0438 \u0437\u0430 \u0434\u043e\u043f\u043e\u043c\u043e\u0433\u043e\u044e MQTT \u043d\u0430\u0441\u0442\u0443\u043f\u043d\u0438\u0445 MQTT \u043a\u043e\u043c\u0430\u043d\u0434:<\/p>\n<p>\u041a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f \u0440\u0435\u0436\u0438\u043c\u043e\u043c &#8211;\u00a0<strong>heatpumpcontroller\/climate\/my_custom_climate\/mode\/command<\/strong>, \u043c\u043e\u0436\u043d\u0430 \u0432\u0456\u0434\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u0438 OFF, AUTO, COOL, HEAT<\/p>\n<p>\u041a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u043e\u044e &#8211;\u00a0<strong>heatpumpcontroller\/climate\/my_custom_climate\/target_temperature\/command<\/strong>, \u043c\u043e\u0436\u043d\u0430 \u0432\u0456\u0434\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u0438 \u0446\u0456\u043b\u0435 \u0447\u0438\u0441\u043b\u043e, \u043d\u0430\u043f\u0440\u0438\u043a\u043b\u0430\u0434 22, 23 \u0442\u0430 \u0434\u0430\u043b\u0456 \u0437\u0430 \u0431\u0430\u0436\u0430\u043d\u043d\u044f\u043c.<\/p>\n<p>\u0423\u0432\u0435\u0441\u044c \u043a\u043e\u0434 \u043c\u043e\u0436\u043d\u0430 \u0437\u043d\u0430\u0439\u0442\u0438 \u043d\u0430 <a href=\"https:\/\/github.com\/maxx-ukoo\/esphome-heatpump-ir\">github<\/a><\/p>\n<p>\u041a\u043e\u0434 \u043f\u0440\u043e\u0442\u0435\u0441\u0442\u043e\u0432\u0430\u043d\u043e \u043d\u0430 \u043a\u043e\u043d\u0434\u0438\u0446\u0456\u043e\u043d\u0435\u0440\u0438 SENSEI \u0437 \u043f\u0443\u043b\u044c\u0442\u043e\u043c R51M\/E.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u041a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f \u043a\u043e\u043d\u0434\u0438\u0446\u0456\u043e\u043d\u0435\u0440\u043e\u043c \u0437\u0430 \u0434\u043e\u043f\u043e\u043c\u043e\u0433\u043e\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0438 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0456\u0457 \u0431\u0443\u0434\u0438\u043d\u043a\u0443 \u043c\u043e\u0436\u0435 \u0431\u0443\u0442\u0438 \u043a\u043e\u0440\u0438\u0441\u043d\u0438\u043c, \u0430\u043b\u0435 \u0431\u0456\u043b\u044c\u0448\u0456\u0441\u0442\u044c \u0434\u0435\u0448\u0435\u0432\u0438\u0445 \u0434\u043e\u043c\u0430\u0448\u043d\u0456\u0445 \u043a\u043e\u043d\u0434\u0438\u0446\u0456\u043e\u043d\u0435\u0440\u0456\u0432 \u043d\u0435 \u043c\u0430\u044e\u0442\u044c \u0456\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0456\u0432 \u0434\u043b\u044f \u043a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f. \u0412\u043e\u043d\u0438 \u043c\u043e\u0436\u0443\u0442\u044c \u043a\u0435\u0440\u0443\u0432\u0430\u0442\u0438\u0441\u044c \u0442\u0456\u043b\u044c\u043a\u0438 \u0437\u0430 \u0434\u043e\u043f\u043e\u043c\u043e\u0433\u043e\u044e \u0456\u043d\u0444\u0440\u0430\u0447\u0435\u0440\u0432\u043e\u043d\u043e\u0433\u043e \u043f\u0443\u043b\u044c\u0442\u0430 \u043a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f. \u0413\u0430\u0440\u043d\u0430 \u043d\u043e\u0432\u0438\u043d\u0430 \u0443 \u0442\u043e\u043c\u0443, \u0449\u043e \u0437\u0440\u043e\u0431\u0438\u0442\u0438\u00a0 \u043f\u0440\u0438\u0441\u0442\u0440\u0456\u0439 \u043a\u043e\u0442\u0440\u0438\u0439 \u0431\u0443\u0434\u0435 \u0432\u0456\u0434\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u0438 \u043d\u0430 \u043a\u043e\u043d\u0434\u0438\u0446\u0456\u043e\u043d\u0435\u0440 \u0442\u0430\u043a\u0438 \u0441\u0430\u043c\u0456 \u043a\u043e\u043c\u0430\u043d\u0434\u0438 \u044f\u043a \u043f\u0443\u043b\u044c\u0442 \u043d\u0435 \u0441\u043a\u043b\u0430\u0434\u043d\u043e. \u0412 \u0456\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0456 \u043c\u043e\u0436\u043d\u0430 \u0437\u043d\u0430\u0439\u0442\u0438 \u043a\u0456\u043b\u044c\u043a\u0430 \u0433\u043e\u0442\u043e\u0432\u0438\u0445 \u0431\u0456\u0431\u043b\u0456\u043e\u0442\u0435\u043a, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[6,15],"tags":[29,31,30],"_links":{"self":[{"href":"https:\/\/www.maxx.net.ua\/index.php?rest_route=\/wp\/v2\/posts\/508"}],"collection":[{"href":"https:\/\/www.maxx.net.ua\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.maxx.net.ua\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.maxx.net.ua\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.maxx.net.ua\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=508"}],"version-history":[{"count":7,"href":"https:\/\/www.maxx.net.ua\/index.php?rest_route=\/wp\/v2\/posts\/508\/revisions"}],"predecessor-version":[{"id":546,"href":"https:\/\/www.maxx.net.ua\/index.php?rest_route=\/wp\/v2\/posts\/508\/revisions\/546"}],"wp:attachment":[{"href":"https:\/\/www.maxx.net.ua\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=508"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.maxx.net.ua\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=508"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.maxx.net.ua\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=508"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}