]> git.ipfire.org Git - thirdparty/asterisk.git/commit
cdr.c: Set tenantid from party_a->base instead of chan->base.
authorGeorge Joseph <gjoseph@sangoma.com>
Thu, 17 Jul 2025 21:18:50 +0000 (15:18 -0600)
committerAsterisk Development Team <asteriskteam@digium.com>
Wed, 10 Sep 2025 19:55:23 +0000 (19:55 +0000)
commit9f5a7b2ff2acf47ef0acffdb99861604fc02608e
treec19bb6b6fbd4c7b9d856922e24220e8c4194aa93
parente156363e77862f034908fdeb9ffb0ef81bebdb1c
cdr.c: Set tenantid from party_a->base instead of chan->base.

The CDR tenantid was being set in cdr_object_alloc from the channel->base
snapshot.  Since this happens at channel creation before the dialplan is even
reached, calls to `CHANNEL(tenantid)=<something>` in the dialplan were being
ignored.  Instead we now take tenantid from party_a when
cdr_object_create_public_records() is called which is after the call has
ended and all channel snapshots rebuilt.  This is exactly how accountcode
and amaflags, which can also be set in tha dialplpan, are handled.

Resolves: #1259
(cherry picked from commit 84edf7d44bf4b18ddeccfb905443b3224090d89e)
main/cdr.c