From fcd390fa457d665a187d95d741ca31388bf0232f Mon Sep 17 00:00:00 2001 From: sasha80 Date: Thu, 13 Jun 2024 09:55:38 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A0=D0=B5=D1=84=D0=B0=D0=BA=D1=82=D0=BE?= =?UTF-8?q?=D1=80.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scenes/pribor-rtr/pribor-rtr.gd | 8 ++++---- scenes/pribor-rtr/request-rtr.gd | 29 ++++++++++++++--------------- 2 files changed, 18 insertions(+), 19 deletions(-) diff --git a/scenes/pribor-rtr/pribor-rtr.gd b/scenes/pribor-rtr/pribor-rtr.gd index 94c2625a..f4d68507 100644 --- a/scenes/pribor-rtr/pribor-rtr.gd +++ b/scenes/pribor-rtr/pribor-rtr.gd @@ -4,10 +4,10 @@ extends "res://scenes/контроль/прибор.gd" static var json_parser: JSON = JSON.new() -func get_paths(meta: String, paths: Array): +func get_paths_from_meta(meta: String, paths: Array, tokens: Array = ['[', ']', '.']): paths.clear() var i_chs = [] - for sep in ['[', ']', '.']: + for sep in tokens: var i = 0 while i != -1: i = meta.find(sep, i + 1) @@ -52,9 +52,9 @@ func _on_request_rtr_request_completed(result, _response_code, _headers, body: P map_data_to_item(json_parser.data, child, 'value0') map_data_to_item(json_parser.data, child, 'value1') for child in get_children(): + map_data_to_item(json_parser.data, child, 'state') map_data_to_item(json_parser.data, child, 'value0') map_data_to_item(json_parser.data, child, 'value1') - map_data_to_item(json_parser.data, child, 'value2') func map_data_to_item(data, item, value_name: StringName): @@ -64,7 +64,7 @@ func map_data_to_item(data, item, value_name: StringName): if meta == '': return var paths: = Array() - get_paths(meta, paths) + get_paths_from_meta(meta, paths) var ret_val: = [null, false] var paths_copy = paths.duplicate(true) tools.get_value_by_path(data, paths, ret_val) diff --git a/scenes/pribor-rtr/request-rtr.gd b/scenes/pribor-rtr/request-rtr.gd index 8272b833..9338e1db 100644 --- a/scenes/pribor-rtr/request-rtr.gd +++ b/scenes/pribor-rtr/request-rtr.gd @@ -2,20 +2,20 @@ extends HTTPRequest const RESULT_STRINGS = { - RESULT_SUCCESS: 'Request successful', - RESULT_CHUNKED_BODY_SIZE_MISMATCH: 'CHUNKED_BODY_SIZE_MISMATCH', - RESULT_CANT_CONNECT: 'Request failed while connecting', - RESULT_CANT_RESOLVE: 'Request failed while resolving', - RESULT_CONNECTION_ERROR: 'Request failed due to connection (read/write) error', - RESULT_TLS_HANDSHAKE_ERROR: 'Request failed on TLS handshake', - RESULT_NO_RESPONSE: 'Request does not have a response (yet)', - RESULT_BODY_SIZE_LIMIT_EXCEEDED: 'Request exceeded its maximum size limit, see body_size_limit', - RESULT_BODY_DECOMPRESS_FAILED: 'BODY_DECOMPRESS_FAILED', - RESULT_REQUEST_FAILED: 'Request failed (currently unused)', - RESULT_DOWNLOAD_FILE_CANT_OPEN: 'HTTPRequest couldn\'t open the download file', - RESULT_DOWNLOAD_FILE_WRITE_ERROR: 'HTTPRequest couldn\'t write to the download file', - RESULT_REDIRECT_LIMIT_REACHED: 'Request reached its maximum redirect limit, see max_redirects', - RESULT_TIMEOUT: 'TIMEOUT' } + RESULT_SUCCESS: 'Request successful', + RESULT_CHUNKED_BODY_SIZE_MISMATCH: 'Chunked body size mismatch', + RESULT_CANT_CONNECT: 'Request failed while connecting', + RESULT_CANT_RESOLVE: 'Request failed while resolving', + RESULT_CONNECTION_ERROR: 'Request failed due to connection (read/write) error', + RESULT_TLS_HANDSHAKE_ERROR: 'Request failed on TLS handshake', + RESULT_NO_RESPONSE: 'Request does not have a response (yet)', + RESULT_BODY_SIZE_LIMIT_EXCEEDED: 'Request exceeded its maximum size limit, see body_size_limit', + RESULT_BODY_DECOMPRESS_FAILED: 'Body decompress failed', + RESULT_REQUEST_FAILED: 'Request failed (currently unused)', + RESULT_DOWNLOAD_FILE_CANT_OPEN: 'HTTPRequest couldn\'t open the download file', + RESULT_DOWNLOAD_FILE_WRITE_ERROR: 'HTTPRequest couldn\'t write to the download file', + RESULT_REDIRECT_LIMIT_REACHED: 'Request reached its maximum redirect limit, see max_redirects', + RESULT_TIMEOUT: 'Timeout' } var i_bort: int = 0 @@ -28,7 +28,6 @@ func get_result_string(result: Result): return RESULT_STRINGS[result] if RESULT_STRINGS.has(result) else '<неизвестный код результата HTTPRequest - %d>' % result - func _ready(): addr_left = ProjectSettings.get_setting('application/config/unit_rr_left_bort') addr_right = ProjectSettings.get_setting('application/config/unit_rr_right_bort')