>_ rehablogger
Система работает
← Все сессии
СЕССИЯ УСТРОЙСТВА

rehabapp_2026-09-21_16-50-35

Подключение…
Rehab Logger console · история загружается порциями по 250 записей
INFO [console] ✅ RAW RESPONSE: {success: true, meta: {timestamp: 2026-09-21T13:51:12.552936Z, request_id: 6041988b-e9e6-4411-840d-61198c2f12a2, version: v1}, data: {start_rehab: 2026-09-21 00:00:00, end_rehab: 2026-10-18 00:00:00, days: [{date: 2026-09-21, status: [start], training: [{mode: correction_unit, status: not_done, progress: null}, {mode: diagnostics, status: not_done, progress: null}]}, {date: 2026-09-22, status: [none], training: [{mode: correction_unit, status: not_done, progress: null}]}, {date: 2026-09-23, status: [none], training: [{mode: correction_unit, status: not_done, progress: null}]}, {date: 2026-09-24, status: [none], training: [{mode: correction_unit, status: not_done, progress: null}]}, {date: 2026-09-25, status: [none], training: [{mode: correction_unit, status: not_done, progress: null}]}, {date: 2026-09-28, status: [none], training: [{mode: correction_unit, status: not_done, progress: null}, {mode: diagnostics, status: not_done, progress: null}]}, {date: 2026-09-29, statu
INFO [console] s: [none], training: [{mode: correction_unit, status: not_done, progress: null}]}, {date: 2026-09-30, status: [none], training: [{mode: correction_unit, status: not_done, progress: null}]}, {date: 2026-10-01, status: [none], training: [{mode: correction_unit, status: not_done, progress: null}]}, {date: 2026-10-02, status: [none], training: [{mode: correction_unit, status: not_done, progress: null}]}]}}
INFO [console] [DIO] server: openresty
INFO [console] [DIO] Response Text:
INFO [console] [DIO] {"success":true,"meta":{"timestamp":"2026-09-21T13:51:12.552936Z","request_id":"6041988b-e9e6-4411-840d-61198c2f12a2","version":"v1"},"data":{"start_rehab":"2026-09-21 00:00:00","end_rehab":"2026-10-18 00:00:00","days":[{"date":"2026-09-21","status":["start"],"training":[{"mode":"correction_unit","status":"not_done","progress":null},{"mode":"diagnostics","status":"not_done","progress":null}]},{"date":"2026-09-22","status":["none"],"training":[{"mode":"correction_unit","status":"not_done","progress":null}]},{"date":"2026-09-23","status":["none"],"training":[{"mode":"correction_unit","status":"not_done","progress":null}]},{"date":"2026-09-24","status":["none"],"training":[{"mode":"correction_unit","status":"not_done","progress":null}]},{"date":"2026-09-25","status":["none"],"training":[{"mode":"correction_unit","status":"not_done","progress":null}]},{"date":"2026-09-28","status":["none"],"training":[{"mode":"correction_unit","status":"not_done","progress":null},{"mode":"diagnostics","status":"not_done","progress":null}]},{"date":"2026-09-29","status":["none"],"training":[{"mode":"correction_unit","status":"not_done","progress":null}]},{"date":"2026-09-30","status":["none"],"training":[{"mode":"correction_unit","status":"not_done","progress":null}]},{"date":"2026-10-01","status":["none"],"training":[{"mode":"correction_unit","status":"not_done","progress":null}]},{"date":"2026-10-02","status":["none"],"training":[{"mode":"correction_unit","status":"not_done","progress":null}]}]}}
INFO [console] [DIO] transfer-encoding: chunked
INFO [console] [DIO] access-control-allow-origin: http://localhost:3000
INFO [console] [DIO] content-type: application/json
INFO [console] [DIO] connection: keep-alive
INFO [console] [DIO] cache-control: no-cache, private
INFO [console] [DIO] date: Mon, 21 Sep 2026 13:51:12 GMT
INFO [console] [DIO] headers:
INFO [console] [DIO] x-served-by: rehabilitation.most.team
INFO [console] [DIO] access-control-allow-credentials: true
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/v1/patient/rehabilitation/calendar/period?start_date=2026-08-31&end_date=2026-10-04
INFO [console] [DIO] statusCode: 200
INFO [console] [DIO] statusMessage: OK
INFO [console] [DIO]
INFO [console] ✅ RAW RESPONSE: {success: true, meta: {timestamp: 2026-09-21T13:51:12.801819Z, request_id: f673c56d-70e3-4227-ac1d-6fafab6998f2, version: v1}, data: {rehabilitation_day_id: 3117, phase_id: 363, diagnosis_rehab: Проверка упражнений, start_rehab: 2026-09-21 00:00:00, end_rehab: 2026-10-18 00:00:00, name_rehab_phase: Проверка упражнений, status: [start], recommendations_count: 1, date: 2026-09-21, training: [{mode: correction_unit, status: not_done, progress: null, unit_id: 1089, time: 10 - 20 мин, count_questions: 2, status_questions: false, workout_id: null}, {mode: diagnostics, status: not_done, progress: null, unit_id: 1088, time: 10 - 20 мин, count_questions: null, status_questions: false, workout_id: null}]}}
INFO [console] [DIO] *** Request ***
INFO [console] [DIO]
INFO [console] [DIO] *** Response ***
INFO [console] [DIO] Authorization: Bearer 768|0VqB9oq4rJLHonOPuJFUBc4D6YaW5mqDHk9mLj7Cb772150c
INFO [console] [DIO] data:
INFO [console] [DIO] null
INFO [console] [DIO] receiveDataWhenStatusError: true
INFO [console] [DIO] extra: {}
INFO [console] [DIO] headers:
INFO [console] [DIO] sendTimeout: null
INFO [console] [DIO] receiveTimeout: 0:00:10.000000
INFO [console] [DIO] transformTimeout: null
INFO [console] [DIO] followRedirects: true
INFO [console] [DIO] persistentConnection: true
INFO [console] [DIO] connectTimeout: 0:00:10.000000
INFO [console] [DIO]
INFO [console] ✅ RAW RESPONSE: {success: true, meta: {timestamp: 2026-09-21T13:51:15.375057Z, request_id: 36e2a755-f299-4b53-b957-ec11f39f93a4, version: v1}, data: {title: Проверка упражнений, rehabilitation_status: current, body_side: right, musculoskeletal_part: Коленный сустав, weeks_count: 4, passed_weeks_count: 0, current_phase_title: Проверка упражнений, is_doctor_confirmed: true}}
INFO [console] [Chat] loadChat() started
INFO [console] [Chat] API base: https://rehabilitation.most.team/api/v1
INFO [console] [ChatAPI] GET /patient/chat
INFO [console] [DIO] *** Request ***
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/v1/patient/chat
INFO [console] [DIO] method: GET
INFO [console] [DIO] responseType: ResponseType.json
INFO [console] [DIO] followRedirects: true
INFO [console] [DIO] persistentConnection: true
INFO [console] [DIO] connectTimeout: 0:00:10.000000
INFO [console] [DIO] sendTimeout: null
INFO [console] [DIO] receiveTimeout: 0:00:10.000000
INFO [console] [DIO] transformTimeout: null
INFO [console] [DIO] receiveDataWhenStatusError: true
INFO [console] [DIO] extra: {}
INFO [console] [DIO] headers:
INFO [console] [DIO] Authorization: Bearer 768|0VqB9oq4rJLHonOPuJFUBc4D6YaW5mqDHk9mLj7Cb772150c
INFO [console] [DIO] data:
INFO [console] [DIO] null
INFO [console] [DIO]
INFO [console] [DIO] *** Response ***
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/v1/patient/chat
INFO [console] [DIO] statusCode: 200
INFO [console] [DIO] statusMessage: OK
INFO [console] [DIO] headers:
INFO [console] [DIO] x-served-by: rehabilitation.most.team
INFO [console] [DIO] access-control-allow-credentials: true
INFO [console] [DIO] connection: keep-alive
INFO [console] [DIO] cache-control: no-cache, private
INFO [console] [DIO] date: Mon, 21 Sep 2026 13:53:30 GMT
INFO [console] [DIO] transfer-encoding: chunked
INFO [console] [DIO] access-control-allow-origin: http://localhost:3000
INFO [console] [DIO] content-type: application/json
INFO [console] [DIO] server: openresty
INFO [console] [DIO] Response Text:
INFO [console] [DIO] {"success":true,"meta":{"timestamp":"2026-09-21T13:53:30.169463Z","request_id":"52454023-4dea-4ea7-88d2-82bac06ac11e","version":"v1"},"data":{"has_doctor":true,"chat_id":121,"empty_state_message":null,"messages":[],"unread_count":0}}
INFO [console] [DIO]
INFO [console] [Repo] RAW JSON: {success: true, meta: {timestamp: 2026-09-21T13:53:30.169463Z, request_id: 52454023-4dea-4ea7-88d2-82bac06ac11e, version: v1}, data: {has_doctor: true, chat_id: 121, empty_state_message: null, messages: [], unread_count: 0}}
INFO [console] [Chat] API response: hasDoctor=true, chatId=121, messages=0, unread=0
INFO [console] [Chat] userId from cache: 324
INFO [console] [Chat] Connecting WebSocket: host=rehabilitation.most.team, port=443, appKey=local-reverb-key
INFO [console] [ChatWebSocket] diagnostics=raw-pusher-2026-07-14-01; init url=wss://rehabilitation.most.team/app/local-reverb-key?protocol=7&client=flutter&version=1.0.0&flash=false, authEndpoint=https://rehabilitation.most.team/api/broadcasting/auth
INFO [console] [ChatWebSocket] websocket connect started: url=wss://rehabilitation.most.team/app/local-reverb-key?protocol=7&client=flutter&version=1.0.0&flash=false
INFO [console] [ChatWebSocket] websocket connect finished: readyState=1
INFO [console] [ChatWebSocket] websocket listener attached
INFO [console] [ChatWebSocket] init completed: connected=false, socketId=null, pendingChannels={}
INFO [console] [ChatWebSocket] subscribe requested: channel=private-chat.121, connected=false, socketId=null, active=false, pending=false
INFO [console] [ChatWebSocket] subscribe queued until connected: private-chat.121
INFO [console] [ChatWebSocket] subscribe requested: channel=private-user.324, connected=false, socketId=null, active=false, pending=false
INFO [console] [ChatWebSocket] subscribe queued until connected: private-user.324
INFO [console] [Chat] WebSocket initialized; subscriptions requested for private-chat.121 and private-user.324
INFO [console] [ChatWebSocket] incoming raw: type=String, data={"event":"pusher:connection_established","data":"{\"socket_id\":\"22969984.501085944\",\"activity_timeout\":30}"}
INFO [console] [ChatWebSocket] incoming envelope: event=pusher:connection_established, channel=null, data={"socket_id":"22969984.501085944","activity_timeout":30}
INFO [console] [ChatWebSocket] connected: socketId=22969984.501085944, activityTimeout=30
INFO [console] [ChatWebSocket] auth request: socketId=22969984.501085944, channel=private-chat.121
INFO [console] [DIO] *** Request ***
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/broadcasting/auth
INFO [console] [DIO] method: POST
INFO [console] [DIO] responseType: ResponseType.json
INFO [console] [DIO] followRedirects: true
INFO [console] [DIO] persistentConnection: true
INFO [console] [DIO] connectTimeout: 0:00:10.000000
INFO [console] [DIO] sendTimeout: null
INFO [console] [DIO] receiveTimeout: 0:00:10.000000
INFO [console] [DIO] transformTimeout: null
INFO [console] [DIO] receiveDataWhenStatusError: true
INFO [console] [DIO] extra: {}
INFO [console] [DIO] headers:
INFO [console] [DIO] accept: application/json
INFO [console] [DIO] content-type: application/x-www-form-urlencoded
INFO [console] [DIO] Authorization: Bearer 768|0VqB9oq4rJLHonOPuJFUBc4D6YaW5mqDHk9mLj7Cb772150c
INFO [console] [DIO] data:
INFO [console] [DIO] {socket_id: 22969984.501085944, channel_name: private-chat.121}
INFO [console] [DIO]
INFO [console] [DIO] *** Response ***
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/broadcasting/auth
INFO [console] [DIO] statusCode: 200
INFO [console] [DIO] statusMessage: OK
INFO [console] [DIO] headers:
INFO [console] [DIO] x-served-by: rehabilitation.most.team
INFO [console] [DIO] access-control-allow-credentials: true
INFO [console] [DIO] connection: keep-alive
INFO [console] [DIO] cache-control: no-cache, private
INFO [console] [DIO] date: Mon, 21 Sep 2026 13:53:30 GMT
INFO [console] [DIO] transfer-encoding: chunked
INFO [console] [DIO] access-control-allow-origin: http://localhost:3000
INFO [console] [DIO] content-type: application/json
INFO [console] [DIO] server: openresty
INFO [console] [DIO] Response Text:
INFO [console] [DIO] {"auth":"local-reverb-key:606a36291504fc003aba4c84b48857b436a200b655c219bb1b2d65546f3bea16"}
INFO [console] [DIO]
INFO [console] [ChatWebSocket] auth response: status=200, data={auth: local-reverb-key:606a36291504fc003aba4c84b48857b436a200b655c219bb1b2d65546f3bea16}
INFO [console] [ChatWebSocket] subscribe send: {channel: private-chat.121, auth: local-reverb-key:606a36291504fc003aba4c84b48857b436a200b655c219bb1b2d65546f3bea16}
INFO [console] [ChatWebSocket] auth request: socketId=22969984.501085944, channel=private-user.324
INFO [console] [DIO] *** Request ***
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/broadcasting/auth
INFO [console] [DIO] method: POST
INFO [console] [DIO] responseType: ResponseType.json
INFO [console] [DIO] followRedirects: true
INFO [console] [DIO] persistentConnection: true
INFO [console] [DIO] connectTimeout: 0:00:10.000000
INFO [console] [DIO] sendTimeout: null
INFO [console] [DIO] receiveTimeout: 0:00:10.000000
INFO [console] [DIO] transformTimeout: null
INFO [console] [DIO] receiveDataWhenStatusError: true
INFO [console] [DIO] extra: {}
INFO [console] [DIO] headers:
INFO [console] [DIO] accept: application/json
INFO [console] [DIO] content-type: application/x-www-form-urlencoded
INFO [console] [DIO] Authorization: Bearer 768|0VqB9oq4rJLHonOPuJFUBc4D6YaW5mqDHk9mLj7Cb772150c
INFO [console] [DIO] data:
INFO [console] [DIO] {socket_id: 22969984.501085944, channel_name: private-user.324}
INFO [console] [DIO]
INFO [console] [ChatWebSocket] incoming raw: type=String, data={"event":"pusher_internal:subscription_succeeded","data":"{}","channel":"private-chat.121"}
INFO [console] [ChatWebSocket] incoming envelope: event=pusher_internal:subscription_succeeded, channel=private-chat.121, data={}
INFO [console] [ChatWebSocket] subscription succeeded: private-chat.121
INFO [console] [DIO] *** Response ***
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/broadcasting/auth
INFO [console] [DIO] statusCode: 200
INFO [console] [DIO] statusMessage: OK
INFO [console] [DIO] headers:
INFO [console] [DIO] x-served-by: rehabilitation.most.team
INFO [console] [DIO] access-control-allow-credentials: true
INFO [console] [DIO] connection: keep-alive
INFO [console] [DIO] cache-control: no-cache, private
INFO [console] [DIO] date: Mon, 21 Sep 2026 13:53:30 GMT
INFO [console] [DIO] transfer-encoding: chunked
INFO [console] [DIO] access-control-allow-origin: http://localhost:3000
INFO [console] [DIO] content-type: application/json
INFO [console] [DIO] server: openresty
INFO [console] [DIO] Response Text:
INFO [console] [DIO] {"auth":"local-reverb-key:2ddd71c612b3e41d9ec734167137beb8fa9ec8bfa58414164fde4904bec90cd9"}
INFO [console] [DIO]
INFO [console] [ChatWebSocket] auth response: status=200, data={auth: local-reverb-key:2ddd71c612b3e41d9ec734167137beb8fa9ec8bfa58414164fde4904bec90cd9}
INFO [console] [ChatWebSocket] subscribe send: {channel: private-user.324, auth: local-reverb-key:2ddd71c612b3e41d9ec734167137beb8fa9ec8bfa58414164fde4904bec90cd9}
INFO [console] [ChatWebSocket] incoming raw: type=String, data={"event":"pusher_internal:subscription_succeeded","data":"{}","channel":"private-user.324"}
INFO [console] [ChatWebSocket] incoming envelope: event=pusher_internal:subscription_succeeded, channel=private-user.324, data={}
INFO [console] [ChatWebSocket] subscription succeeded: private-user.324
INFO [console] Request query: {start_date: 2026-08-31, end_date: 2026-10-04}
INFO [console] shrinkOffset: 159.69230769230762, progress: 0.803316749585406
INFO [console] shrinkOffset: 159.69230769230762, progress: 0.803316749585406
INFO [console] [DIO] *** Request ***
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/v1/patient/rehabilitation/calendar/period?start_date=2026-08-31&end_date=2026-10-04
INFO [console] [DIO] method: GET
INFO [console] [DIO] responseType: ResponseType.json
INFO [console] [DIO] followRedirects: true
INFO [console] [DIO] persistentConnection: true
INFO [console] [DIO] connectTimeout: 0:00:10.000000
INFO [console] [DIO] sendTimeout: null
INFO [console] [DIO] receiveTimeout: 0:00:10.000000
INFO [console] [DIO] transformTimeout: null
INFO [console] [DIO] receiveDataWhenStatusError: true
INFO [console] [DIO] extra: {}
INFO [console] [DIO] headers:
INFO [console] [DIO] Authorization: Bearer 768|0VqB9oq4rJLHonOPuJFUBc4D6YaW5mqDHk9mLj7Cb772150c
INFO [console] [DIO] data:
INFO [console] [DIO] null
INFO [console] [DIO]
INFO [console] [DIO] *** Response ***
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/v1/patient/rehabilitation/calendar/period?start_date=2026-08-31&end_date=2026-10-04
INFO [console] [DIO] statusCode: 200
INFO [console] [DIO] statusMessage: OK
INFO [console] [DIO] headers:
INFO [console] [DIO] x-served-by: rehabilitation.most.team
INFO [console] [DIO] access-control-allow-credentials: true
INFO [console] [DIO] connection: keep-alive
INFO [console] [DIO] cache-control: no-cache, private
INFO [console] [DIO] date: Mon, 21 Sep 2026 13:53:46 GMT
INFO [console] [DIO] transfer-encoding: chunked
INFO [console] [DIO] access-control-allow-origin: http://localhost:3000
INFO [console] [DIO] content-type: application/json
INFO [console] [DIO] server: openresty
INFO [console] [DIO] Response Text:
INFO [console] [DIO] {"success":true,"meta":{"timestamp":"2026-09-21T13:53:46.948369Z","request_id":"c19b2886-8237-4abc-944c-ce1a7133e290","version":"v1"},"data":{"start_rehab":"2026-09-21 00:00:00","end_rehab":"2026-10-18 00:00:00","days":[{"date":"2026-09-21","status":["start"],"training":[{"mode":"correction_unit","status":"not_done","progress":null},{"mode":"diagnostics","status":"not_done","progress":null}]},{"date":"2026-09-22","status":["none"],"training":[{"mode":"correction_unit","status":"not_done","progress":null}]},{"date":"2026-09-23","status":["none"],"training":[{"mode":"correction_unit","status":"not_done","progress":null}]},{"date":"2026-09-24","status":["none"],"training":[{"mode":"correction_unit","status":"not_done","progress":null}]},{"date":"2026-09-25","status":["none"],"training":[{"mode":"correction_unit","status":"not_done","progress":null}]},{"date":"2026-09-28","status":["none"],"training":[{"mode":"correction_unit","status":"not_done","progress":null},{"mode":"diagnostics","status":"not_done","progress":null}]},{"date":"2026-09-29","status":["none"],"training":[{"mode":"correction_unit","status":"not_done","progress":null}]},{"date":"2026-09-30","status":["none"],"training":[{"mode":"correction_unit","status":"not_done","progress":null}]},{"date":"2026-10-01","status":["none"],"training":[{"mode":"correction_unit","status":"not_done","progress":null}]},{"date":"2026-10-02","status":["none"],"training":[{"mode":"correction_unit","status":"not_done","progress":null}]}]}}
INFO [console] [DIO]
INFO [console] ✅ RAW RESPONSE: {success: true, meta: {timestamp: 2026-09-21T13:53:46.948369Z, request_id: c19b2886-8237-4abc-944c-ce1a7133e290, version: v1}, data: {start_rehab: 2026-09-21 00:00:00, end_rehab: 2026-10-18 00:00:00, days: [{date: 2026-09-21, status: [start], training: [{mode: correction_unit, status: not_done, progress: null}, {mode: diagnostics, status: not_done, progress: null}]}, {date: 2026-09-22, status: [none], training: [{mode: correction_unit, status: not_done, progress: null}]}, {date: 2026-09-23, status: [none], training: [{mode: correction_unit, status: not_done, progress: null}]}, {date: 2026-09-24, status: [none], training: [{mode: correction_unit, status: not_done, progress: null}]}, {date: 2026-09-25, status: [none], training: [{mode: correction_unit, status: not_done, progress: null}]}, {date: 2026-09-28, status: [none], training: [{mode: correction_unit, status: not_done, progress: null}, {mode: diagnostics, status: not_done, progress: null}]}, {date: 2026-09-29, statu
INFO [console] s: [none], training: [{mode: correction_unit, status: not_done, progress: null}]}, {date: 2026-09-30, status: [none], training: [{mode: correction_unit, status: not_done, progress: null}]}, {date: 2026-10-01, status: [none], training: [{mode: correction_unit, status: not_done, progress: null}]}, {date: 2026-10-02, status: [none], training: [{mode: correction_unit, status: not_done, progress: null}]}]}}
INFO [console] shrinkOffset: 159.69230769230762, progress: 0.803316749585406
INFO [console] shrinkOffset: 159.69230769230762, progress: 0.803316749585406
INFO [console] [DIO] *** Request ***
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/v1/patient/rehabilitation/calendar/day?date=2026-09-21
INFO [console] [DIO] method: GET
INFO [console] [DIO] responseType: ResponseType.json
INFO [console] [DIO] followRedirects: true
INFO [console] [DIO] persistentConnection: true
INFO [console] [DIO] connectTimeout: 0:00:10.000000
INFO [console] [DIO] sendTimeout: null
INFO [console] [DIO] receiveTimeout: 0:00:10.000000
INFO [console] [DIO] transformTimeout: null
INFO [console] [DIO] receiveDataWhenStatusError: true
INFO [console] [DIO] extra: {}
INFO [console] [DIO] headers:
INFO [console] [DIO] Authorization: Bearer 768|0VqB9oq4rJLHonOPuJFUBc4D6YaW5mqDHk9mLj7Cb772150c
INFO [console] [DIO] data:
INFO [console] [DIO] null
INFO [console] [DIO]
INFO [console] [DIO] *** Response ***
INFO [console] [DIO] uri: https://rehabilitation.most.team/api/v1/patient/rehabilitation/calendar/day?date=2026-09-21
INFO [console] [DIO] statusCode: 200
INFO [console] [DIO] statusMessage: OK
INFO [console] [DIO] headers:
INFO [console] [DIO] x-served-by: rehabilitation.most.team
INFO [console] [DIO] access-control-allow-credentials: true
INFO [console] [DIO] connection: keep-alive
INFO [console] [DIO] cache-control: no-cache, private
INFO [console] [DIO] date: Mon, 21 Sep 2026 13:53:47 GMT
INFO [console] [DIO] transfer-encoding: chunked
INFO [console] [DIO] access-control-allow-origin: http://localhost:3000
INFO [console] [DIO] content-type: application/json
INFO [console] [DIO] server: openresty
INFO [console] [DIO] Response Text:
INFO [console] [DIO] {"success":true,"meta":{"timestamp":"2026-09-21T13:53:47.138682Z","request_id":"ba030ef1-b8df-4838-ac6f-dec6018c1934","version":"v1"},"data":{"rehabilitation_day_id":3117,"phase_id":363,"diagnosis_rehab":"Проверка упражнений","start_rehab":"2026-09-21 00:00:00","end_rehab":"2026-10-18 00:00:00","name_rehab_phase":"Проверка упражнений","status":["start"],"recommendations_count":1,"date":"2026-09-21","training":[{"mode":"correction_unit","status":"not_done","progress":null,"unit_id":1089,"time":"10 - 20 мин","count_questions":2,"status_questions":false,"workout_id":null},{"mode":"diagnostics","status":"not_done","progress":null,"unit_id":1088,"time":"10 - 20 мин","count_questions":null,"status_questions":false,"workout_id":null}]}}
INFO [console] [DIO]
INFO [console] ✅ RAW RESPONSE: {success: true, meta: {timestamp: 2026-09-21T13:53:47.138682Z, request_id: ba030ef1-b8df-4838-ac6f-dec6018c1934, version: v1}, data: {rehabilitation_day_id: 3117, phase_id: 363, diagnosis_rehab: Проверка упражнений, start_rehab: 2026-09-21 00:00:00, end_rehab: 2026-10-18 00:00:00, name_rehab_phase: Проверка упражнений, status: [start], recommendations_count: 1, date: 2026-09-21, training: [{mode: correction_unit, status: not_done, progress: null, unit_id: 1089, time: 10 - 20 мин, count_questions: 2, status_questions: false, workout_id: null}, {mode: diagnostics, status: not_done, progress: null, unit_id: 1088, time: 10 - 20 мин, count_questions: null, status_questions: false, workout_id: null}]}}
$
250 строкUTF-8LIVE