Commit Graph

555 Commits

Author SHA1 Message Date
b85165ae1a copyright: happy new year!
Change-Id: I2753c58c12d167ee5f7454e5a2ed893991c90e24
2025-01-08 11:02:33 -05:00
e2503d3a4f update license
Change-Id: I8b9e25f99da5945684e265d3923b74065c8ef8eb
2024-11-11 22:42:19 -05:00
ad5b6cbaf6 misc: unify terminology
8+3 filename → 8.3 filename
be ware → beware
{cannot, can not, cant, can't, could not, couldn't} → unable to
conpleted → completed
file name → filename
imcomplete → incomplete
informations → information
trying to → attempting to
wrong password → incorrect password

GitLab: https://git.jami.net/savoirfairelinux/jami-client-qt/issues/1730

Change-Id: Ia7757efafd2c06af978db02c65b40b1b77c393f8
2024-09-16 16:12:55 -04:00
a404577a9e call-swarm: avoid dummy call to create a conference
Now a conference can start without any call (this avoid to attach
a call without peer to create a conference).

Path is now clearer for a call creation:
+ If we receive a call, we attach it to the conference
+ Else we do not create any call and just attach the host.

Next step is to be able to attach a host in audio only without weird
tricks and group addParticipant/bindParticipant

GitLab: #953
Change-Id: I13785a5525e041c37fb62c0c9f355e9371f1e4ad
2024-05-17 12:14:16 -04:00
f2d8c57fc7 call-swarm: fix host attachment for audio-calls
Also, start to fix audio binding (this will be a full patch, but
at least do not attach host)

GitLab: #959
Change-Id: I0aeb9121e2880a5afb4b1ca1a30710d1b60a2e7e
2024-05-17 12:12:59 -04:00
40dddee226 misc: update copyright to 2024
Change-Id: I829473d42b2b90f26ed2d93bbde063a21ce0952c
2024-01-02 17:26:29 -05:00
4166137736 misc: Update copyright years to 2023
Change-Id: Ia80fc12ba65b1abd516af205e6664261ae2e33fe
2023-02-06 01:46:45 -05:00
d54a84ec0b Replace DRing for libjami
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
2022-10-29 16:49:27 -04:00
a4ff4abe70 swarm: add method to save user's preferences
This store user's preferences per conversation into
conversation_data/<convId>/preferences
In this way, the daemon is able to sync this file across devices
and remove preferences at the same time we remove the conversation.

For now, only support "color" and "ignoreNotifications"

The preferences are synced via partial SyncMsg sent across devices.

Change-Id: I8fe74cc06733ad61d45d721e0264b1941d4cf122
2022-10-06 14:47:30 -04:00
53f60a1aa4 trace: add audio tracing and plotting script
Change-Id: Ie5c8fe1d9cc4e5a38a623a1cd4755c00ad4f4904
2022-08-24 13:18:57 -04:00
d3a31590dc tools/trace: Add trace analysis tools
Change-Id: I8edf7ab6e227bd374009da34df008a9ccf418825
2022-06-17 14:59:51 -04:00
5018565239 misc: update copyright date to 2022
Change-Id: I795e3f2f69c07349bf84c87dbcafb502dc8490f8
2022-01-05 16:21:58 -05:00
517f6299e4 api: replace {start/stop}Camera, switchInput with {open/close}VideoInput
Gitlab: #594
Change-Id: Ie9ed60ed9e1ec6f1d7344b2c79544b9cd6f22a91
2021-11-16 14:20:23 -05:00
ba3a411ca3 daemon: Rename dring occurrences in code and file names to jamid.
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
2021-07-15 10:57:26 -04:00
03c5b7528f swarm: remove conversation, first version
Link removeConversation. For this feature there is two possibilities:
+ If we are the last member, remove all the files.
+ If not, wait for another user to sync.

Change-Id: I387a20fe93a72524ae701e7e98d66633d91a9ede
GitLab: #305
2021-04-09 18:02:39 -04:00
c582529f2d tools: add swarm.py to play with swarms
Introduce a new tool using dringctrl to interact with swarms

Change-Id: I067c05a21544a78e4b897025d0b5ebaf52feb7ea
2021-04-09 18:02:39 -04:00
90d7aed63a scripts: Do not hard-code /bin/bash.
Instead, use Bash from PATH.  This approach works universally, even in
environments not strictly adhering to the File Hierarchy
Standard (FHS).

Change-Id: I852c5f4bba3a1bee9b895dcb5da24e5738c4186a
2021-03-16 08:12:54 -04:00
31fa5f12c3 misc: update copyright date
Change-Id: Ib53fa87efdbbbc6b7561e3b37f27d7a8d51af163
2021-01-25 12:14:41 -05:00
569d44b5f6 src: hooks: remove urlhook feature
This feature is mostly a relicate from SFLPhone and introduced a remote
attack vector abusing the system() function weaknesses.

