|
1 | 1 | use crate::constants;
|
2 | 2 | use crate::settings::EditorSettings;
|
3 | 3 | use bevy::app::App;
|
4 |
| -use bevy::diagnostic::{DiagnosticsStore, FrameTimeDiagnosticsPlugin, SystemInfo}; |
| 4 | +use bevy::diagnostic::{DiagnosticsStore, FrameTimeDiagnosticsPlugin}; |
5 | 5 | use bevy::ecs::entity::Entities;
|
6 | 6 | use bevy::log::{debug, error, info};
|
7 | 7 | use bevy::prelude::*;
|
@@ -57,7 +57,8 @@ impl Plugin for TelemetryPlugin {
|
57 | 57 | Update,
|
58 | 58 | flush_telemetry_queue_system.run_if(on_timer(TELEMETRY_REPORT_INTERVAL)),
|
59 | 59 | )
|
60 |
| - .add_systems(Startup, startup_system); |
| 60 | + .add_systems(Startup, send_startup_event_system) |
| 61 | + .add_systems(Startup, log_telemetry_hint_system); |
61 | 62 | }
|
62 | 63 | }
|
63 | 64 |
|
@@ -141,7 +142,6 @@ fn telemetry_debug() -> bool {
|
141 | 142 | fn handle_push_telemetry_event_system(
|
142 | 143 | mut events: EventReader<PushTelemetryEvent>,
|
143 | 144 | diagnostics: Res<DiagnosticsStore>,
|
144 |
| - system_info: Res<SystemInfo>, |
145 | 145 | adapter_info: Res<RenderAdapterInfo>,
|
146 | 146 | editor_settings: Res<Persistent<EditorSettings>>,
|
147 | 147 | entities: &Entities,
|
@@ -216,13 +216,23 @@ fn handle_push_telemetry_event_system(
|
216 | 216 | }
|
217 | 217 | }
|
218 | 218 |
|
219 |
| -fn startup_system(mut events: EventWriter<PushTelemetryEvent>) { |
| 219 | +fn send_startup_event_system(mut events: EventWriter<PushTelemetryEvent>) { |
220 | 220 | events.send(PushTelemetryEvent::new(
|
221 | 221 | "phichain.editor.started",
|
222 | 222 | json!({}),
|
223 | 223 | ));
|
224 | 224 | }
|
225 | 225 |
|
| 226 | +fn log_telemetry_hint_system() { |
| 227 | + if telemetry_disabled_by_env_var() { |
| 228 | + info!("Telemetry disabled by environment variable"); |
| 229 | + } else { |
| 230 | + info!("Phichain now collects completely anonymous telemetry regarding usage."); |
| 231 | + info!("This information is used to shape the Phichain roadmap, prioritize features and improve performance."); |
| 232 | + info!("You can learn more, including how to opt-out if you'd not like to participate in this anonymous program, by visiting https://phicha.in/telemetry"); |
| 233 | + } |
| 234 | +} |
| 235 | + |
226 | 236 | fn flush_telemetry_queue_system(
|
227 | 237 | mut reqwest: BevyReqwest,
|
228 | 238 | settings: Res<Persistent<EditorSettings>>,
|
|
0 commit comments