Richard Fuchs
c27ecf4828
MT#55283 facilitate media reuse for updated subs
...
For a repeated subscribe-request on an existing monologue, make sure
that existing media sections are re-used for the same subscriptions as
they were previously, and only create new ones in an append-only fashion
for media subs which didn't previously exist.
Change-Id: I410c6af17eb31a5c5c43c78a7f82ba867f8480b7
3 months ago
Richard Fuchs
6a7cba0aa2
MT#55283 simplify macro
...
Change-Id: I6c603930562944040b237612fb21b9a888f63183
3 months ago
Nikolay Feshenko
352bda7035
MT#55283 add inject start/stop commands for one-way audio injection
...
New NG protocol commands that mix audio from a source participant
into a destination participant's stream without a full offer/answer
exchange.
- inject start: creates one-way subscription with audio_player mixing
- inject stop: removes injection and restores original codec routing
- Supports cross-call injection via source-call-id (merges calls internally)
- inject attribute persisted through Redis for HA failover
- Audio-only; matches media by media-id, index, then type fallback
Closes #2082
Change-Id: Ib88113b021a4b76bf98892eb1af60c0b36c0d6d3
3 months ago
Richard Fuchs
76d5e6d439
MT#55283 support from-tag aliases
...
Change-Id: Iffd87cc821e35d3d775a5bde1986c2d7dd0192ee
4 months ago
Richard Fuchs
2ab345ccd5
MT#55283 move call components into arena
...
Change-Id: I1b335fb8c13a3cddc38af3abec7a075002c5a8c1
4 months ago
Richard Fuchs
5926aacf9b
MT#55283 combine identical HT types
...
Change-Id: I49b1a1952ede3b34442e9982c91f0218024259d8
4 months ago
Richard Fuchs
1f7d9e5bc9
MT#55283 improvements for clang
...
Change-Id: I7b817c94f34333e1e95199dce9619a1570de7964
4 months ago
Richard Fuchs
cb3edfb996
MT#55283 modernise t_hash_table_iter
...
Change-Id: Ie7e6e794f6b2cd2905f154aecbc92c9681fd535a
4 months ago
Hossein Yavari
0b726872b7
MT#55283 Add configurable HTTP idle (keepalive) timeout
...
- Add --http-idle-timeout option (seconds; 0 = libwebsockets default, 5s for HTTP/1.1)
- Pass keepalive_timeout to libwebsockets when creating HTTP and HTTPS vhosts
- Reject negative values; default 0 preserves existing behaviour
- Document in docs/rtpengine.md and etc/rtpengine.conf
- Extend auto-daemon-tests-http.pl to run with --http-idle-timeout=5
Closes #2077
Change-Id: I134bd08a0b82aa95e8e7c28e75a65ca783cb91d9
4 months ago
Richard Fuchs
1469e0669f
MT#55283 also use offered_codecs for the answerer
...
Closes #2073
Change-Id: I1f9a1576377c21eedd441a3a3f06657384fac32c
4 months ago
Richard Fuchs
cfe9a588fa
MT#55283 extend "answer only" logic
...
Provide an extra codec-store for the lookup of the answer codec. This is
needed for codec switches during an extra answer, as the original codecs
are kept in a different codec-store.
Closes #2073
Change-Id: I7e2efc434789ecc8d3b5fcf97240e5c3f7c84652
4 months ago
Richard Fuchs
23203d9895
MT#55283 add some const qualifiers
...
Change-Id: I94bc88c3538818baf7ac326e49484a893dac7052
4 months ago
Richard Fuchs
ce029008f8
MT#55283 duplicate cache PTs into cache arena
...
Closes #2074
Change-Id: I62946675c5b6c4367ca884dcf346a0f6f6c712a7
4 months ago
Richard Fuchs
4ea7873ca7
MT#55283 update memory arena logic
...
Use a pointer to the arena plus a comparison test to determine whether
to ref or to dup the string, instead of a function pointer. The function
pointer alone wasn't enough as there can be multiple arenas.
Change-Id: Icd317e524fc2e5842f90d172ef7089d2cb0a5a28
4 months ago
Richard Fuchs
0b82e17f01
MT#55283 don't copy media_id from src to dst
...
Change-Id: Ia7c1256dff3025162431e8568cdfcfdfef475070
4 months ago
Richard Fuchs
05268aac2b
MT#55283 don't look up dst media by src media_id
...
Change-Id: Id6da108b68943d62ad7036b2bb38df8f4f786c98
4 months ago
Richard Fuchs
bc85945a59
MT#55283 split out media_gen_media_id
...
Change-Id: Ib34d2b8416b78e41e8acf33ff93777d53bf1faaa
4 months ago
Richard Fuchs
ba8c0fa87f
MT#55283 allow null media_id
...
Change-Id: I2715fcf1a05c430c7eeea5c4c8f8ad7c1bc69ed0
4 months ago
Richard Fuchs
c576286a53
MT#55283 remove redundant loop
...
Change-Id: Ib10cfcc2303b3dd2cb22d41711b598095a3f6ad4
4 months ago
Richard Fuchs
027768f425
MT#55283 combine sub-ans logic
...
Change-Id: I787d3782cba07410d4a6c7ea8640ab98bcb5c6d2
4 months ago
Richard Fuchs
764368cdfa
MT#55283 subscribe requests per media
...
Change-Id: Ie34f167da3ce1ca662bf8771bfaebd5e4a51f413
4 months ago
Richard Fuchs
62f5076690
MT#55283 save per-media stream_params
...
instead of the full list of stream params per monologue
Change-Id: I5fbee96bbd14525ea93b059a15f2199108b30bf1
4 months ago
Richard Fuchs
a255e84180
MT#55283 be more selective for sub unkernel
...
Change-Id: Ic9dff7fe0be4a3c93ec654d2b962c1d943b08066
4 months ago
Richard Fuchs
cdba96c09d
MT#55283 switch subscriptions to intrusive list
...
Change-Id: I4b8839e4d23742f082cb02d4db239d2604d5585e
4 months ago
Richard Fuchs
e015250b96
MT#55283 fix handing of sub-ans with extra media
...
Closes #2066
Change-Id: I35761075c28be3ddf1476d46b3bb8621ae899b40
4 months ago
Denys Pozniak
1542f8f549
MT#55283 Add no-tls-id flag to disable a=tls-id SDP attribute generation
...
Closes #2064
Change-Id: I9f133777ab8c6078e182f20c702fe77be9c5ec8d
4 months ago
Richard Fuchs
3c07afd269
MT#55283 ignore erroneous use of to-tag
...
The Kamailio control module unconditionally adds the current to-tag to
the control message if rtpp-flags parsing is active. This is generally
not desirable in the case of an initial subscribe-request, as we want a
generated to-tag when the existing to-tag belongs to another dialogue.
Special-case this to ignore the included to-tag if none has been given
explicitly.
Change-Id: I1dc28bfdfd086766e0b6a117c74edd0ebb75d526
4 months ago
Richard Fuchs
d6cf41dfc8
MT#55283 track explicit to-tag in rtpp-flags
...
Change-Id: If6856dfa7bc62f5cd6668242fc2726369c0ac465
4 months ago
Richard Fuchs
54c0dc9f31
MT#55283 allow alternative spellings for to-tag
...
Change-Id: I3f66c6f699f279099a60f3ad3c4d76a01d0ed4ec
4 months ago
Richard Fuchs
fe06c5c1ef
MT#55283 track usage of rtpp-flags parsing
...
Change-Id: I1db41e06e3765d4af382b42f976118f88962f503
4 months ago
Richard Fuchs
d3ef4edfcf
MT#55283 allow RTCP APP for peer verification
...
Closes #2057
Change-Id: I069d12d8c7fd7ec36b77f1394fd9e8b928cdfd46
5 months ago
fergusean
256ad7b588
MT#55283 Fix "maximum" typo
...
Closes #2062
Change-Id: Ibef2fe4876cef777e23aaff87918352bec59b13f
5 months ago
Richard Fuchs
d1c235cbd2
MT#55283 tmp buffer improvements
...
Change-Id: I81987a1a559d5bdcd5b1725dba227ce44e096e91
5 months ago
Richard Fuchs
cd5a77ab96
MT#55283 fix colliding use of temp buffer
...
closes #2054
Change-Id: I7943d4591f7fb9f08d079411b4b3c04cf96675e5
5 months ago
Richard Fuchs
b1ac55c844
MT#55283 add str_dup_dup helper function
...
Change-Id: Ieacb147e3a98b5f31a8e45fb709df73636347cc0
5 months ago
Richard Fuchs
454983a3a8
MT#55283 add TOS to kernel player
...
Change-Id: I1e13015675b2b539e9c7cde01fba96a912726793
5 months ago
Richard Fuchs
d27fc60122
MT#55283 add missing opt setting
...
Fixes block-egress not being effective
Change-Id: Ib08146c62ae191abddd181e7df1f9f1e3149d6f9
5 months ago
Richard Fuchs
46a2124503
MT#55283 use wrapper function
...
Change-Id: I1ca86c0a815d959054c560ceed2610b3e2ab26f5
5 months ago
Richard Fuchs
690d601269
MT#55283 const qualifier
...
Change-Id: Ia042e3b8fb09fd832fef60a34c380e3b156aca56
5 months ago
Richard Fuchs
72ab151266
MT#55283 move uring conditions
...
Change-Id: If472d4c352d3e06faf87ab1f857e2fccb1c0d02d
5 months ago
Richard Fuchs
65b94a73a9
MT#55283 return success from add_stream
...
Change-Id: I0d507432993725085671ed19f7a98e69c23c84e3
5 months ago
Richard Fuchs
d813453a56
MT#55283 avoid implicit memcpy
...
Change-Id: I282c922b7866d5c7d837205ba9f91166a00e21aa
5 months ago
Richard Fuchs
26be887cae
MT#55283 generalise obj allocators
...
Change-Id: Ic927bcac573c5b7c0343c77bebdc3c524f2fca64
5 months ago
Richard Fuchs
cc53062ca1
MT#55283 auto detect libiptc
...
Instead of having to manually disable legacy iptables support, auto
detect presence of libiptc and only include the feature if present.
Closes #2045
Change-Id: I649320727e9e9a565eabd369c683dfe6b6bdaec1
5 months ago
Richard Fuchs
5defd9cdb6
MT#55283 fix blank lines in stats output
...
Change-Id: I9fcf9df800dd9c1e59a9b96bff339063da60f629
5 months ago
Orgad Shaneh
2bc07e3cc9
MT#55283 Support "record call" for publish
...
Initial call recording is set by "record call". This worked for
offer/answer but not for publish.
Closes #2052
Change-Id: I0d311406aec36392f29c324ec862baa50bf23756
5 months ago
Richard Fuchs
910624c997
MT#55283 remove redundant condition
...
Change-Id: I324e4eaaaa40bcc919c874b39fa26580b9b849cf
5 months ago
Richard Fuchs
c82d9ff2e6
MT#55283 update return type
...
Change-Id: Ia4fc6e186a9cb0ca6cee9ecd53118362233b1f09
5 months ago
Richard Fuchs
8b4219f739
MT#55283 introduce stream_fd lock
...
Required to avoid races over the "kernelized" flag
Change-Id: I316cc82d57a51e8778be4562a46a262804a7197f
5 months ago
Richard Fuchs
fede2a051e
MT#55283 fix deadlock retry logic
...
Change-Id: I6f4162f724e527828f4f14e26746dff7d43562f5
5 months ago