pub struct DialogId {
pub call_id: String,
pub local_tag: String,
pub remote_tag: String,
}Expand description
SIP Dialog Identifier
DialogId uniquely identifies a SIP dialog. According to RFC 3261, a dialog is
identified by the Call-ID, local tag, and remote tag.
§Fields
call_id- The Call-ID header field value from SIP messages, identifying a call sessionlocal_tag- The local tag for this endpoint (From tag for client role, To tag for server role)remote_tag- The remote tag for the peer (To tag for client role, From tag for server role)
§Examples
use rsipstack::dialog::DialogId;
let dialog_id = DialogId {
call_id: "1234567890@example.com".to_string(),
local_tag: "alice-tag-123".to_string(),
remote_tag: "bob-tag-456".to_string(),
};
println!("Dialog ID: {}", dialog_id);§Notes
- During early dialog establishment,
remote_tagmay be an empty string - Dialog ID remains constant throughout the dialog lifetime
- Used for managing and routing SIP messages at the dialog layer
Fields§
§call_id: String§local_tag: String§remote_tag: StringTrait Implementations§
impl Eq for DialogId
impl StructuralPartialEq for DialogId
Source§impl TryFrom<&Transaction> for DialogId
impl TryFrom<&Transaction> for DialogId
Auto Trait Implementations§
impl Freeze for DialogId
impl RefUnwindSafe for DialogId
impl Send for DialogId
impl Sync for DialogId
impl Unpin for DialogId
impl UnsafeUnpin for DialogId
impl UnwindSafe for DialogId
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more