Overview
This MR aims at implementing a new strategy to route requests when UACs route requests through NATs. The implemented feature is described in the following RFC: RFC5626, sections 5.1 to 5.3.
This MR maintains compatibility with the current method (called "contact-correction") and adds a new method called "flow-token".
WARNING: at the moment, this new method is not intended to work when updating a session.
TODO
-
Fix tests so they do not use port 5060 -
Generate a random hash key and store it under /var/lib/flexisip - Write unit tests
-
Flow -
FlowUtils -
FlowFactory -
SocketAddress -
NatHelper configuration parameters -
ContactCorrection strategy -
FlowToken stategy
-
-
Write integration tests (feature-level tests) -
Update module NatHelper description in configuration file -
Write doc strings -
Problem when pausing a call between pc and mobile --> udp