Provided that "sipEnabled" parameter is on in the remote target's
configuration, a malicious peer calling that remote target could
send SIP messages with a crafted "X-ring-url" string in order to
execute arbitrary shell commands on the target.

Header entry "X-ring-url" content is actually consumed by UrlHook
as arguments for the "x-www-browser" command executed using system().

By adding a shell escape sequence to circumvent existing arguments
sanitizing attempts, the malicious peer could execute any shell command
under remote peer user's identity and access sensitive information
available using its privileges.

Remove that feature altogether and enforce users that are relying on
that feature to migrate to Jami "plugins", which are more suitable
for introducing custom Jami behaviors.

Change-Id: I1d6d07771e2b5a7c7f2cb8fc838821106c0a6708
2020-10-13 12:13:23 -04:00
e1e3a39a8f dringctrl: add signal callbacks with data
Change-Id: Ief11a7a484973c15ff5fd03fb64240f267527b2b
2020-06-25 02:51:24 -07:00
f58647ea1a expose a few more functions for python
other updates
* fix config test
* remove bad import (allows dringctrl.py to run, where
  previously it would result in an import error)

Change-Id: I401629956b64d2c8d51c499113f1e03b96ae3338
2020-06-22 16:25:33 -07:00
238ee9195c update copyright year for 2020
Change-Id: I28f193813ad72ee5936ef0be7f252c40c3b748ee
2020-01-03 15:04:47 -05:00
d1415674d1 jami_test.py fixes
Change-Id: If4c13f20b1bbf2e0cf9c6e78ffe4d68b99e98842
2019-05-27 11:14:12 -04:00
1e33aaa2d3 Monitor Jami Reliability
Change-Id: I719a83badfb811ab9bb11dc01d29ce9363829573
2019-05-27 10:32:07 -04:00
8721a9a969 tools: rename controller
Change-Id: Ia7148e36c73b5bb073f7d1acc2bce44d0d05f6c5
2019-03-25 10:56:54 -04:00
8b9940eb26 rename Ring to Jami
Removes refrences to project name in logs and comments where it doesn't
matter whether or not the name is specified.

Change-Id: I17f99390226929ee620bc479b203825389bb3d4d
2019-01-04 16:26:12 -05:00
2a806fa26d misc: update copyright date
Change-Id: Ia4ed75d04a284efa0763c917aeaa2f08863a87cb
2019-01-02 17:49:21 -05:00
55f48f133c fix spelling errors
Change-Id: Ifbc5f3792a7019dcfa8249eb30afe2a64cbeb57c
Reviewed-by: Sebastien Blin <sebastien.blin@savoirfairelinux.com>
2018-07-26 14:05:58 -04:00
b7740bd19d remove some deprecated files
These files comes from sflphone ages, are not relevant, not working and
may confuse people who read them.

Change-Id: I8186c35a36665ef077df38d508e6977e1f833bc9
Reviewed-by: Anthony Léonard <anthony.leonard@savoirfairelinux.com>
2018-02-08 16:02:50 -05:00
1aa7759f8f 2018 copyright date update
Change-Id: I1ef88bc640f79790aad2b5285ea2c776aa8cd366
2018-01-23 17:26:34 -05:00
755347dd6b data transfer: first implementation
First implementation of Reliable Data Transfer feature in Ring.

This implementation is a draft, comes with a Python script
tools/dringctrl/sendfile.py to play with and doesn't
implement all the API as described into "datatransfer: API proposal"
commit.
This version uses TLS over TCP-TURN sockets to encrypt data.

Transfers require a TURN server with TCP peer connections
as described by the RFC-6062.

Testing: Currently only sendFile API is implemented and data are
saved into a temporary file saved in "/tmp/ring_XXXXXX",
where XXXXXX are replace by mkstemp() command.

Change-Id: I5b8f48432edd58df5046e368a99f58ea44046dcd
Reviewed-by: Olivier Soldano <olivier.soldano@savoirfairelinux.com>
2018-01-05 11:18:35 -04:00
4bc6757e37 tools: remove the 'by' in copyright header
Change-Id: I39c63f07adb9843471e56579d7651d42c69ed828
2017-07-19 18:36:27 -04:00
a5ded29b99 update copyright date to 2017
Change-Id: I6dbc51dd41c1f44d1446fe7365026af037bc86d9
Reviewed-by: Stepan Salenikovich <stepan.salenikovich@savoirfairelinux.com>
2017-01-05 16:41:02 -05:00
730b920237 tool: add a script to simulate network bandwith
add a python script to simulate network bandwith using netem tbf to
throttle the connection.
The bandwith used in upload is also monitored. The amount of packets
dropped by netem is also monitored

