[−][src]Struct sbd_lib::sbd_message::Message
A Iridium SBD message.
Implementations
impl Message
[src]
pub fn header(&self) -> &dyn SbdHeader
[src]
Returns this message's header.
pub fn payload(&self) -> &[u8]
[src]
Returns this message's payload.
Examples
use sbd_lib::Message; let message = Message::from_path("data/0-mo.sbd").unwrap(); let payload = message.payload();
pub fn from_path<P: AsRef<Path>>(path: P) -> Result<Self>
[src]
Create message from Path
pub fn read_from<R: Read>(read: R) -> Result<Self>
[src]
Create message from Read
pub fn new(
header: Header,
payload: Vec<u8>,
location: Option<LocationInformation>,
ie: Vec<InformationElement>
) -> Self
[src]
header: Header,
payload: Vec<u8>,
location: Option<LocationInformation>,
ie: Vec<InformationElement>
) -> Self
pub fn create<I: IntoIterator<Item = InformationElement>>(
iter: I
) -> Result<Self>
[src]
iter: I
) -> Result<Self>
Creates a new message from information elements.
Examples
use chrono::{Utc, TimeZone}; use sbd_lib::mo; use sbd_lib::{InformationElement, Header, Message}; let header = InformationElement::Header(mo::Header { auto_id: 1, imei: [0; 15], session_status: mo::SessionStatus::Ok, momsn: 1, mtmsn: 0, time_of_session: Utc.ymd(2017, 10, 1).and_hms(0, 0, 0), }.into()); let payload = InformationElement::MOPayload(Vec::new()); let message = Message::create(vec![header, payload]);
pub fn imei(&self) -> &str
[src]
Returns this message's imei as a string.
Panics
Panics if the IMEI number is not valid utf8. The specification says that IMEIs should be ascii numbers.
Examples
use sbd_lib::Message; let message = Message::from_path("data/0-mo.sbd").unwrap(); let imei = message.imei();
pub fn write_to<W: Write>(&self, write: W) -> Result<()>
[src]
Write this message back to a object that can Write
.
Examples
use sbd_lib::Message; let message = Message::from_path("data/0-mo.sbd").unwrap(); let mut buff = vec![]; message.write_to(&mut buff);
pub fn location(&self) -> &Option<LocationInformation>
[src]
Returns this message's location.
pub fn information_elements(&self) -> &[InformationElement]
[src]
Returns this message's information_elements.
Trait Implementations
impl Clone for Message
[src]
impl Debug for Message
[src]
impl Display for Message
[src]
impl Eq for Message
[src]
impl From<Header> for Message
[src]
impl PartialEq<Message> for Message
[src]
impl StructuralEq for Message
[src]
impl StructuralPartialEq for Message
[src]
Auto Trait Implementations
impl RefUnwindSafe for Message
impl Send for Message
impl Sync for Message
impl Unpin for Message
impl UnwindSafe for Message
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,