As a measure of refactorization of the code and to prepare to the
development of dhtnet, the following changes aims at seperating
jami-specific code to connectivity-specific code.
GitLab: #778
Change-Id: Iaa08100f7d61c80292f039a5aae66819cc85b0e9
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
This starts the work to move calls and conference per account,
cleaning up the API and start future re-factorization.
Change-Id: I2a3a2c77e9ba78b1a280bdf8dca7eeaabb72f3fd
Instantiation and initialization of ICE are done in a single
stage (in the class constructor).
To initialize the ICE instance, connection information must
first be gathered asynchronously.
However, when sharing ICE media instance between subcalls,
it's better to have a valid ICE instance as soon as possible
(even if not fully initialized) to proceed with the call
initialization process, then wait for ICE initialization to start
the call.
Thus, the ICE instantiation will be performed synchronously as
soon as the parent (main) call is created, then it will be
initialized asynchronously when the connection info are ready.
Gitlab: #619
Change-Id: I9c97516238f1a690603975ec968c8c6733155d4a
Avoid adding generic srflx candidates if UPNP candidates are
available. This will reduc the size of the check list and also
increase the chance for UPNP candidates to be selected.
Change-Id: Ia1504beffe7e12063ff1c1ad0f54d65bb60496d6
Gitlab: #607
rfc6544 rebase introduced an error where no_pending_check was
wrong causing the on_ice_complete to never be called if all
candidates failed.
GitLab: #597
Change-Id: Idca5f9bb2b03d9ae4687cef64df96cef6509b15d
Automated using the following commands:
$ mv src/{dring,jami}
$ git grep -l src/dring | xargs sed -i 's,src/dring,src/jami,g'
$ git grep -l '#include "dring/' | \
xargs sed -i 's,#include "dring/,#include "jami/,g'
$ git grep -l 'dring.h' | xargs sed -i 's,dring.h,jami.h,g'
And finally,
$ git grep -l 'dring' | xargs sed -i 's,dring,jami,g'
$ files=$(find -name '*dring*' | sort)
$ for f in $files; do mkdir -p "$(dirname "$f")"; \
mv "$f" "$(echo $f | sed 's/dring/jami/g')"; done
To resolve a bad renaming favorably:
$ git grep -l -i AlsaCarjami | \
xargs sed -i -E 's/([Aa])lsaCarjami/\1lsaCardRingtone/g'
The above renaming command is not perfect, so some hand-tuning was
required to complete it.
* src/manager.cpp (Manager::ManagerPimpl::retrieveConfigPath):
Preserve the dring.yml configuration file name, until we add something
to migrate (rename) it to jami.yml.
* man/dring.pod: Delete.
* bin/dbus/jamid.pod: Move to ...
* man/jamid.pod: here.
* bin/dbus/meson.build (jamid_targets): Normalize man section to the
pre-existing 1 and adjust accordingly.
* src/jami/def.h (dring_EXPORTS): Rename to ...
(jami_EXPORTS): ... this.
change-Id: I9828be6da9c711ab2f22c4d1b9539fea89d7b6fb
Rework the test to use two audio streams instead of audio+video.
This is needed to run the test on environments where the camera
is not available (e.g. Docker). For this specific test, the media
type is irrelevant, so using two audio media is acceptable.
Gitlab: #516
Change-Id: Idc4911d5aea5ffdd931bd7d63516ed484344d41c
The ICE component IDs are numbered relative to the SDP session, i.e.,
starts from 1 and incremented for each component.
However, RFC-5245 requires that the ICE component IDs are numbered
relative to the media stream, e.g., component IDs 1 and 2 for audio
and component IDs 1 and 2 for video.
This patch allows parsing ICE components IDs in format specified by
the RFC and in the current format.
This patch also allows generating component IDs compliant with
RFC-5245. The generation is disabled by default, and can be enabled
per account on runtime.
Gitlab: #516
Change-Id: I40c0fa54a64b7d729f714c9769ea36335568f4c9