[Asterisk-code-review] app dial/queue/followme: 'I' options to block initial update... (asterisk[13])

Alexei Gradinari asteriskteam at digium.com
Wed Oct 10 14:19:57 CDT 2018


Alexei Gradinari has posted comments on this change. ( https://gerrit.asterisk.org/10286 )

Change subject: app_dial/queue/followme: 'I' options to block initial updates in both directions
......................................................................


Patch Set 3:

> > > > You can use the pjsip endpoint callerid_tag option string to
 > > > > indicate which tenant the
 > > > > endpoint represents.  The interception routine can compare
 > the
 > > > > channel's callerid tag
 > > > > with the updated connected line's tag.  (You could compare
 > the
 > > > > connected line tag with
 > > > > a parameter set on the interception routine's arguments
 > instead
 > > > of
 > > > > the callerid tag.)
 > > >
 > > > I think I found a bug with CONNECTEDLINE(tag) on attended
 > > transfer
 > > > and need a help to fix it.
 > > >
 > > > Alice's tag is "Alice".
 > > > Bob's tag is empty.
 > > > Charlie's tag is "Charlie".
 > > > Alice calls Bob and then does attended transfer to Charlie.
 > > > When Alice hangs up on the interception routine on the Charlie
 > > > channel
 > > > the CONNECTEDLINE(tag) is "Alice", but should be empty.
 > > >
 > > > If Bob's tag is "Bob" then on the Charlie channel the
 > > > CONNECTEDLINE(tag) is "Bob".
 > > >
 > > > I think somewhere the destination tag is not set/reset
 > > > if source tag is empty.
 > > >
 > > > Could you, please, help me find it.
 > >
 > > Connected line updates can be partial updates.  One of the
 > criteria
 > > for
 > > sending a partial update is a NULL string.  NULL strings do not
 > > become part of a connected line update so the other end merges
 > what
 > > it
 > > already has with the information passed in a partial update.
 > >
 > > Channel drivers don't necessarily pass the full party id
 > > information
 > > at once because the other end didn't pass all the information. 
 > For
 > > example ISDN passes the number and then follows up with the name
 > if
 > > available.  Even SIP doesn't always pass a name.
 > 
 > I think the tag is internal information,
 > so it's not passed to or get from external signaling protocol.
 > According to channel.h
 > * \brief User-set "tag"
 > * A user-settable field used to help associate some extrinsic
 > information
 > * about the channel or user of the channel to the party ID.  This
 > information
 > * is normally not transmitted over the wire and so is only useful
 > within an
 > * Asterisk environment.
 > 
 > I think if the user tag is empty then the empty value should be in
 > connected line updates,
 > because it's not part of signaling, it's user attribute.

I found that ast_party_id_copy sets the destination tag unconditionally,
but ast_party_id_set sets the destination tag only if source tag is not empty.
I think ast_party_id_set should set destination tag unconditionally too.


-- 
To view, visit https://gerrit.asterisk.org/10286
To unsubscribe, or for help writing mail filters, visit https://gerrit.asterisk.org/settings

Gerrit-Project: asterisk
Gerrit-Branch: 13
Gerrit-MessageType: comment
Gerrit-Change-Id: I6ce9e151a2220ce9e95aa66666933cfb9e2a4a01
Gerrit-Change-Number: 10286
Gerrit-PatchSet: 3
Gerrit-Owner: Alexei Gradinari <alex2grad at gmail.com>
Gerrit-Reviewer: Alexei Gradinari <alex2grad at gmail.com>
Gerrit-Reviewer: Jenkins2 (1000185)
Gerrit-Reviewer: Richard Mudgett <rmudgett at digium.com>
Gerrit-Comment-Date: Wed, 10 Oct 2018 19:19:57 +0000
Gerrit-HasComments: No
Gerrit-HasLabels: No
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-code-review/attachments/20181010/86b24b79/attachment.html>


More information about the asterisk-code-review mailing list