Skip to content
Snippets Groups Projects
  1. Nov 18, 2022
    • Sébastien Blin's avatar
      turn: improve connectivity with unreachable TURN · 64ffbffc
      Sébastien Blin authored and Adrien Béraud's avatar Adrien Béraud committed
      Initializing a ICE session will need to gather candidates. The TURN
      can be long to retrieve, and fails can be really long to detect.
      There is at least 3 cases of failures:
      
      + IPv6 badly configured, which can cause a DNS resolution timeout
      of several minutes (that's why the IP was cached)
      + Empty DNS entries, causing a resolution failure
      + A TURN server un-reachable or wrongly configured (e.g. 1.1.1.1)
      
      The idea here is to resolve the TURN and test the connection before
      caching it. And use it when cached.
      This avoid all resolutions steps and we're basically sure that
      it was working.
      
      Other approaches:
      + Add a new callback in pjsip to detect that the TURN is taking too long
      to remove it for next calls, but I prefer to not add another patch in
      pj and it's not an ideal solution
      + trickle ICE to not wait for all candidates, but this is a big changes
      and will generate more DHT messages
      + Do not retransmit messages, but this is against the RFC
      
      Change-Id: Iaec4308bca8cbbbfa4d6b1b6d7a7759b8062a67a
      GitLab: #781
      64ffbffc
    • Sébastien Blin's avatar
      misc: fix ut_conversation_call · 87c5f3ce
      Sébastien Blin authored and Adrien Béraud's avatar Adrien Béraud committed
      Change-Id: I6dc0b22f4336dde4db1d6a869e4447ad51d809ff
      87c5f3ce
    • Sébastien Blin's avatar
      fileTransfer: massive cleanup · 5b56cc7e
      Sébastien Blin authored and Adrien Béraud's avatar Adrien Béraud committed
      The new logic is there! Swarm is working since some time now, so we can
      remove previous logic.
      
      GitLab: #524
      Change-Id: I5ca172e9349694d944c9561d97fe8a63d190ebf3
      5b56cc7e
    • Sébastien Blin's avatar
      Revert "jamidht: use dht's findCertificate for key lookup" · e63565a9
      Sébastien Blin authored and Adrien Béraud's avatar Adrien Béraud committed
      This causes new accounts to not sync with invalid certificates
      
      This reverts commit 2db218b5.
      
      Change-Id: I5bc98d9463f6ebe5331f908165e06ac5ac1e432a
      e63565a9
    • Adrien Béraud's avatar
      misc: use string_view · 79bf14bc
      Adrien Béraud authored
      Change-Id: Ie2746e3e01c8ebb12c3fd2ec9a08ec8b6b32a55f
      79bf14bc
    • Adrien Béraud's avatar
      misc: cleanup · 38b05456
      Adrien Béraud authored
      Change-Id: I6e5b31c27f3c8bd22a6d6178bf3225f0b7ebde49
      38b05456
    • Adrien Béraud's avatar
      sipaccount: fix srtp · 0d5e1540
      Adrien Béraud authored
      Change-Id: I9aa531e26c3ddcae81472b8ba55fbfe004e21001
      0d5e1540
    • Adrien Béraud's avatar
      jamiaccount: update proxy cache on config change · 47eec984
      Adrien Béraud authored
      Change-Id: Iabc70759c470a74b877e93ef794ed9ca51681d8d
      47eec984
    • Antoine Noreau's avatar
      sip: ensure correct unregister upon closure · 12900ddd
      Antoine Noreau authored and Sébastien Blin's avatar Sébastien Blin committed
      Ensure SIP connections are gracefully terminated:
      Removed duplicated register calls to SIP server
      
      Change-Id: I330e67cf9534504f92517996eb7b693b43d359d3
      Gitlab: #786
      12900ddd
    • Ezra Pierce's avatar
      SIPCall: remove unused code · d13df76b
      Ezra Pierce authored
      getAudioRTP() is not in use anywhere.
      
      Change-Id: Ie88c2f80b1fd7d30f6c4fa586fbf7eaaa3c340ba
      d13df76b
  2. Nov 17, 2022
    • Sébastien Blin's avatar
      sipaccount: fix potential null dereference · e5a449d6
      Sébastien Blin authored
      Detected by sonarqube
      
      Change-Id: I606f9cf2458dda07471d0a67af8915c7ca13d410
      Unverified
      e5a449d6
    • Sébastien Blin's avatar
      swarm: follow user preference for hosting conferences · 08ef8dd8
      Sébastien Blin authored
      This avoid mobile phone to host conferences for others unless
      explicitly authorized by the user.
      Clients can show it via the "hostConference" conversation's preference.
      
      Documentation: https://docs.jami.net/technical/swarm.html#call-in-swarm
      GitLab: #312
      Change-Id: I9bbd3e394cd1b3bcfd4a3120d9023a5ed686303d
      08ef8dd8
    • Sébastien Blin's avatar
      swarm: add call support · 89609362
      Sébastien Blin authored
      This patch introduces the ability to start calls and extends the
      usage of rendezvous points to swarm with multiple participants.
      
      When starting a call in a swarm with multiple participats, one device
      will work as the host of the conference, and the caller will
      immediately start the call alone.
      Other peers will receive a commit and a notification to be able
      to join the active call. To join a call, users needs to call
      rdv:uri/device/convId/confId to be added (if authorized) to the conf.
      
      There are some majors differences in the process.
      First, every conversation will be able to decide a default host
      for conferences. This still needs some design and will be
      introduced in another patch. For now, the caller is the host.
      Then, because all members of the call may not be interested to join
      a call, or they may want to get several calls at the same time, the
      system must be able to manage more than one active calls (e.g. a
      company with multiple projects can do several standups at the same
      time).
      Finally, in the conversation, two commits will be generated to be
      able to know what active calls are available. The first is
      announcing that a conference started, the second announces that
      the conference stopped (the host closed the call).
      However, this introduces a difficulty. The host may crash and not
      commit the end of the call in time. In this case, hostedCalls are
      stored in a file and the conversation is updated during the init
      of the daemon.
      
      Change-Id: I081a4920edb3773bbed884ae50f34e476ad42094
      Documentation: https://docs.jami.net/technical/swarm.html#call-in-swarm
      GitLab: #312
      89609362
  3. Nov 16, 2022
  4. Nov 15, 2022
  5. Nov 04, 2022
  6. Nov 03, 2022
  7. Nov 02, 2022
  8. Nov 01, 2022
  9. Oct 31, 2022
  10. Oct 29, 2022
    • Olivier Dion's avatar
      Replace DRing for libjami · d54a84ec
      Olivier Dion authored and Sébastien Blin's avatar Sébastien Blin committed
      It's not possible to replace the DRing namespace for jami because of conflicts
      with namespaces and classes defined under the jami namespace.  Thus, use libjami
      as the namespace.
      
      Script to reproduce:
      
       rg -l DRing | sort | uniq | awk '$0 !~ /NEWS/' | xargs sed -i -e 's|DRing|libjami|g'
       rg -l DRING_ | sort | uniq | xargs sed -i -e 's|DRING_|LIBJAMI_|g'
       sed -i -e 's|dring|jami|g' src/jami/CMakeLists.txt
       sed -i -e 's|dring|jami|g' src/jami/def.h
      
      Change-Id: I80e8c8b58a7586527a016bbef850bab07869c473
      d54a84ec
  11. Oct 28, 2022
    • Antoine Noreau's avatar
      sip: fixed non-TLS incoming & outgoing SMS messages · 94ec7eea
      Antoine Noreau authored
      Authentication realm kept as wildcard * to accept all challenges
      
      Gitlab: #680
      
      Change-Id: Ie75243466f683d939e27a94f5a9a16652e4a38de
      94ec7eea
    • Thomas Ballasi's avatar
      multiplexed_socket: add ChannelSocketTest · 5f5e10db
      Thomas Ballasi authored and Sébastien Blin's avatar Sébastien Blin committed
      The usage of ChannelSocketTest helps avoiding unnecessary overhead when
      running unit tests (especially on creating a huge quantity of nodes and
      sockets).
      
      ChannelSocketTest implements a simplier form of ChannelSocket that
      directly communicates to a peer rather than through a socket.
      
      Change-Id: Id1c68aaa92f8f8cf8002c417f670254b0b851cfb
      5f5e10db
  12. Oct 27, 2022
  13. Oct 26, 2022
  14. Oct 25, 2022
Loading