Struct linux_info::network::modem_manager::ModemMode
source · pub struct ModemMode(_);Implementations§
source§impl ModemMode
impl ModemMode
sourcepub fn has_2g(&self) -> bool
pub fn has_2g(&self) -> bool
GPRS, EDGE.
Examples found in repository?
examples/network.rs (line 57)
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
fn main() {
let dbus = NetworkManager::connect().unwrap();
for device in dbus.devices().unwrap() {
let state = device.state().unwrap();
let kind = device.kind().unwrap();
let interface = device.interface().unwrap();
println!("{:?} {:?} {:?}", interface, kind, state);
if let Ok(apn) = device.modem_apn() {
println!("- has apn {:?}", apn);
}
if matches!(state, DeviceState::Activated) {
let ipv4 = device.ipv4_config().unwrap()
.addresses().unwrap();
println!("- addresses {:?}", ipv4);
}
}
let dbus = ModemManager::connect().unwrap();
for modem in dbus.modems().unwrap() {
println!(
"modem {:?} {:?} {:?}",
modem.model().unwrap(),
modem.manufacturer().unwrap(),
modem.device().unwrap()
);
println!(
"- carrier configuration: {:?}",
modem.carrier_configuration().unwrap()
);
println!(
"- state: {:?}, signal: {:?}",
modem.state().unwrap(),
modem.signal_quality().unwrap()
);
let (allowed_modes, preffered_modes) = modem.current_modes().unwrap();
println!(
"- allowed modes: 2g: {} 3g: {} 4g: {} 5g: {}",
allowed_modes.has_2g(),
allowed_modes.has_3g(),
allowed_modes.has_4g(),
allowed_modes.has_5g()
);
println!(
"- prefered modes: 2g: {} 3g: {} 4g: {} 5g: {}",
preffered_modes.has_2g(),
preffered_modes.has_3g(),
preffered_modes.has_4g(),
preffered_modes.has_5g()
);
println!(
"- bands: {:?}",
modem.current_bands().unwrap()
);
modem.signal_setup(10).unwrap();
thread::sleep(Duration::from_secs(1));
if let Ok(cdma) = modem.signal_cdma() {
println!("- cdma: {:?}", cdma);
}
if let Ok(evdo) = modem.signal_evdo() {
println!("- evdo: {:?}", evdo);
}
if let Ok(gsm) = modem.signal_gsm() {
println!("- gsm: {:?}", gsm);
}
if let Ok(umts) = modem.signal_umts() {
println!("- umts: {:?}", umts);
}
if let Ok(lte) = modem.signal_lte() {
println!("- lte: {:?}", lte);
}
if let Ok(nr5g) = modem.signal_nr5g() {
println!("- nr5g: {:?}", nr5g);
}
}
}sourcepub fn has_3g(&self) -> bool
pub fn has_3g(&self) -> bool
UMTS, HSxPA.
Examples found in repository?
examples/network.rs (line 58)
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
fn main() {
let dbus = NetworkManager::connect().unwrap();
for device in dbus.devices().unwrap() {
let state = device.state().unwrap();
let kind = device.kind().unwrap();
let interface = device.interface().unwrap();
println!("{:?} {:?} {:?}", interface, kind, state);
if let Ok(apn) = device.modem_apn() {
println!("- has apn {:?}", apn);
}
if matches!(state, DeviceState::Activated) {
let ipv4 = device.ipv4_config().unwrap()
.addresses().unwrap();
println!("- addresses {:?}", ipv4);
}
}
let dbus = ModemManager::connect().unwrap();
for modem in dbus.modems().unwrap() {
println!(
"modem {:?} {:?} {:?}",
modem.model().unwrap(),
modem.manufacturer().unwrap(),
modem.device().unwrap()
);
println!(
"- carrier configuration: {:?}",
modem.carrier_configuration().unwrap()
);
println!(
"- state: {:?}, signal: {:?}",
modem.state().unwrap(),
modem.signal_quality().unwrap()
);
let (allowed_modes, preffered_modes) = modem.current_modes().unwrap();
println!(
"- allowed modes: 2g: {} 3g: {} 4g: {} 5g: {}",
allowed_modes.has_2g(),
allowed_modes.has_3g(),
allowed_modes.has_4g(),
allowed_modes.has_5g()
);
println!(
"- prefered modes: 2g: {} 3g: {} 4g: {} 5g: {}",
preffered_modes.has_2g(),
preffered_modes.has_3g(),
preffered_modes.has_4g(),
preffered_modes.has_5g()
);
println!(
"- bands: {:?}",
modem.current_bands().unwrap()
);
modem.signal_setup(10).unwrap();
thread::sleep(Duration::from_secs(1));
if let Ok(cdma) = modem.signal_cdma() {
println!("- cdma: {:?}", cdma);
}
if let Ok(evdo) = modem.signal_evdo() {
println!("- evdo: {:?}", evdo);
}
if let Ok(gsm) = modem.signal_gsm() {
println!("- gsm: {:?}", gsm);
}
if let Ok(umts) = modem.signal_umts() {
println!("- umts: {:?}", umts);
}
if let Ok(lte) = modem.signal_lte() {
println!("- lte: {:?}", lte);
}
if let Ok(nr5g) = modem.signal_nr5g() {
println!("- nr5g: {:?}", nr5g);
}
}
}sourcepub fn has_4g(&self) -> bool
pub fn has_4g(&self) -> bool
LTE.
Examples found in repository?
examples/network.rs (line 59)
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
fn main() {
let dbus = NetworkManager::connect().unwrap();
for device in dbus.devices().unwrap() {
let state = device.state().unwrap();
let kind = device.kind().unwrap();
let interface = device.interface().unwrap();
println!("{:?} {:?} {:?}", interface, kind, state);
if let Ok(apn) = device.modem_apn() {
println!("- has apn {:?}", apn);
}
if matches!(state, DeviceState::Activated) {
let ipv4 = device.ipv4_config().unwrap()
.addresses().unwrap();
println!("- addresses {:?}", ipv4);
}
}
let dbus = ModemManager::connect().unwrap();
for modem in dbus.modems().unwrap() {
println!(
"modem {:?} {:?} {:?}",
modem.model().unwrap(),
modem.manufacturer().unwrap(),
modem.device().unwrap()
);
println!(
"- carrier configuration: {:?}",
modem.carrier_configuration().unwrap()
);
println!(
"- state: {:?}, signal: {:?}",
modem.state().unwrap(),
modem.signal_quality().unwrap()
);
let (allowed_modes, preffered_modes) = modem.current_modes().unwrap();
println!(
"- allowed modes: 2g: {} 3g: {} 4g: {} 5g: {}",
allowed_modes.has_2g(),
allowed_modes.has_3g(),
allowed_modes.has_4g(),
allowed_modes.has_5g()
);
println!(
"- prefered modes: 2g: {} 3g: {} 4g: {} 5g: {}",
preffered_modes.has_2g(),
preffered_modes.has_3g(),
preffered_modes.has_4g(),
preffered_modes.has_5g()
);
println!(
"- bands: {:?}",
modem.current_bands().unwrap()
);
modem.signal_setup(10).unwrap();
thread::sleep(Duration::from_secs(1));
if let Ok(cdma) = modem.signal_cdma() {
println!("- cdma: {:?}", cdma);
}
if let Ok(evdo) = modem.signal_evdo() {
println!("- evdo: {:?}", evdo);
}
if let Ok(gsm) = modem.signal_gsm() {
println!("- gsm: {:?}", gsm);
}
if let Ok(umts) = modem.signal_umts() {
println!("- umts: {:?}", umts);
}
if let Ok(lte) = modem.signal_lte() {
println!("- lte: {:?}", lte);
}
if let Ok(nr5g) = modem.signal_nr5g() {
println!("- nr5g: {:?}", nr5g);
}
}
}sourcepub fn has_5g(&self) -> bool
pub fn has_5g(&self) -> bool
5GNR
Examples found in repository?
examples/network.rs (line 60)
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
fn main() {
let dbus = NetworkManager::connect().unwrap();
for device in dbus.devices().unwrap() {
let state = device.state().unwrap();
let kind = device.kind().unwrap();
let interface = device.interface().unwrap();
println!("{:?} {:?} {:?}", interface, kind, state);
if let Ok(apn) = device.modem_apn() {
println!("- has apn {:?}", apn);
}
if matches!(state, DeviceState::Activated) {
let ipv4 = device.ipv4_config().unwrap()
.addresses().unwrap();
println!("- addresses {:?}", ipv4);
}
}
let dbus = ModemManager::connect().unwrap();
for modem in dbus.modems().unwrap() {
println!(
"modem {:?} {:?} {:?}",
modem.model().unwrap(),
modem.manufacturer().unwrap(),
modem.device().unwrap()
);
println!(
"- carrier configuration: {:?}",
modem.carrier_configuration().unwrap()
);
println!(
"- state: {:?}, signal: {:?}",
modem.state().unwrap(),
modem.signal_quality().unwrap()
);
let (allowed_modes, preffered_modes) = modem.current_modes().unwrap();
println!(
"- allowed modes: 2g: {} 3g: {} 4g: {} 5g: {}",
allowed_modes.has_2g(),
allowed_modes.has_3g(),
allowed_modes.has_4g(),
allowed_modes.has_5g()
);
println!(
"- prefered modes: 2g: {} 3g: {} 4g: {} 5g: {}",
preffered_modes.has_2g(),
preffered_modes.has_3g(),
preffered_modes.has_4g(),
preffered_modes.has_5g()
);
println!(
"- bands: {:?}",
modem.current_bands().unwrap()
);
modem.signal_setup(10).unwrap();
thread::sleep(Duration::from_secs(1));
if let Ok(cdma) = modem.signal_cdma() {
println!("- cdma: {:?}", cdma);
}
if let Ok(evdo) = modem.signal_evdo() {
println!("- evdo: {:?}", evdo);
}
if let Ok(gsm) = modem.signal_gsm() {
println!("- gsm: {:?}", gsm);
}
if let Ok(umts) = modem.signal_umts() {
println!("- umts: {:?}", umts);
}
if let Ok(lte) = modem.signal_lte() {
println!("- lte: {:?}", lte);
}
if let Ok(nr5g) = modem.signal_nr5g() {
println!("- nr5g: {:?}", nr5g);
}
}
}Trait Implementations§
source§impl PartialEq<ModemMode> for ModemMode
impl PartialEq<ModemMode> for ModemMode
impl Copy for ModemMode
impl Eq for ModemMode
impl StructuralEq for ModemMode
impl StructuralPartialEq for ModemMode
Auto Trait Implementations§
impl RefUnwindSafe for ModemMode
impl Send for ModemMode
impl Sync for ModemMode
impl Unpin for ModemMode
impl UnwindSafe for ModemMode
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more