Change-Id: I895a81f51946914071b7fafa7a102931fa2ec7d6
Tuleap: #1049
2016-10-28 22:44:13 -04:00
c4d7748ec8 update copyright date
- add "alone" files in update-copyright tool
- make a pass of this last tool to fix dates

Change-Id: I1f276a132c0d5468b81400bbb50889e80823f45c
Signed-off-by: Guillaume Roguez <guillaume.roguez@savoirfairelinux.com>
Reviewed-by: Stepan Salenikovich <stepan.salenikovich@savoirfairelinux.com>
2016-09-07 16:16:42 -04:00
c3f08cb928 delete build-system dir
The files in this directory are outdated (for sflphone) and no longer
used.

Change-Id: Ic8aa820c842b31414656c7dae0be433932941bca
Reviewed-by: Guillaume Roguez <guillaume.roguez@savoirfairelinux.com>
2016-08-26 10:21:14 -04:00
36e857fcf0 removing IAX account and libiax dependency
This patch removes all IAX account code and libiax dependency in contrib.
References in documentation have also been removed where needed.

Change-Id: Ifff23725ccf7e1a6820dbc6f57256138a0fca042
Tuleap: #813
2016-06-30 13:25:44 -04:00
e10a8eed64 Removed unused test files
Change-Id: Ie7520115bdac4a4b26963872d3d64a61a8f0d32c
Tuleap: #350
2016-04-15 14:30:07 -05:00
7bcb447b17 dringctrl: improve the mini client
Make import robust.
Support Python2.7 in addition to Python3.
Fix call interface.
Add an auto answer option.
Handle keyboard interrupt.

Change-Id: I56160928ef8fa2e3de893c6b64ad716836bbc13f
Tuleap: #541
2016-04-11 16:27:41 -04:00
e2da4f311f dringctrl: fix args parsing
dashes are translated in underscores by the ArgumentParser

Tuleap: #459
Change-Id: I12e1f7f8bfa61a21bb63e54fe181c9241afe3f9e
2016-03-10 09:50:51 -05:00
90548afd56 copyright date update to 2016
tools/update-copyright script used for that

Change-Id: I89b13300d9ccbdbcd47dba679ba64be82499e83d
Tuleap: #454
2016-03-08 23:00:33 -05:00
ca7ea5a087 tools: update update-copyright script
add for handled files and cases

Change-Id: Iafbc3a07e8d19b4fb116630006b5fcc08ad5f448
Tuleap: #454
2016-03-08 23:00:33 -05:00
131301b402 tools: add/remove DHT account from Python interface
When the daemon is installed on multiple targets with no interface except
the Python control utility, no Ring account should pre-exist so
the Python client should be able to create a new one on first boot.
Rename long arguments.

Tuleap: #365
Change-Id: Ie78401e35aafd8ea656f001928f0a94154352752
2016-02-26 18:10:56 -05:00
64b152692d ringtones: change default ringtone
- add default.wav
- remove unused ringtones

Change-Id: If3e545d53c833cf1a33fa89ec761d6fe579621dd
Tuleap: #204
2016-02-04 14:03:25 -05:00
99edfe7d57 tools: add adapted cpplint.py tool from google
This version has been modified to run under Python3.
It's compatible with Python3.3, but I recommand 3.4
for the general speed improvement made in this version.

Issue: #79891
Change-Id: Icb292e32c5a52a9af82c5d3d586cd91ecff4644d
2016-01-09 11:51:14 -05:00
6c09bc2420 tool/dringctrl: add method to get codec details
add method to get codec details of an account

Issue: #81048
Change-Id: I0889ef08a94d0fb642ba85f7f3cc3bff380033b9
2015-10-07 13:13:15 -04:00
08b1103613 tools/dringctrl: change bitrate only on video
Do not change bitrate on audio codecs. Only video

Issue: #80498
Change-Id: I6d305de2d3ba2156644a2f0ad72adb8efef72227
2015-09-22 22:31:20 -04:00
5236ab05a8 update Copyright header
- remove OpenSSL exception
- fix Savoir-faire Linux naming
- fix common Author: representation

Issue: #80663
Change-Id: I6c3b2ca1ed48ed474a0ecd5a30fe793526e11b00
2015-09-21 13:45:51 -04:00
38e050c457 tools/dringctrl: select codecs to use in config
Add of audio and video codecs selection in config

Issue: #80498
Change-Id: Ic10a6f2894cec9732b7fbbe3a76ccdd3c4bb858a
2015-09-17 14:50:58 -04:00
bc8615c036 tools: use config file for dringctrl.py
Use a config file (test_config.ini) to configure test environnement
test_config.ini is provided as example

Issue: #80498
Change-Id: If0613d2264412af50e42f0a0eb151ecf741cbab4
2015-09-17 12:02:54 -04:00