ourskyai-node-platform-api 1.3.9821__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- ourskyai_node_platform_api/__init__.py +301 -0
- ourskyai_node_platform_api/api/__init__.py +5 -0
- ourskyai_node_platform_api/api/default_api.py +22197 -0
- ourskyai_node_platform_api/api_client.py +758 -0
- ourskyai_node_platform_api/api_response.py +25 -0
- ourskyai_node_platform_api/configuration.py +456 -0
- ourskyai_node_platform_api/exceptions.py +166 -0
- ourskyai_node_platform_api/models/__init__.py +284 -0
- ourskyai_node_platform_api/models/all_sky_camera_diagnosis_report.py +73 -0
- ourskyai_node_platform_api/models/astro_camera_diagnosis_report.py +79 -0
- ourskyai_node_platform_api/models/auto_stretch_image_completed.py +71 -0
- ourskyai_node_platform_api/models/auto_stretch_image_started.py +71 -0
- ourskyai_node_platform_api/models/autofocus_failed.py +71 -0
- ourskyai_node_platform_api/models/autofocus_finished.py +80 -0
- ourskyai_node_platform_api/models/autofocus_method.py +41 -0
- ourskyai_node_platform_api/models/autofocus_point_added.py +75 -0
- ourskyai_node_platform_api/models/autofocus_started.py +79 -0
- ourskyai_node_platform_api/models/bff_v1_all_sky_images.py +90 -0
- ourskyai_node_platform_api/models/camera_image_captured.py +75 -0
- ourskyai_node_platform_api/models/camera_status_updated.py +76 -0
- ourskyai_node_platform_api/models/camera_temperature_set.py +71 -0
- ourskyai_node_platform_api/models/capture_image_started.py +79 -0
- ourskyai_node_platform_api/models/connection_status.py +41 -0
- ourskyai_node_platform_api/models/create_mount_model_completed.py +71 -0
- ourskyai_node_platform_api/models/create_mount_model_failed.py +71 -0
- ourskyai_node_platform_api/models/create_mount_model_started.py +71 -0
- ourskyai_node_platform_api/models/custom_image_processing_container.py +81 -0
- ourskyai_node_platform_api/models/custom_image_processing_container_list.py +81 -0
- ourskyai_node_platform_api/models/debug_logged.py +73 -0
- ourskyai_node_platform_api/models/elevation_mask_diagnostic_completed.py +71 -0
- ourskyai_node_platform_api/models/elevation_mask_diagnostic_failed.py +71 -0
- ourskyai_node_platform_api/models/elevation_mask_diagnostic_started.py +71 -0
- ourskyai_node_platform_api/models/elevation_mask_point_added.py +75 -0
- ourskyai_node_platform_api/models/empty_success.py +71 -0
- ourskyai_node_platform_api/models/enclosure_shutter_label.py +40 -0
- ourskyai_node_platform_api/models/enclosure_shutter_state.py +46 -0
- ourskyai_node_platform_api/models/enclosure_shutter_statuses_updated.py +75 -0
- ourskyai_node_platform_api/models/enclosure_state.py +50 -0
- ourskyai_node_platform_api/models/event_type.py +94 -0
- ourskyai_node_platform_api/models/fits_header.py +73 -0
- ourskyai_node_platform_api/models/focus_operation.py +43 -0
- ourskyai_node_platform_api/models/focuser_diagnosis_report.py +73 -0
- ourskyai_node_platform_api/models/focuser_position.py +81 -0
- ourskyai_node_platform_api/models/focuser_status_updated.py +72 -0
- ourskyai_node_platform_api/models/go_to_altitude_azimuth_completed.py +73 -0
- ourskyai_node_platform_api/models/go_to_altitude_azimuth_failed.py +73 -0
- ourskyai_node_platform_api/models/go_to_altitude_azimuth_started.py +73 -0
- ourskyai_node_platform_api/models/go_to_home_completed.py +71 -0
- ourskyai_node_platform_api/models/go_to_home_failed.py +71 -0
- ourskyai_node_platform_api/models/go_to_home_started.py +71 -0
- ourskyai_node_platform_api/models/go_to_mechanical_coordinates_completed.py +73 -0
- ourskyai_node_platform_api/models/go_to_mechanical_coordinates_failed.py +73 -0
- ourskyai_node_platform_api/models/go_to_mechanical_coordinates_started.py +73 -0
- ourskyai_node_platform_api/models/go_to_ra_dec_completed.py +73 -0
- ourskyai_node_platform_api/models/go_to_ra_dec_failed.py +73 -0
- ourskyai_node_platform_api/models/go_to_ra_dec_started.py +73 -0
- ourskyai_node_platform_api/models/gps_data_updated.py +83 -0
- ourskyai_node_platform_api/models/hardware_daemon_logged.py +71 -0
- ourskyai_node_platform_api/models/ice_message.py +87 -0
- ourskyai_node_platform_api/models/image_file_format.py +42 -0
- ourskyai_node_platform_api/models/image_set_type.py +43 -0
- ourskyai_node_platform_api/models/location.py +75 -0
- ourskyai_node_platform_api/models/message_type.py +46 -0
- ourskyai_node_platform_api/models/message_type_wrapper.py +72 -0
- ourskyai_node_platform_api/models/metric_type.py +42 -0
- ourskyai_node_platform_api/models/motor_faulted.py +76 -0
- ourskyai_node_platform_api/models/motor_faults_cleared.py +72 -0
- ourskyai_node_platform_api/models/mount_diagnosis_report.py +77 -0
- ourskyai_node_platform_api/models/mount_model_point_added.py +77 -0
- ourskyai_node_platform_api/models/mount_model_point_failed.py +73 -0
- ourskyai_node_platform_api/models/mount_status_updated.py +72 -0
- ourskyai_node_platform_api/models/operation_status_updated.py +75 -0
- ourskyai_node_platform_api/models/optical_tube_status.py +71 -0
- ourskyai_node_platform_api/models/optical_tube_status_updated.py +72 -0
- ourskyai_node_platform_api/models/peer.py +78 -0
- ourskyai_node_platform_api/models/peer_role.py +40 -0
- ourskyai_node_platform_api/models/plate_solve_completed.py +75 -0
- ourskyai_node_platform_api/models/plate_solve_failed.py +71 -0
- ourskyai_node_platform_api/models/plate_solve_started.py +71 -0
- ourskyai_node_platform_api/models/platform_connection_diagnosis_report.py +71 -0
- ourskyai_node_platform_api/models/point2_d.py +73 -0
- ourskyai_node_platform_api/models/relay_channel.py +45 -0
- ourskyai_node_platform_api/models/relay_function.py +46 -0
- ourskyai_node_platform_api/models/relays_diagnosis_report.py +75 -0
- ourskyai_node_platform_api/models/relays_status.py +71 -0
- ourskyai_node_platform_api/models/relays_updated.py +82 -0
- ourskyai_node_platform_api/models/roof_diagnosis_report.py +75 -0
- ourskyai_node_platform_api/models/roof_state.py +50 -0
- ourskyai_node_platform_api/models/roof_status.py +71 -0
- ourskyai_node_platform_api/models/roof_updated.py +78 -0
- ourskyai_node_platform_api/models/rotator_position.py +73 -0
- ourskyai_node_platform_api/models/rotator_status_updated.py +72 -0
- ourskyai_node_platform_api/models/rotator_target_type.py +40 -0
- ourskyai_node_platform_api/models/safety_status_updated.py +75 -0
- ourskyai_node_platform_api/models/sdp_message.py +73 -0
- ourskyai_node_platform_api/models/slew_demo_enabled.py +71 -0
- ourskyai_node_platform_api/models/star_measurement_failed.py +71 -0
- ourskyai_node_platform_api/models/star_measurement_started.py +71 -0
- ourskyai_node_platform_api/models/stars_measured.py +75 -0
- ourskyai_node_platform_api/models/startup_wizard_step.py +76 -0
- ourskyai_node_platform_api/models/system_event_type.py +96 -0
- ourskyai_node_platform_api/models/task_cancelled.py +78 -0
- ourskyai_node_platform_api/models/task_completed.py +76 -0
- ourskyai_node_platform_api/models/task_scheduled.py +76 -0
- ourskyai_node_platform_api/models/task_started.py +76 -0
- ourskyai_node_platform_api/models/update_custom_image_processing_container_request.py +73 -0
- ourskyai_node_platform_api/models/v1_all_sky_classification.py +74 -0
- ourskyai_node_platform_api/models/v1_all_sky_classification_label.py +43 -0
- ourskyai_node_platform_api/models/v1_all_sky_image.py +81 -0
- ourskyai_node_platform_api/models/v1_all_sky_images.py +79 -0
- ourskyai_node_platform_api/models/v1_all_sky_keogram.py +81 -0
- ourskyai_node_platform_api/models/v1_all_sky_keograms.py +79 -0
- ourskyai_node_platform_api/models/v1_all_sky_prediction_label.py +43 -0
- ourskyai_node_platform_api/models/v1_all_sky_timelapse.py +81 -0
- ourskyai_node_platform_api/models/v1_all_sky_timelapses.py +79 -0
- ourskyai_node_platform_api/models/v1_apex_charts_timeline.py +79 -0
- ourskyai_node_platform_api/models/v1_apex_charts_timeline_element.py +75 -0
- ourskyai_node_platform_api/models/v1_astro_target.py +83 -0
- ourskyai_node_platform_api/models/v1_camera_roll_image.py +86 -0
- ourskyai_node_platform_api/models/v1_camera_status.py +85 -0
- ourskyai_node_platform_api/models/v1_camera_statuses.py +79 -0
- ourskyai_node_platform_api/models/v1_cancel_all_tasks_request.py +71 -0
- ourskyai_node_platform_api/models/v1_cancel_task_request.py +73 -0
- ourskyai_node_platform_api/models/v1_capture_image_request.py +89 -0
- ourskyai_node_platform_api/models/v1_capture_images_continuously_request.py +89 -0
- ourskyai_node_platform_api/models/v1_connected_camera.py +73 -0
- ourskyai_node_platform_api/models/v1_create_mount_model_request.py +77 -0
- ourskyai_node_platform_api/models/v1_cycle_relays_request.py +74 -0
- ourskyai_node_platform_api/models/v1_delete_image_request.py +71 -0
- ourskyai_node_platform_api/models/v1_diagnose_system_request.py +85 -0
- ourskyai_node_platform_api/models/v1_disable_live_video_request.py +71 -0
- ourskyai_node_platform_api/models/v1_elevation_mask.py +81 -0
- ourskyai_node_platform_api/models/v1_elevation_mask_point.py +75 -0
- ourskyai_node_platform_api/models/v1_enable_live_video_request.py +81 -0
- ourskyai_node_platform_api/models/v1_enclosure_rotator_status.py +75 -0
- ourskyai_node_platform_api/models/v1_enclosure_shutter_status.py +79 -0
- ourskyai_node_platform_api/models/v1_enclosure_shutter_statuses.py +79 -0
- ourskyai_node_platform_api/models/v1_enclosure_status.py +78 -0
- ourskyai_node_platform_api/models/v1_enclosure_window_status.py +75 -0
- ourskyai_node_platform_api/models/v1_end_session_request.py +73 -0
- ourskyai_node_platform_api/models/v1_event.py +80 -0
- ourskyai_node_platform_api/models/v1_event_data.py +911 -0
- ourskyai_node_platform_api/models/v1_filter.py +74 -0
- ourskyai_node_platform_api/models/v1_filter_type.py +65 -0
- ourskyai_node_platform_api/models/v1_filter_wheel_status.py +85 -0
- ourskyai_node_platform_api/models/v1_focuser_limit.py +73 -0
- ourskyai_node_platform_api/models/v1_focuser_status.py +79 -0
- ourskyai_node_platform_api/models/v1_follow_tle_request.py +73 -0
- ourskyai_node_platform_api/models/v1_get_component_status_response.py +145 -0
- ourskyai_node_platform_api/models/v1_get_health_check_response.py +83 -0
- ourskyai_node_platform_api/models/v1_get_storage_status_response.py +75 -0
- ourskyai_node_platform_api/models/v1_gnss_pps_status.py +88 -0
- ourskyai_node_platform_api/models/v1_gnss_pps_status_details.py +77 -0
- ourskyai_node_platform_api/models/v1_go_to_filter_wheel_position_request.py +71 -0
- ourskyai_node_platform_api/models/v1_go_to_focuser_position_request.py +74 -0
- ourskyai_node_platform_api/models/v1_go_to_m3_port_request.py +71 -0
- ourskyai_node_platform_api/models/v1_go_to_mount_coordinates_request.py +77 -0
- ourskyai_node_platform_api/models/v1_go_to_rotator_position_request.py +74 -0
- ourskyai_node_platform_api/models/v1_image.py +103 -0
- ourskyai_node_platform_api/models/v1_images.py +79 -0
- ourskyai_node_platform_api/models/v1_jog_enclosure_rotator_request.py +71 -0
- ourskyai_node_platform_api/models/v1_jog_enclosure_shutter_request.py +74 -0
- ourskyai_node_platform_api/models/v1_jog_enclosure_shutters_request.py +79 -0
- ourskyai_node_platform_api/models/v1_jog_enclosure_window_request.py +71 -0
- ourskyai_node_platform_api/models/v1_jog_mount_request.py +73 -0
- ourskyai_node_platform_api/models/v1_last_sample.py +75 -0
- ourskyai_node_platform_api/models/v1_latest_image.py +89 -0
- ourskyai_node_platform_api/models/v1_list_producers_request.py +71 -0
- ourskyai_node_platform_api/models/v1_list_producers_response.py +81 -0
- ourskyai_node_platform_api/models/v1_m3_status.py +73 -0
- ourskyai_node_platform_api/models/v1_metric.py +82 -0
- ourskyai_node_platform_api/models/v1_motor.py +46 -0
- ourskyai_node_platform_api/models/v1_motor_status.py +87 -0
- ourskyai_node_platform_api/models/v1_mount_model.py +81 -0
- ourskyai_node_platform_api/models/v1_mount_model_point.py +77 -0
- ourskyai_node_platform_api/models/v1_mount_status.py +93 -0
- ourskyai_node_platform_api/models/v1_mount_system_settings.py +73 -0
- ourskyai_node_platform_api/models/v1_move_focuser_position_request.py +74 -0
- ourskyai_node_platform_api/models/v1_move_focuser_response.py +77 -0
- ourskyai_node_platform_api/models/v1_move_focuser_steps_request.py +74 -0
- ourskyai_node_platform_api/models/v1_node_history.py +73 -0
- ourskyai_node_platform_api/models/v1_node_overview.py +122 -0
- ourskyai_node_platform_api/models/v1_node_status.py +43 -0
- ourskyai_node_platform_api/models/v1_ntp_status.py +88 -0
- ourskyai_node_platform_api/models/v1_ntp_status_details.py +73 -0
- ourskyai_node_platform_api/models/v1_open_enclosure_shutters_request.py +71 -0
- ourskyai_node_platform_api/models/v1_open_roof_request.py +71 -0
- ourskyai_node_platform_api/models/v1_optical_tube_cover_status.py +73 -0
- ourskyai_node_platform_api/models/v1_optical_tube_fan_role.py +46 -0
- ourskyai_node_platform_api/models/v1_optical_tube_fan_status.py +76 -0
- ourskyai_node_platform_api/models/v1_optical_tube_fan_statuses.py +79 -0
- ourskyai_node_platform_api/models/v1_optical_tube_heater_role.py +41 -0
- ourskyai_node_platform_api/models/v1_optical_tube_heater_status.py +76 -0
- ourskyai_node_platform_api/models/v1_optical_tube_heater_statuses.py +79 -0
- ourskyai_node_platform_api/models/v1_optical_tube_status.py +87 -0
- ourskyai_node_platform_api/models/v1_peer_status_changed_request.py +81 -0
- ourskyai_node_platform_api/models/v1_ptp_data_set.py +75 -0
- ourskyai_node_platform_api/models/v1_ptp_port_properties.py +77 -0
- ourskyai_node_platform_api/models/v1_ptp_status.py +88 -0
- ourskyai_node_platform_api/models/v1_ptp_status_details.py +102 -0
- ourskyai_node_platform_api/models/v1_ptp_time_status.py +85 -0
- ourskyai_node_platform_api/models/v1_record_video_request.py +71 -0
- ourskyai_node_platform_api/models/v1_relay.py +74 -0
- ourskyai_node_platform_api/models/v1_reset_mount_system_settings_to_default_request.py +73 -0
- ourskyai_node_platform_api/models/v1_reset_system_settings_to_default_request.py +75 -0
- ourskyai_node_platform_api/models/v1_roof_status.py +78 -0
- ourskyai_node_platform_api/models/v1_rotator_status.py +81 -0
- ourskyai_node_platform_api/models/v1_run_autofocus_request.py +82 -0
- ourskyai_node_platform_api/models/v1_run_blind_autofocus_request.py +73 -0
- ourskyai_node_platform_api/models/v1_safety_status.py +83 -0
- ourskyai_node_platform_api/models/v1_save_image_request.py +71 -0
- ourskyai_node_platform_api/models/v1_set_mount_park_position_request.py +73 -0
- ourskyai_node_platform_api/models/v1_set_optical_tube_heater_power_request.py +74 -0
- ourskyai_node_platform_api/models/v1_set_peer_status_request.py +88 -0
- ourskyai_node_platform_api/models/v1_set_relay_state_request.py +74 -0
- ourskyai_node_platform_api/models/v1_signal_message_request.py +90 -0
- ourskyai_node_platform_api/models/v1_signalling_request.py +225 -0
- ourskyai_node_platform_api/models/v1_source_statistics.py +103 -0
- ourskyai_node_platform_api/models/v1_start_session_request.py +90 -0
- ourskyai_node_platform_api/models/v1_stop_capturing_images_continuously_request.py +71 -0
- ourskyai_node_platform_api/models/v1_stop_recording_video_request.py +71 -0
- ourskyai_node_platform_api/models/v1_suntimes.py +87 -0
- ourskyai_node_platform_api/models/v1_system_diagnosis_report.py +117 -0
- ourskyai_node_platform_api/models/v1_system_event.py +80 -0
- ourskyai_node_platform_api/models/v1_system_event_data.py +939 -0
- ourskyai_node_platform_api/models/v1_system_events.py +79 -0
- ourskyai_node_platform_api/models/v1_system_health_check.py +86 -0
- ourskyai_node_platform_api/models/v1_system_location.py +83 -0
- ourskyai_node_platform_api/models/v1_system_location_gps_details.py +77 -0
- ourskyai_node_platform_api/models/v1_system_metric.py +88 -0
- ourskyai_node_platform_api/models/v1_system_metric_names.py +71 -0
- ourskyai_node_platform_api/models/v1_system_metric_tag.py +73 -0
- ourskyai_node_platform_api/models/v1_system_metric_type.py +40 -0
- ourskyai_node_platform_api/models/v1_system_metrics.py +79 -0
- ourskyai_node_platform_api/models/v1_system_network_interface.py +83 -0
- ourskyai_node_platform_api/models/v1_system_network_interface_info.py +75 -0
- ourskyai_node_platform_api/models/v1_system_network_interfaces.py +79 -0
- ourskyai_node_platform_api/models/v1_system_operation_mode.py +41 -0
- ourskyai_node_platform_api/models/v1_system_operation_status.py +75 -0
- ourskyai_node_platform_api/models/v1_system_settings.py +75 -0
- ourskyai_node_platform_api/models/v1_system_status.py +135 -0
- ourskyai_node_platform_api/models/v1_system_storage_status.py +75 -0
- ourskyai_node_platform_api/models/v1_system_time.py +94 -0
- ourskyai_node_platform_api/models/v1_system_variant.py +43 -0
- ourskyai_node_platform_api/models/v1_task.py +78 -0
- ourskyai_node_platform_api/models/v1_task_type.py +47 -0
- ourskyai_node_platform_api/models/v1_time_source.py +42 -0
- ourskyai_node_platform_api/models/v1_time_windowed_asset.py +86 -0
- ourskyai_node_platform_api/models/v1_time_windowed_asset_type.py +40 -0
- ourskyai_node_platform_api/models/v1_turn_off_optical_tube_fans_request.py +72 -0
- ourskyai_node_platform_api/models/v1_turn_on_optical_tube_fans_request.py +72 -0
- ourskyai_node_platform_api/models/v1_ui_operation_mode.py +40 -0
- ourskyai_node_platform_api/models/v1_update_filter_request.py +74 -0
- ourskyai_node_platform_api/models/v1_video.py +105 -0
- ourskyai_node_platform_api/models/v1_videos.py +79 -0
- ourskyai_node_platform_api/models/v1_weather_forecast.py +85 -0
- ourskyai_node_platform_api/models/v1_weather_forecast_city.py +73 -0
- ourskyai_node_platform_api/models/v1_weather_forecast_item.py +103 -0
- ourskyai_node_platform_api/models/v1_weather_forecast_temperature.py +77 -0
- ourskyai_node_platform_api/models/v1_weather_forecast_weather.py +77 -0
- ourskyai_node_platform_api/models/v1_weather_metric.py +85 -0
- ourskyai_node_platform_api/models/v1_weather_metrics.py +79 -0
- ourskyai_node_platform_api/models/v1_weather_station_status.py +71 -0
- ourskyai_node_platform_api/models/v2_capture_image_request.py +89 -0
- ourskyai_node_platform_api/models/v2_cycle_relays_request.py +74 -0
- ourskyai_node_platform_api/models/v2_enclosure_status.py +87 -0
- ourskyai_node_platform_api/models/v2_mount_status.py +94 -0
- ourskyai_node_platform_api/models/v2_relay_status.py +76 -0
- ourskyai_node_platform_api/models/v2_relay_statuses.py +79 -0
- ourskyai_node_platform_api/models/v2_turn_off_relay_request.py +72 -0
- ourskyai_node_platform_api/models/v2_turn_on_relay_request.py +72 -0
- ourskyai_node_platform_api/models/video_codec.py +39 -0
- ourskyai_node_platform_api/models/video_container_format.py +39 -0
- ourskyai_node_platform_api/models/wavefront_sensor_data_updated.py +110 -0
- ourskyai_node_platform_api/models/weather_station_diagnosis_report.py +73 -0
- ourskyai_node_platform_api/models/weather_station_status_updated.py +72 -0
- ourskyai_node_platform_api/py.typed +0 -0
- ourskyai_node_platform_api/rest.py +303 -0
- ourskyai_node_platform_api-1.3.9821.dist-info/METADATA +23 -0
- ourskyai_node_platform_api-1.3.9821.dist-info/RECORD +282 -0
- ourskyai_node_platform_api-1.3.9821.dist-info/WHEEL +5 -0
- ourskyai_node_platform_api-1.3.9821.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
OurSky
|
|
5
|
+
|
|
6
|
+
Node Platform API
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.3.9821
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
from pydantic import BaseModel, Field, StrictInt
|
|
23
|
+
from ourskyai_node_platform_api.models.v1_filter_type import V1FilterType
|
|
24
|
+
|
|
25
|
+
class V1UpdateFilterRequest(BaseModel):
|
|
26
|
+
"""
|
|
27
|
+
Request to update the filter type configuration for a specific wheel position. # noqa: E501
|
|
28
|
+
"""
|
|
29
|
+
position: StrictInt = Field(..., description="Filter wheel slot position to update as a zero-based index. Valid values range from 0 to (capacity - 1).")
|
|
30
|
+
type: V1FilterType = Field(...)
|
|
31
|
+
__properties = ["position", "type"]
|
|
32
|
+
|
|
33
|
+
class Config:
|
|
34
|
+
"""Pydantic configuration"""
|
|
35
|
+
allow_population_by_field_name = True
|
|
36
|
+
validate_assignment = True
|
|
37
|
+
|
|
38
|
+
def to_str(self) -> str:
|
|
39
|
+
"""Returns the string representation of the model using alias"""
|
|
40
|
+
return pprint.pformat(self.dict(by_alias=True))
|
|
41
|
+
|
|
42
|
+
def to_json(self) -> str:
|
|
43
|
+
"""Returns the JSON representation of the model using alias"""
|
|
44
|
+
return json.dumps(self.to_dict())
|
|
45
|
+
|
|
46
|
+
@classmethod
|
|
47
|
+
def from_json(cls, json_str: str) -> V1UpdateFilterRequest:
|
|
48
|
+
"""Create an instance of V1UpdateFilterRequest from a JSON string"""
|
|
49
|
+
return cls.from_dict(json.loads(json_str))
|
|
50
|
+
|
|
51
|
+
def to_dict(self):
|
|
52
|
+
"""Returns the dictionary representation of the model using alias"""
|
|
53
|
+
_dict = self.dict(by_alias=True,
|
|
54
|
+
exclude={
|
|
55
|
+
},
|
|
56
|
+
exclude_none=True)
|
|
57
|
+
return _dict
|
|
58
|
+
|
|
59
|
+
@classmethod
|
|
60
|
+
def from_dict(cls, obj: dict) -> V1UpdateFilterRequest:
|
|
61
|
+
"""Create an instance of V1UpdateFilterRequest from a dict"""
|
|
62
|
+
if obj is None:
|
|
63
|
+
return None
|
|
64
|
+
|
|
65
|
+
if not isinstance(obj, dict):
|
|
66
|
+
return V1UpdateFilterRequest.parse_obj(obj)
|
|
67
|
+
|
|
68
|
+
_obj = V1UpdateFilterRequest.parse_obj({
|
|
69
|
+
"position": obj.get("position"),
|
|
70
|
+
"type": obj.get("type")
|
|
71
|
+
})
|
|
72
|
+
return _obj
|
|
73
|
+
|
|
74
|
+
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
OurSky
|
|
5
|
+
|
|
6
|
+
Node Platform API
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.3.9821
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
from datetime import datetime
|
|
21
|
+
from typing import Optional, Union
|
|
22
|
+
from pydantic import BaseModel, Field, StrictBool, StrictFloat, StrictInt, StrictStr
|
|
23
|
+
from ourskyai_node_platform_api.models.video_codec import VideoCodec
|
|
24
|
+
from ourskyai_node_platform_api.models.video_container_format import VideoContainerFormat
|
|
25
|
+
|
|
26
|
+
class V1Video(BaseModel):
|
|
27
|
+
"""
|
|
28
|
+
Complete metadata for a recorded video including capture settings, file information, codec details, and timing data. Use this object to understand the recording parameters and locate the video file. # noqa: E501
|
|
29
|
+
"""
|
|
30
|
+
id: StrictStr = Field(..., description="Unique identifier for this video recording. Use this ID for any video-specific operations such as download or deletion.")
|
|
31
|
+
camera_id: StrictStr = Field(..., alias="cameraId", description="Identifier of the camera that recorded this video. Useful for filtering videos by camera source.")
|
|
32
|
+
exposure_count: Optional[StrictInt] = Field(None, alias="exposureCount", description="Total number of individual frames or exposures contained in the video file. Useful for estimating total integration time.")
|
|
33
|
+
saved_from_deletion: StrictBool = Field(..., alias="savedFromDeletion", description="Indicates whether this video has been marked as saved to prevent automatic deletion. True means the video is protected from storage cleanup operations.")
|
|
34
|
+
exposure_seconds: Optional[Union[StrictFloat, StrictInt]] = Field(None, alias="exposureSeconds", description="Exposure duration in seconds for each individual frame in the video. Longer exposures capture more light per frame but reduce the effective frame rate.")
|
|
35
|
+
frame_seconds: Optional[Union[StrictFloat, StrictInt]] = Field(None, alias="frameSeconds", description="Duration in seconds between the start of consecutive frames. This determines the effective capture rate and may differ from exposure time if there is readout overhead.")
|
|
36
|
+
gain: Optional[StrictInt] = Field(None, description="Sensor gain setting that was applied during recording. Higher values indicate more signal amplification was used.")
|
|
37
|
+
binning: Optional[StrictInt] = Field(None, description="Pixel binning factor that was used during recording. A value of 1 indicates full resolution capture.")
|
|
38
|
+
offset: Optional[StrictInt] = Field(None, description="Sensor offset or black level setting that was applied during recording.")
|
|
39
|
+
file_path: StrictStr = Field(..., alias="filePath", description="Absolute file system path where the video file is stored on the node. Use this path for direct file access or to construct download URLs.")
|
|
40
|
+
file_size_mb: Union[StrictFloat, StrictInt] = Field(..., alias="fileSizeMb", description="Size of the video file in megabytes. Useful for estimating download times and managing storage space.")
|
|
41
|
+
codec: VideoCodec = Field(...)
|
|
42
|
+
container_format: VideoContainerFormat = Field(..., alias="containerFormat")
|
|
43
|
+
capture_started_at: datetime = Field(..., alias="captureStartedAt", description="ISO 8601 timestamp indicating when video recording began and the first frame was captured.")
|
|
44
|
+
capture_ended_at: datetime = Field(..., alias="captureEndedAt", description="ISO 8601 timestamp indicating when video recording ended and the last frame was captured.")
|
|
45
|
+
created_at: datetime = Field(..., alias="createdAt", description="ISO 8601 timestamp indicating when this video record was created in the database. Used for pagination with the before parameter.")
|
|
46
|
+
updated_at: datetime = Field(..., alias="updatedAt", description="ISO 8601 timestamp indicating when this video record was last modified.")
|
|
47
|
+
__properties = ["id", "cameraId", "exposureCount", "savedFromDeletion", "exposureSeconds", "frameSeconds", "gain", "binning", "offset", "filePath", "fileSizeMb", "codec", "containerFormat", "captureStartedAt", "captureEndedAt", "createdAt", "updatedAt"]
|
|
48
|
+
|
|
49
|
+
class Config:
|
|
50
|
+
"""Pydantic configuration"""
|
|
51
|
+
allow_population_by_field_name = True
|
|
52
|
+
validate_assignment = True
|
|
53
|
+
|
|
54
|
+
def to_str(self) -> str:
|
|
55
|
+
"""Returns the string representation of the model using alias"""
|
|
56
|
+
return pprint.pformat(self.dict(by_alias=True))
|
|
57
|
+
|
|
58
|
+
def to_json(self) -> str:
|
|
59
|
+
"""Returns the JSON representation of the model using alias"""
|
|
60
|
+
return json.dumps(self.to_dict())
|
|
61
|
+
|
|
62
|
+
@classmethod
|
|
63
|
+
def from_json(cls, json_str: str) -> V1Video:
|
|
64
|
+
"""Create an instance of V1Video from a JSON string"""
|
|
65
|
+
return cls.from_dict(json.loads(json_str))
|
|
66
|
+
|
|
67
|
+
def to_dict(self):
|
|
68
|
+
"""Returns the dictionary representation of the model using alias"""
|
|
69
|
+
_dict = self.dict(by_alias=True,
|
|
70
|
+
exclude={
|
|
71
|
+
},
|
|
72
|
+
exclude_none=True)
|
|
73
|
+
return _dict
|
|
74
|
+
|
|
75
|
+
@classmethod
|
|
76
|
+
def from_dict(cls, obj: dict) -> V1Video:
|
|
77
|
+
"""Create an instance of V1Video from a dict"""
|
|
78
|
+
if obj is None:
|
|
79
|
+
return None
|
|
80
|
+
|
|
81
|
+
if not isinstance(obj, dict):
|
|
82
|
+
return V1Video.parse_obj(obj)
|
|
83
|
+
|
|
84
|
+
_obj = V1Video.parse_obj({
|
|
85
|
+
"id": obj.get("id"),
|
|
86
|
+
"camera_id": obj.get("cameraId"),
|
|
87
|
+
"exposure_count": obj.get("exposureCount"),
|
|
88
|
+
"saved_from_deletion": obj.get("savedFromDeletion"),
|
|
89
|
+
"exposure_seconds": obj.get("exposureSeconds"),
|
|
90
|
+
"frame_seconds": obj.get("frameSeconds"),
|
|
91
|
+
"gain": obj.get("gain"),
|
|
92
|
+
"binning": obj.get("binning"),
|
|
93
|
+
"offset": obj.get("offset"),
|
|
94
|
+
"file_path": obj.get("filePath"),
|
|
95
|
+
"file_size_mb": obj.get("fileSizeMb"),
|
|
96
|
+
"codec": obj.get("codec"),
|
|
97
|
+
"container_format": obj.get("containerFormat"),
|
|
98
|
+
"capture_started_at": obj.get("captureStartedAt"),
|
|
99
|
+
"capture_ended_at": obj.get("captureEndedAt"),
|
|
100
|
+
"created_at": obj.get("createdAt"),
|
|
101
|
+
"updated_at": obj.get("updatedAt")
|
|
102
|
+
})
|
|
103
|
+
return _obj
|
|
104
|
+
|
|
105
|
+
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
OurSky
|
|
5
|
+
|
|
6
|
+
Node Platform API
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.3.9821
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
from typing import List
|
|
22
|
+
from pydantic import BaseModel, Field, conlist
|
|
23
|
+
from ourskyai_node_platform_api.models.v1_video import V1Video
|
|
24
|
+
|
|
25
|
+
class V1Videos(BaseModel):
|
|
26
|
+
"""
|
|
27
|
+
Container object holding a paginated list of recorded videos. Use the before parameter with the last video's createdAt timestamp to retrieve the next page of results. # noqa: E501
|
|
28
|
+
"""
|
|
29
|
+
videos: conlist(V1Video) = Field(..., description="Array of video metadata objects sorted by creation time in descending order (newest first). May be empty if no videos match the query criteria.")
|
|
30
|
+
__properties = ["videos"]
|
|
31
|
+
|
|
32
|
+
class Config:
|
|
33
|
+
"""Pydantic configuration"""
|
|
34
|
+
allow_population_by_field_name = True
|
|
35
|
+
validate_assignment = True
|
|
36
|
+
|
|
37
|
+
def to_str(self) -> str:
|
|
38
|
+
"""Returns the string representation of the model using alias"""
|
|
39
|
+
return pprint.pformat(self.dict(by_alias=True))
|
|
40
|
+
|
|
41
|
+
def to_json(self) -> str:
|
|
42
|
+
"""Returns the JSON representation of the model using alias"""
|
|
43
|
+
return json.dumps(self.to_dict())
|
|
44
|
+
|
|
45
|
+
@classmethod
|
|
46
|
+
def from_json(cls, json_str: str) -> V1Videos:
|
|
47
|
+
"""Create an instance of V1Videos from a JSON string"""
|
|
48
|
+
return cls.from_dict(json.loads(json_str))
|
|
49
|
+
|
|
50
|
+
def to_dict(self):
|
|
51
|
+
"""Returns the dictionary representation of the model using alias"""
|
|
52
|
+
_dict = self.dict(by_alias=True,
|
|
53
|
+
exclude={
|
|
54
|
+
},
|
|
55
|
+
exclude_none=True)
|
|
56
|
+
# override the default output from pydantic by calling `to_dict()` of each item in videos (list)
|
|
57
|
+
_items = []
|
|
58
|
+
if self.videos:
|
|
59
|
+
for _item in self.videos:
|
|
60
|
+
if _item:
|
|
61
|
+
_items.append(_item.to_dict())
|
|
62
|
+
_dict['videos'] = _items
|
|
63
|
+
return _dict
|
|
64
|
+
|
|
65
|
+
@classmethod
|
|
66
|
+
def from_dict(cls, obj: dict) -> V1Videos:
|
|
67
|
+
"""Create an instance of V1Videos from a dict"""
|
|
68
|
+
if obj is None:
|
|
69
|
+
return None
|
|
70
|
+
|
|
71
|
+
if not isinstance(obj, dict):
|
|
72
|
+
return V1Videos.parse_obj(obj)
|
|
73
|
+
|
|
74
|
+
_obj = V1Videos.parse_obj({
|
|
75
|
+
"videos": [V1Video.from_dict(_item) for _item in obj.get("videos")] if obj.get("videos") is not None else None
|
|
76
|
+
})
|
|
77
|
+
return _obj
|
|
78
|
+
|
|
79
|
+
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
OurSky
|
|
5
|
+
|
|
6
|
+
Node Platform API
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.3.9821
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
from typing import List, Optional
|
|
22
|
+
from pydantic import BaseModel, conlist
|
|
23
|
+
from ourskyai_node_platform_api.models.v1_weather_forecast_city import V1WeatherForecastCity
|
|
24
|
+
from ourskyai_node_platform_api.models.v1_weather_forecast_item import V1WeatherForecastItem
|
|
25
|
+
|
|
26
|
+
class V1WeatherForecast(BaseModel):
|
|
27
|
+
"""
|
|
28
|
+
V1WeatherForecast
|
|
29
|
+
"""
|
|
30
|
+
city: Optional[V1WeatherForecastCity] = None
|
|
31
|
+
days: Optional[conlist(V1WeatherForecastItem)] = None
|
|
32
|
+
__properties = ["city", "days"]
|
|
33
|
+
|
|
34
|
+
class Config:
|
|
35
|
+
"""Pydantic configuration"""
|
|
36
|
+
allow_population_by_field_name = True
|
|
37
|
+
validate_assignment = True
|
|
38
|
+
|
|
39
|
+
def to_str(self) -> str:
|
|
40
|
+
"""Returns the string representation of the model using alias"""
|
|
41
|
+
return pprint.pformat(self.dict(by_alias=True))
|
|
42
|
+
|
|
43
|
+
def to_json(self) -> str:
|
|
44
|
+
"""Returns the JSON representation of the model using alias"""
|
|
45
|
+
return json.dumps(self.to_dict())
|
|
46
|
+
|
|
47
|
+
@classmethod
|
|
48
|
+
def from_json(cls, json_str: str) -> V1WeatherForecast:
|
|
49
|
+
"""Create an instance of V1WeatherForecast from a JSON string"""
|
|
50
|
+
return cls.from_dict(json.loads(json_str))
|
|
51
|
+
|
|
52
|
+
def to_dict(self):
|
|
53
|
+
"""Returns the dictionary representation of the model using alias"""
|
|
54
|
+
_dict = self.dict(by_alias=True,
|
|
55
|
+
exclude={
|
|
56
|
+
},
|
|
57
|
+
exclude_none=True)
|
|
58
|
+
# override the default output from pydantic by calling `to_dict()` of city
|
|
59
|
+
if self.city:
|
|
60
|
+
_dict['city'] = self.city.to_dict()
|
|
61
|
+
# override the default output from pydantic by calling `to_dict()` of each item in days (list)
|
|
62
|
+
_items = []
|
|
63
|
+
if self.days:
|
|
64
|
+
for _item in self.days:
|
|
65
|
+
if _item:
|
|
66
|
+
_items.append(_item.to_dict())
|
|
67
|
+
_dict['days'] = _items
|
|
68
|
+
return _dict
|
|
69
|
+
|
|
70
|
+
@classmethod
|
|
71
|
+
def from_dict(cls, obj: dict) -> V1WeatherForecast:
|
|
72
|
+
"""Create an instance of V1WeatherForecast from a dict"""
|
|
73
|
+
if obj is None:
|
|
74
|
+
return None
|
|
75
|
+
|
|
76
|
+
if not isinstance(obj, dict):
|
|
77
|
+
return V1WeatherForecast.parse_obj(obj)
|
|
78
|
+
|
|
79
|
+
_obj = V1WeatherForecast.parse_obj({
|
|
80
|
+
"city": V1WeatherForecastCity.from_dict(obj.get("city")) if obj.get("city") is not None else None,
|
|
81
|
+
"days": [V1WeatherForecastItem.from_dict(_item) for _item in obj.get("days")] if obj.get("days") is not None else None
|
|
82
|
+
})
|
|
83
|
+
return _obj
|
|
84
|
+
|
|
85
|
+
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
OurSky
|
|
5
|
+
|
|
6
|
+
Node Platform API
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.3.9821
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
from typing import Optional
|
|
22
|
+
from pydantic import BaseModel, Field, StrictStr
|
|
23
|
+
|
|
24
|
+
class V1WeatherForecastCity(BaseModel):
|
|
25
|
+
"""
|
|
26
|
+
V1WeatherForecastCity
|
|
27
|
+
"""
|
|
28
|
+
name: Optional[StrictStr] = Field(None, description="City name")
|
|
29
|
+
country: Optional[StrictStr] = Field(None, description="Country code")
|
|
30
|
+
__properties = ["name", "country"]
|
|
31
|
+
|
|
32
|
+
class Config:
|
|
33
|
+
"""Pydantic configuration"""
|
|
34
|
+
allow_population_by_field_name = True
|
|
35
|
+
validate_assignment = True
|
|
36
|
+
|
|
37
|
+
def to_str(self) -> str:
|
|
38
|
+
"""Returns the string representation of the model using alias"""
|
|
39
|
+
return pprint.pformat(self.dict(by_alias=True))
|
|
40
|
+
|
|
41
|
+
def to_json(self) -> str:
|
|
42
|
+
"""Returns the JSON representation of the model using alias"""
|
|
43
|
+
return json.dumps(self.to_dict())
|
|
44
|
+
|
|
45
|
+
@classmethod
|
|
46
|
+
def from_json(cls, json_str: str) -> V1WeatherForecastCity:
|
|
47
|
+
"""Create an instance of V1WeatherForecastCity from a JSON string"""
|
|
48
|
+
return cls.from_dict(json.loads(json_str))
|
|
49
|
+
|
|
50
|
+
def to_dict(self):
|
|
51
|
+
"""Returns the dictionary representation of the model using alias"""
|
|
52
|
+
_dict = self.dict(by_alias=True,
|
|
53
|
+
exclude={
|
|
54
|
+
},
|
|
55
|
+
exclude_none=True)
|
|
56
|
+
return _dict
|
|
57
|
+
|
|
58
|
+
@classmethod
|
|
59
|
+
def from_dict(cls, obj: dict) -> V1WeatherForecastCity:
|
|
60
|
+
"""Create an instance of V1WeatherForecastCity from a dict"""
|
|
61
|
+
if obj is None:
|
|
62
|
+
return None
|
|
63
|
+
|
|
64
|
+
if not isinstance(obj, dict):
|
|
65
|
+
return V1WeatherForecastCity.parse_obj(obj)
|
|
66
|
+
|
|
67
|
+
_obj = V1WeatherForecastCity.parse_obj({
|
|
68
|
+
"name": obj.get("name"),
|
|
69
|
+
"country": obj.get("country")
|
|
70
|
+
})
|
|
71
|
+
return _obj
|
|
72
|
+
|
|
73
|
+
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
OurSky
|
|
5
|
+
|
|
6
|
+
Node Platform API
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.3.9821
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
from typing import List, Optional, Union
|
|
22
|
+
from pydantic import BaseModel, Field, StrictFloat, StrictInt, conlist
|
|
23
|
+
from ourskyai_node_platform_api.models.v1_weather_forecast_temperature import V1WeatherForecastTemperature
|
|
24
|
+
from ourskyai_node_platform_api.models.v1_weather_forecast_weather import V1WeatherForecastWeather
|
|
25
|
+
|
|
26
|
+
class V1WeatherForecastItem(BaseModel):
|
|
27
|
+
"""
|
|
28
|
+
V1WeatherForecastItem
|
|
29
|
+
"""
|
|
30
|
+
timestamp: Optional[StrictInt] = Field(None, description="Timestamp of the weather data in UNIX timestamp")
|
|
31
|
+
sunrise: Optional[StrictInt] = Field(None, description="Sunrise time in UNIX timestamp")
|
|
32
|
+
sunset: Optional[StrictInt] = Field(None, description="Sunset time in UNIX timestamp")
|
|
33
|
+
temperature: Optional[V1WeatherForecastTemperature] = None
|
|
34
|
+
humidity: Optional[StrictInt] = Field(None, description="Humidity percentage")
|
|
35
|
+
weather: Optional[conlist(V1WeatherForecastWeather)] = None
|
|
36
|
+
speed: Optional[Union[StrictFloat, StrictInt]] = Field(None, description="Wind speed in m/s")
|
|
37
|
+
deg: Optional[StrictInt] = Field(None, description="Wind direction in degrees")
|
|
38
|
+
clouds: Optional[StrictInt] = Field(None, description="Cloudiness percentage")
|
|
39
|
+
pop: Optional[Union[StrictFloat, StrictInt]] = Field(None, description="Probability of precipitation in %")
|
|
40
|
+
rain: Optional[Union[StrictFloat, StrictInt]] = Field(None, description="Rain volume for the last 3 hours in mm/h")
|
|
41
|
+
__properties = ["timestamp", "sunrise", "sunset", "temperature", "humidity", "weather", "speed", "deg", "clouds", "pop", "rain"]
|
|
42
|
+
|
|
43
|
+
class Config:
|
|
44
|
+
"""Pydantic configuration"""
|
|
45
|
+
allow_population_by_field_name = True
|
|
46
|
+
validate_assignment = True
|
|
47
|
+
|
|
48
|
+
def to_str(self) -> str:
|
|
49
|
+
"""Returns the string representation of the model using alias"""
|
|
50
|
+
return pprint.pformat(self.dict(by_alias=True))
|
|
51
|
+
|
|
52
|
+
def to_json(self) -> str:
|
|
53
|
+
"""Returns the JSON representation of the model using alias"""
|
|
54
|
+
return json.dumps(self.to_dict())
|
|
55
|
+
|
|
56
|
+
@classmethod
|
|
57
|
+
def from_json(cls, json_str: str) -> V1WeatherForecastItem:
|
|
58
|
+
"""Create an instance of V1WeatherForecastItem from a JSON string"""
|
|
59
|
+
return cls.from_dict(json.loads(json_str))
|
|
60
|
+
|
|
61
|
+
def to_dict(self):
|
|
62
|
+
"""Returns the dictionary representation of the model using alias"""
|
|
63
|
+
_dict = self.dict(by_alias=True,
|
|
64
|
+
exclude={
|
|
65
|
+
},
|
|
66
|
+
exclude_none=True)
|
|
67
|
+
# override the default output from pydantic by calling `to_dict()` of temperature
|
|
68
|
+
if self.temperature:
|
|
69
|
+
_dict['temperature'] = self.temperature.to_dict()
|
|
70
|
+
# override the default output from pydantic by calling `to_dict()` of each item in weather (list)
|
|
71
|
+
_items = []
|
|
72
|
+
if self.weather:
|
|
73
|
+
for _item in self.weather:
|
|
74
|
+
if _item:
|
|
75
|
+
_items.append(_item.to_dict())
|
|
76
|
+
_dict['weather'] = _items
|
|
77
|
+
return _dict
|
|
78
|
+
|
|
79
|
+
@classmethod
|
|
80
|
+
def from_dict(cls, obj: dict) -> V1WeatherForecastItem:
|
|
81
|
+
"""Create an instance of V1WeatherForecastItem from a dict"""
|
|
82
|
+
if obj is None:
|
|
83
|
+
return None
|
|
84
|
+
|
|
85
|
+
if not isinstance(obj, dict):
|
|
86
|
+
return V1WeatherForecastItem.parse_obj(obj)
|
|
87
|
+
|
|
88
|
+
_obj = V1WeatherForecastItem.parse_obj({
|
|
89
|
+
"timestamp": obj.get("timestamp"),
|
|
90
|
+
"sunrise": obj.get("sunrise"),
|
|
91
|
+
"sunset": obj.get("sunset"),
|
|
92
|
+
"temperature": V1WeatherForecastTemperature.from_dict(obj.get("temperature")) if obj.get("temperature") is not None else None,
|
|
93
|
+
"humidity": obj.get("humidity"),
|
|
94
|
+
"weather": [V1WeatherForecastWeather.from_dict(_item) for _item in obj.get("weather")] if obj.get("weather") is not None else None,
|
|
95
|
+
"speed": obj.get("speed"),
|
|
96
|
+
"deg": obj.get("deg"),
|
|
97
|
+
"clouds": obj.get("clouds"),
|
|
98
|
+
"pop": obj.get("pop"),
|
|
99
|
+
"rain": obj.get("rain")
|
|
100
|
+
})
|
|
101
|
+
return _obj
|
|
102
|
+
|
|
103
|
+
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
OurSky
|
|
5
|
+
|
|
6
|
+
Node Platform API
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.3.9821
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
from typing import Optional, Union
|
|
22
|
+
from pydantic import BaseModel, Field, StrictFloat, StrictInt
|
|
23
|
+
|
|
24
|
+
class V1WeatherForecastTemperature(BaseModel):
|
|
25
|
+
"""
|
|
26
|
+
V1WeatherForecastTemperature
|
|
27
|
+
"""
|
|
28
|
+
day: Optional[Union[StrictFloat, StrictInt]] = Field(None, description="Day temperature in Celcius")
|
|
29
|
+
min: Optional[Union[StrictFloat, StrictInt]] = Field(None, description="Minimum temperature in Celcius")
|
|
30
|
+
max: Optional[Union[StrictFloat, StrictInt]] = Field(None, description="Maximum temperature in Celcius")
|
|
31
|
+
night: Optional[Union[StrictFloat, StrictInt]] = Field(None, description="Night temperature in Celcius")
|
|
32
|
+
__properties = ["day", "min", "max", "night"]
|
|
33
|
+
|
|
34
|
+
class Config:
|
|
35
|
+
"""Pydantic configuration"""
|
|
36
|
+
allow_population_by_field_name = True
|
|
37
|
+
validate_assignment = True
|
|
38
|
+
|
|
39
|
+
def to_str(self) -> str:
|
|
40
|
+
"""Returns the string representation of the model using alias"""
|
|
41
|
+
return pprint.pformat(self.dict(by_alias=True))
|
|
42
|
+
|
|
43
|
+
def to_json(self) -> str:
|
|
44
|
+
"""Returns the JSON representation of the model using alias"""
|
|
45
|
+
return json.dumps(self.to_dict())
|
|
46
|
+
|
|
47
|
+
@classmethod
|
|
48
|
+
def from_json(cls, json_str: str) -> V1WeatherForecastTemperature:
|
|
49
|
+
"""Create an instance of V1WeatherForecastTemperature from a JSON string"""
|
|
50
|
+
return cls.from_dict(json.loads(json_str))
|
|
51
|
+
|
|
52
|
+
def to_dict(self):
|
|
53
|
+
"""Returns the dictionary representation of the model using alias"""
|
|
54
|
+
_dict = self.dict(by_alias=True,
|
|
55
|
+
exclude={
|
|
56
|
+
},
|
|
57
|
+
exclude_none=True)
|
|
58
|
+
return _dict
|
|
59
|
+
|
|
60
|
+
@classmethod
|
|
61
|
+
def from_dict(cls, obj: dict) -> V1WeatherForecastTemperature:
|
|
62
|
+
"""Create an instance of V1WeatherForecastTemperature from a dict"""
|
|
63
|
+
if obj is None:
|
|
64
|
+
return None
|
|
65
|
+
|
|
66
|
+
if not isinstance(obj, dict):
|
|
67
|
+
return V1WeatherForecastTemperature.parse_obj(obj)
|
|
68
|
+
|
|
69
|
+
_obj = V1WeatherForecastTemperature.parse_obj({
|
|
70
|
+
"day": obj.get("day"),
|
|
71
|
+
"min": obj.get("min"),
|
|
72
|
+
"max": obj.get("max"),
|
|
73
|
+
"night": obj.get("night")
|
|
74
|
+
})
|
|
75
|
+
return _obj
|
|
76
|
+
|
|
77
|
+
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
OurSky
|
|
5
|
+
|
|
6
|
+
Node Platform API
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.3.9821
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
from typing import Optional
|
|
22
|
+
from pydantic import BaseModel, Field, StrictInt, StrictStr
|
|
23
|
+
|
|
24
|
+
class V1WeatherForecastWeather(BaseModel):
|
|
25
|
+
"""
|
|
26
|
+
V1WeatherForecastWeather
|
|
27
|
+
"""
|
|
28
|
+
id: Optional[StrictInt] = Field(None, description="Weather condition id")
|
|
29
|
+
main: Optional[StrictStr] = Field(None, description="Group of weather parameters")
|
|
30
|
+
description: Optional[StrictStr] = Field(None, description="Weather condition description")
|
|
31
|
+
icon: Optional[StrictStr] = Field(None, description="Weather icon id")
|
|
32
|
+
__properties = ["id", "main", "description", "icon"]
|
|
33
|
+
|
|
34
|
+
class Config:
|
|
35
|
+
"""Pydantic configuration"""
|
|
36
|
+
allow_population_by_field_name = True
|
|
37
|
+
validate_assignment = True
|
|
38
|
+
|
|
39
|
+
def to_str(self) -> str:
|
|
40
|
+
"""Returns the string representation of the model using alias"""
|
|
41
|
+
return pprint.pformat(self.dict(by_alias=True))
|
|
42
|
+
|
|
43
|
+
def to_json(self) -> str:
|
|
44
|
+
"""Returns the JSON representation of the model using alias"""
|
|
45
|
+
return json.dumps(self.to_dict())
|
|
46
|
+
|
|
47
|
+
@classmethod
|
|
48
|
+
def from_json(cls, json_str: str) -> V1WeatherForecastWeather:
|
|
49
|
+
"""Create an instance of V1WeatherForecastWeather from a JSON string"""
|
|
50
|
+
return cls.from_dict(json.loads(json_str))
|
|
51
|
+
|
|
52
|
+
def to_dict(self):
|
|
53
|
+
"""Returns the dictionary representation of the model using alias"""
|
|
54
|
+
_dict = self.dict(by_alias=True,
|
|
55
|
+
exclude={
|
|
56
|
+
},
|
|
57
|
+
exclude_none=True)
|
|
58
|
+
return _dict
|
|
59
|
+
|
|
60
|
+
@classmethod
|
|
61
|
+
def from_dict(cls, obj: dict) -> V1WeatherForecastWeather:
|
|
62
|
+
"""Create an instance of V1WeatherForecastWeather from a dict"""
|
|
63
|
+
if obj is None:
|
|
64
|
+
return None
|
|
65
|
+
|
|
66
|
+
if not isinstance(obj, dict):
|
|
67
|
+
return V1WeatherForecastWeather.parse_obj(obj)
|
|
68
|
+
|
|
69
|
+
_obj = V1WeatherForecastWeather.parse_obj({
|
|
70
|
+
"id": obj.get("id"),
|
|
71
|
+
"main": obj.get("main"),
|
|
72
|
+
"description": obj.get("description"),
|
|
73
|
+
"icon": obj.get("icon")
|
|
74
|
+
})
|
|
75
|
+
return _obj
|
|
76
|
+
|
|
77
|
+
|