pub struct SubmitMulti<'a, const N: usize> {Show 13 fields
pub service_type: ServiceType<'a>,
pub source_addr_ton: Ton,
pub source_addr_npi: Npi,
pub source_addr: COctetString<'a, 1, 21>,
pub esm_class: EsmClass,
pub protocol_id: u8,
pub priority_flag: PriorityFlag,
pub schedule_delivery_time: EmptyOrFullCOctetString<'a, 17>,
pub validity_period: EmptyOrFullCOctetString<'a, 17>,
pub registered_delivery: RegisteredDelivery,
pub replace_if_present_flag: ReplaceIfPresentFlag,
pub data_coding: DataCoding,
pub sm_default_msg_id: u8,
/* private fields */
}Fields§
§service_type: ServiceType<'a>The service_type parameter can be used to indicate the SMS Application service associated with the message. Specifying the service_type allows the ESME to avail of enhanced messaging services such as “replace by service_type” or control the teleservice used on the air interface.
Set to NULL for default MC settings.
source_addr_ton: TonType of Number for source address.
If not known, set to NULL (Unknown).
source_addr_npi: NpiNumbering Plan Indicator for source address.
If not known, set to NULL (Unknown).
source_addr: COctetString<'a, 1, 21>Address of SME which originated this message.
If not known, set to NULL (Unknown).
esm_class: EsmClassIndicates Message Mode and Message Type.
protocol_id: u8Protocol Identifier.
Network specific field.
priority_flag: PriorityFlagDesignates the priority level of the message.
schedule_delivery_time: EmptyOrFullCOctetString<'a, 17>The short message is to be scheduled by the MC for delivery.
Set to NULL for immediate message delivery.
validity_period: EmptyOrFullCOctetString<'a, 17>The validity period of this message.
Set to NULL to request the SMSC default validity period.
Note: this is superseded by the qos_time_to_live TLV if specified.
registered_delivery: RegisteredDeliveryIndicator to signify if a MC delivery receipt or an SME acknowledgement is required.
replace_if_present_flag: ReplaceIfPresentFlagFlag indicating if submitted message should replace an existing message.
data_coding: DataCodingDefines the encoding scheme of the short message user data.
sm_default_msg_id: u8Indicates the short message to send from a list of pre- defined (‘canned’) short messages stored on the MC.
If not using a MC canned message, set to NULL.
Implementations§
Source§impl<'a, const N: usize> SubmitMulti<'a, N>
impl<'a, const N: usize> SubmitMulti<'a, N>
Sourcepub fn into_parts(self) -> SubmitMultiParts<'a, N>
pub fn into_parts(self) -> SubmitMultiParts<'a, N>
Converts Self into its parts.
Sourcepub fn from_parts(parts: SubmitMultiParts<'a, N>) -> Self
pub fn from_parts(parts: SubmitMultiParts<'a, N>) -> Self
Source§impl<'a, const N: usize> SubmitMulti<'a, N>
impl<'a, const N: usize> SubmitMulti<'a, N>
pub fn new( service_type: ServiceType<'a>, source_addr_ton: Ton, source_addr_npi: Npi, source_addr: COctetString<'a, 1, 21>, dest_address: Vec<DestAddress<'a>, N>, esm_class: EsmClass, protocol_id: u8, priority_flag: PriorityFlag, schedule_delivery_time: EmptyOrFullCOctetString<'a, 17>, validity_period: EmptyOrFullCOctetString<'a, 17>, registered_delivery: RegisteredDelivery, replace_if_present_flag: ReplaceIfPresentFlag, data_coding: DataCoding, sm_default_msg_id: u8, short_message: OctetString<'a, 0, 255>, tlvs: Vec<MessageSubmissionRequestTlvValue<'a>, N>, ) -> Self
pub const fn number_of_dests(&self) -> u8
pub fn dest_address(&self) -> &[DestAddress<'_>]
pub fn set_dest_address(&mut self, dest_address: Vec<DestAddress<'a>, N>)
pub fn push_dest_address( &mut self, dest_address: DestAddress<'a>, ) -> Result<(), DestAddress<'a>>
pub fn clear_dest_address(&mut self)
pub const fn sm_length(&self) -> u8
pub const fn short_message(&self) -> &OctetString<'a, 0, 255>
Sourcepub fn set_short_message(&mut self, short_message: OctetString<'a, 0, 255>)
pub fn set_short_message(&mut self, short_message: OctetString<'a, 0, 255>)
Sets the short_message and sm_length.
§Note
short_message is superceded by TlvValue::MessagePayload and should only be used if
TlvValue::MessagePayload is not present.
pub fn tlvs(&self) -> &[Tlv<'_>]
pub fn set_tlvs(&mut self, tlvs: Vec<MessageSubmissionRequestTlvValue<'a>, N>)
pub fn clear_tlvs(&mut self)
pub fn push_tlv( &mut self, tlv: impl Into<MessageSubmissionRequestTlvValue<'a>>, ) -> Result<(), Tlv<'a>>
pub fn builder() -> SubmitMultiBuilder<'a, N>
Trait Implementations§
Source§impl<'a, 'arbitrary: 'a, const N: usize> Arbitrary<'arbitrary> for SubmitMulti<'a, N>
impl<'a, 'arbitrary: 'a, const N: usize> Arbitrary<'arbitrary> for SubmitMulti<'a, N>
Source§fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<Self>
fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<Self>
Self from the given unstructured data. Read moreSource§fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<Self>
fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<Self>
Self from the entirety of the given
unstructured data. Read moreSource§fn size_hint(depth: usize) -> (usize, Option<usize>)
fn size_hint(depth: usize) -> (usize, Option<usize>)
Unstructured this type
needs to construct itself. Read moreSource§fn try_size_hint(
depth: usize,
) -> Result<(usize, Option<usize>), MaxRecursionReached>
fn try_size_hint( depth: usize, ) -> Result<(usize, Option<usize>), MaxRecursionReached>
Unstructured this type
needs to construct itself. Read moreSource§impl<'a, const N: usize> Clone for SubmitMulti<'a, N>
impl<'a, const N: usize> Clone for SubmitMulti<'a, N>
Source§fn clone(&self) -> SubmitMulti<'a, N>
fn clone(&self) -> SubmitMulti<'a, N>
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl<'a, const N: usize> Debug for SubmitMulti<'a, N>
impl<'a, const N: usize> Debug for SubmitMulti<'a, N>
Source§impl<'a, const N: usize> DecodeWithLength<'a> for SubmitMulti<'a, N>
impl<'a, const N: usize> DecodeWithLength<'a> for SubmitMulti<'a, N>
Source§impl<'a, const N: usize> Default for SubmitMulti<'a, N>
impl<'a, const N: usize> Default for SubmitMulti<'a, N>
Source§fn default() -> SubmitMulti<'a, N>
fn default() -> SubmitMulti<'a, N>
Source§impl<'a, const N: usize> Encode for SubmitMulti<'a, N>
impl<'a, const N: usize> Encode for SubmitMulti<'a, N>
Source§impl<'a, const N: usize> Encode for SubmitMulti<'a, N>
Available on crate feature alloc only.
impl<'a, const N: usize> Encode for SubmitMulti<'a, N>
alloc only.Source§impl<'a, const N: usize> From<SubmitMulti<'a, N>> for Pdu<'a, N>
impl<'a, const N: usize> From<SubmitMulti<'a, N>> for Pdu<'a, N>
Source§fn from(value: SubmitMulti<'a, N>) -> Self
fn from(value: SubmitMulti<'a, N>) -> Self
Source§impl<'a, const N: usize> Hash for SubmitMulti<'a, N>
impl<'a, const N: usize> Hash for SubmitMulti<'a, N>
Source§impl<'a, const N: usize> Ord for SubmitMulti<'a, N>
impl<'a, const N: usize> Ord for SubmitMulti<'a, N>
Source§impl<'a, const N: usize> PartialEq for SubmitMulti<'a, N>
impl<'a, const N: usize> PartialEq for SubmitMulti<'a, N>
Source§impl<'a, const N: usize> PartialOrd for SubmitMulti<'a, N>
impl<'a, const N: usize> PartialOrd for SubmitMulti<'a, N>
Source§impl<'a, const N: usize> Serialize for SubmitMulti<'a, N>
impl<'a, const N: usize> Serialize for SubmitMulti<'a, N>
impl<'a, const N: usize> Eq for SubmitMulti<'a, N>
impl<'a, const N: usize> StructuralPartialEq for SubmitMulti<'a, N>
Auto Trait Implementations§
impl<'a, const N: usize> Freeze for SubmitMulti<'a, N>
impl<'a, const N: usize> RefUnwindSafe for SubmitMulti<'a, N>
impl<'a, const N: usize> Send for SubmitMulti<'a, N>
impl<'a, const N: usize> Sync for SubmitMulti<'a, N>
impl<'a, const N: usize> Unpin for SubmitMulti<'a, N>
impl<'a, const N: usize> UnwindSafe for SubmitMulti<'a, N>
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
clone_to_uninit)