Richard Fuchs
f5f29e1c59
TT#101150 add min/max/avg tracking for gauge stats
...
Change-Id: I6a682f2bb98673361a8454f419f8a0fb7d37ef75
4 years ago
Richard Fuchs
b4295684a5
TT#101150 convert stats gauge handling to macros
...
Change-Id: I583bb1a09196d055710ee5e1d379541f23c54117
4 years ago
Richard Fuchs
8b5f0e997e
TT#101150 copy out per-interface counter stats
...
Change-Id: I44174b1975b1ccfe30e6e9050bed00d57c7b8157
4 years ago
Richard Fuchs
7337f4a231
TT#101150 obsolete offers/answers/deletes_ps
...
Change-Id: I92e1a3617e2c47deeacc0186a930da0f6247f273
4 years ago
Richard Fuchs
d197a27b40
TT#101150 add graphite-specific global_stats_ax
...
Change-Id: I01ad26b1c6029d02c0a41216ba238c1f2c3a2f2d
4 years ago
Richard Fuchs
ad64f4fa00
TT#101150 introduce proper struct for "counter" style stats
...
Change-Id: Ifd06c54b25126426fe21723b8fb7a21d9bd03cba
4 years ago
Richard Fuchs
7dcc4473f5
TT#101150 split out "gauge" style stats
...
Change-Id: I52617a083bbbd41342b6413d8cacc5235cec51d9
4 years ago
Richard Fuchs
a1f3530292
TT#101150 separate out `struct stream_stats`
...
Change-Id: I709060d9e805175bd99173df03e581b593506e15
4 years ago
Richard Fuchs
9c3e5e1fd7
TT#101150 properly name RTPE_STATS_INC/ADD
...
Change-Id: Iba35ea5a453d1a45b575ee98c4aeb2e0aef39473
4 years ago
Richard Fuchs
406f2dc36d
TT#101150 remove in_tos_tclass from struct stats
...
Change-Id: I000f19f3eade23085952c86f6f730ab954f81b95
4 years ago
Richard Fuchs
30d91ecc63
TT#101150 add test script for stats output
...
Change-Id: I13cc172b082e78c3d52032bd72e0a2f5158c71ed
4 years ago
Richard Fuchs
3f69a48f07
TT#14008 add NAT-wait flag
...
Change-Id: Icfbacc3094ee20955eb50ad9f9c487e9b9a239b9
4 years ago
Richard Fuchs
2a39277f0c
TT#14008 add hash table for subscriptions for quick lookups
...
Change-Id: Id1585cc7edb8c72bc571006f20228706d00e6955
4 years ago
Richard Fuchs
2130e2f62b
TT#89352 support Janus control protocol
...
Change-Id: I0a6d5fc93c5fa505390408043feeca3f5cf61181
4 years ago
Richard Fuchs
f04332915b
TT#91151 add publish/subscribe commands
...
Change-Id: I1842b89efea7fa3af0bd4d045e49da31285cd0e1
4 years ago
Richard Fuchs
413798e43f
TT#132251 implement media silencing
...
Change-Id: I0902bd72e2733b96ff75bcf52856a58c51a750f6
4 years ago
Richard Fuchs
99fbff408e
TT#14008 fix call iterator dead lock
...
... almost there ...
Change-Id: I3261ec91ac7481bb275bbb4f9841747938706e61
4 years ago
Richard Fuchs
0266886487
TT#37394 support SO_INCOMING_CPU
...
Change-Id: I8017929519cc3b721272cc122bee4fdc36c7317a
4 years ago
Richard Fuchs
cda67ac5ac
TT#14008 fix call iterator race condition
...
The contents of the ->next element cannot be accessed completely lock
free as they're zeroed out during call removal. Instead grab a reference
to the linked next call before releasing the lock, and also lock the
next element before moving on. This requires a more granular locking as
not to interfere with call removal: One lock to protect the contained
call and the ->next, and another to protect the ->prev
Change-Id: I5474ea3f88e3276f93ba62a952b3be13c0c182e9
4 years ago
Richard Fuchs
5c519ec2db
TT#89352 allow create-only mode for call_get_*
...
Change-Id: I4dd760b14ef1c91d463a2390ff3c52d71acedf4a
4 years ago
Richard Fuchs
765b1e3bca
TT#89352 use bool type for foreign call functions
...
Change-Id: If8d5e28db534e6aeaaffb885e732e2bdd7338831
4 years ago
Richard Fuchs
45bd10d323
TT#14008 delay learning of endpoint address after re-invite
...
This fixes a race condition: Peer sends updated SDP with new address,
but an older RTP packet from the old address is received afterwards.
Thsi triggers learning of this old address is the "correct" endpoint.
Afterwards the peer stops sending RTP until a packet to the new endpoint
is received there, which never happens because the new endpoint has been
discarded in favour of the "learned" old one.
closes #817
Change-Id: I508f465a669f03e35ddcc6e770d5e7859e57569f
4 years ago
Richard Fuchs
00c6dfb204
TT#91151 add function to create synthetic SDP
...
Change-Id: I7c4698a61c380efc8043444e255f8d5a1c7f0c6d
4 years ago
Richard Fuchs
ffaed806c3
TT#91151 save raw protocol string
...
Change-Id: I21bee5b28522ef01fa5902c0b1fc69e2cade8434
4 years ago
Richard Fuchs
d0c6919923
TT#91151 save last input SDP w/ parsed
...
Change-Id: I561371fe83b1aea65e3ae3f8b60ceb9250923a23
4 years ago
Richard Fuchs
92fb330a46
TT#91151 implement one-to-many forwarding
...
Change-Id: I80fd35da680d4ad1f4d3d21f14f11363106b9917
4 years ago
Richard Fuchs
3b3979586f
TT#91151 move `num_ports` into stream_params
...
Change-Id: I8f20f07f092204a70917c3d180adc13fb7b44da1
4 years ago
Richard Fuchs
1d387b98ef
TT#112700 rework codec offer/answer routine
...
Complete overhaul of the codec handling code:
*) obsolete flags `asymmetric codecs`, `symmetric codecs`, `reorder
codecs`
*) support proper codec offer/answer
*) split codec manipulation (strip/offer/accept/etc) into separate
functions for clarity and better code maintenance
*) fully update codec handlers in both directions after an answer
*) explicit allocation and handling of codecs and payload types in a
codec_store object
*) improve codec matchup logic during answer
*) more explicit handling of supplemental codecs (CN/DTMF)
*) remove now obsolete hacks for handling certain use cases
Change-Id: I996705ba8fe339524c2f70e6bb0fd854f9a1f4fb
4 years ago
Richard Fuchs
256b9917ec
TT#121752 associate SSRC hash to monologue instead of entire call
...
This solves problems when the same SSRC is looped through the same call
multiple times in different mono/dialogues, with different parameters.
Change-Id: I1d033cb1f012574d82b5bcbfffe11eb5f983cfd8
4 years ago
Richard Fuchs
dd58a1a42d
TT#14008 reset SRTP index on endpoint change
...
closes #1277
Change-Id: If951bc8abdfb1cec88abf5fc6e36d48aff575e98
4 years ago
Richard Fuchs
369e64f9a7
TT#14008 add mqtt support
...
Change-Id: Ica4a3e4ef58eadf3feca44ea63f2308103b3146f
4 years ago
Richard Fuchs
e32d128bd8
TT#14008 add cumulative global stats counters
...
Change-Id: I884a47c6d3e52fcb5572187fbd71fd11ec08cb8e
4 years ago
Richard Fuchs
95a30674ac
TT#14008 implement lock-light global call iterators
...
Change-Id: Ie01eb06262267a1aa0b69f632a515d5271bafb52
4 years ago
Richard Fuchs
5c50ec2bbe
TT#14008 convert RTCP timer and DTX to regular timer
...
Change-Id: I7f9e1e586e237d6b40ee250ed149cb21eae87f95
4 years ago
Richard Fuchs
0e2bddb6c8
TT#14008 add `pierce-NAT` flag
...
Change-Id: I1ec9b0ba152939cb6dc079e0047040da862945dc
4 years ago
Richard Fuchs
a009f76456
TT#14008 support media echo and blackhole
...
Change-Id: I9df4680188709867db2b61d97cc5f1e30c59e0d7
4 years ago
Richard Fuchs
87e5efc7d4
TT#111150 fix mem leaks in test-transcode
...
Change-Id: I3a796184e64b1fc1f760b53fe7d1855997ab8b72
4 years ago
Richard Fuchs
a8d5076065
TT#119502 correctly restore calls from both Redis instances
...
Change-Id: I713d7e8ba0a7d14f5ef9016d33619df91ce6ec32
4 years ago
Richard Fuchs
a86d98f8d1
TT#118902 add support for per-call debugging
...
Change-Id: I9b0eab21ff4e5c241ff045049ccd37f6044d5707
4 years ago
Stefan Mititelu
482e2d0d2b
Add stats for ipv4/ipv6/mixed media calls
...
Also Send stats for ipv4/ipv6/mixed media calls to graphite
4 years ago
Richard Fuchs
8029a4d1cd
TT#113750 don't auto switch from an already selected fingerprint
...
If we receive an SDP with a DTLS fingerprint, by default we adopt the
hash function used for that fingerprint in subsequent communication with
that peer. However, if the SDP is an answer, and we previously used a
different hash function in the offer towards that peer, then a later
re-invite offer would be sent with a different fingerprint, causing an
unexpected DTLS restart. Instead, make sure we don't change fingerprints
if one was already sent.
Change-Id: I603bb86ce2d7121556c161749ed08128dd0b63b2
4 years ago
Richard Fuchs
3791b8f595
TT#107565 add `replace-session-name` option
...
Change-Id: I10d89f3bf8e88fb953cc7cc7fffae056bf0092c3
4 years ago
Richard Fuchs
fc83f64575
TT#107565 add `replace-username` option
...
Change-Id: I89dd560789adde4d96fa6a6f314b1c3c81a5a47b
4 years ago
Guillem Jover
68797f4195
TT#111150 Mark bit-fields explicitly with as unsigned
...
Whether a bit-field is signed or unsigned is implementation specific, so
we should be explicit about this.
Change-Id: I744df3d24bc08e95fa816ba4135f19cd3a5dcb17
Warned-by: lgtm
4 years ago
Richard Fuchs
76d5828c82
TT#91151 explicitly keep track of zero endpoint addresses
...
Change-Id: I6044cddc7d997848715df6701fd8a61a1e0bf289
4 years ago
Richard Fuchs
36273e1f5d
TT#107565 add option to track SDP version
...
Change-Id: Ifb3ca589742a4ad0cc83982d6e42bf692a2c98db
4 years ago
balajeesv
ffc9e34e14
TT#14008 Squashed commit of the following:
...
closes #1134
commit 1cdf8d50844baa27513c51a552504a8406ca17a4
Merge: 2fc54462
cc4d049f
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Mon Feb 1 11:19:43 2021 -0500
Merge branch 'jb_disable' of https://github.com/balajeesv/rtpengine into balajeesv-jb_disable
Change-Id: Ic01bbeb776d8ac0f3ebb46ae0a263243828443bb
commit cc4d049fab
Merge: 2f935206
9deedea1
Author: balajeesv <balajee.sv@gmail.com>
Date: Fri Dec 11 23:15:48 2020 +0530
Merge branch 'jb_disable' of https://github.com/balajeesv/rtpengine into jb_disable
commit 2f935206de
Merge: f553a9e5
7c3d2e01
Author: Balajee SV <41125423+balajeesv@users.noreply.github.com>
Date: Fri Dec 11 23:12:27 2020 +0530
Merge branch 'master' into jb_disable
commit 9deedea1c4
Merge: f553a9e5
7c3d2e01
Author: Balajee SV <41125423+balajeesv@users.noreply.github.com>
Date: Fri Dec 11 23:12:27 2020 +0530
Merge branch 'master' into jb_disable
commit f553a9e582
Author: balajeesv <balajee.sv@gmail.com>
Date: Fri Dec 11 22:47:46 2020 +0530
rtpengine: Disable jitter-buffer per call in offer
Change-Id: Ib4443a0d66c78749e24f3d2cb48c991e408e21fd
4 years ago
Richard Fuchs
97a1c218fa
TT#106101 handle out-of-order ICE fragments
...
Change-Id: I6b16474d505a40055b06d215e4cc6c5391214613
4 years ago
Richard Fuchs
ba66e5fa3a
TT#99621 support RTCP generation
...
Change-Id: Iff832eaa4148cce4d87d24d4dc3b908dfa361770
4 years ago
Richard Fuchs
260a170524
TT#81212 add trigger to set all calls to own or foreign
...
Change-Id: I9ee69680bccd79bae19332189a8531eaa2f6950b
5 years ago