On 22/01/2020 14.26, Daniel-Constantin Mierla wrote:
Btw, a few questions for further clarifications: if a call has parallel forking and rtpengine offer is executed for each branch, one is answered, but the other branch-sessions are not not deleted, what does rtpengine? It times them out, or keeps them for the duration of the call?
Those branches would remain open. When the call is finished, it will depend on how the delete is executed: if the delete is done from the side which branched the call (side A, caller), then the entire call including other branches are deleted. If the delete is done from the opposite side (B, one of the branches), the other branches would still remain open, keeping the entire call alive. The call would then eventually time out depending on the config, but it might take a while.
Also in the case of parallel forking, if via-branch is not give to rtpengine offer command, does the 2nd (and the next) rtpengine offer command overwrite the previous one, so the rtpengine keeps only the data from the last one?
Correct, with possibly some undesired side effects depending on which flags were used (e.g codec changes).
Cheers