Commit Graph

15792 Commits

Author SHA1 Message Date
92f557f6de contrib: update x264
Change-Id: If0e90df14266533e5ff38d58cb4dd34876dbce32
2022-10-06 15:11:46 -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
baf2510ffd account_manager: log error if trust request is not sent
Change-Id: Iac15b1cbefadb2b438029f53608542ba577e28af
2022-10-06 10:33:36 -04:00
b7dd425660 misc: set frame time_base when decoding
To properly get the time_base and framerate in the plugins,
we need to set the frame properties when decoding.

GitLab: https://git.jami.net/savoirfairelinux/jami-plugins/-/issues/23

Change-Id: I69a2235c46b13a15414c4d01821cc1eba5b73987
2022-10-06 08:47:06 -04:00
7b6d544630 Dockerfile: Add guile-3.0-dev
Change-Id: Ie472c28a510e801f347263c26e3241ad2bfdd98f
2022-10-05 11:04:49 -04:00
462e95d326 contact: sync conversationId
Change-Id: I4fd53b924a086e95893e2486e5a4b5b9243025f7
2022-10-04 15:28:15 -04:00
5d88d74e5a conference: fix call between same device
+ Do not setMuted if socketPair not created

GitLab: #769

Change-Id: I4443ed4d381e1729f9d479a84a1b577c79bf2e2e
2022-10-04 15:13:22 -04:00
a7a8420178 nodejs: add composing indicators
Change-Id: I3a1109e0acc64aed296abe19a198d71253cd4364
2022-10-03 14:21:05 -04:00
b16308eaf2 contrib: Remove Guile
Use the system version instead.

Change-Id: I9f7886c73cdb4a70251eef79b1125919a4396eb5
2022-09-30 11:39:58 -04:00
3ef2038acc message engine: only save non-empty message lists
Change-Id: I222a7f6aa81ccf40e5c7037b86c26e4c82f5155b
2022-09-29 13:59:16 -04:00
ff66cac231 contrib: update vpx
Change-Id: I02057d31ede36eff218c2d06d20a4e7d2e49cc7b
2022-09-29 12:04:23 -04:00
85a550e883 misc: fix ut_sip build
Change-Id: Iffedd964cb6848df8172cdc557d7cee3656ebca4
2022-09-28 08:06:03 -04:00
5c55f5efa8 Add jami.pc
Change-Id: If13a246aa50953c99d72937daeb7866de2d82e8d
2022-09-22 10:08:37 -04:00
ea327ff28e Rename libring to libjami
Change-Id: Id123f733759d6147f0f8fb9975b21fd8b0f1e558
2022-09-22 10:08:36 -04:00
0ac8c2341f Dockerfile: add missing dependencies
Change-Id: I15fc7859a645f51918df0a911ae3ba1d077f6211
2022-09-18 15:31:27 -04:00
c482366eb8 contrib: detect vpx from system
Change-Id: Ia493ea8d6375e923185d3b8fccdf94ce669f07fe
2022-09-18 15:31:11 -04:00
52228283fd nodejs: fix build with clang
Change-Id: Id980bc5eecf11424e32dc14275b2dba6862aae24
2022-09-18 12:53:34 -04:00
02ac61d4d7 agent: Bundle bindings as a shared library
Instead of creating an agent executable, bundle the bindinds into a shared
library.  That way, we're adding an extension that Guile can load at runtime.
This shared library can be installed along with libjami so that users can use
the full power of Scheme to control their Jami accounts.

Also create a `guile-wraper' that compiles against the configuration flags.
This is necessary when building libjami with ASAN because then the executable
either has to LD_PRELOAD ASAN or compile against it.  This minimal wrapper
really just boot guile and start a REPL.

Change-Id: I984d211ff03322b102ebe8650950ac8487711e9d
2022-09-16 16:39:48 -04:00
44f4b0037f agent/utils: Add more integer types and remove ensure_type
Guile already checks for the type of its objects before converting to C.  Thus
we don't have to do the check ourself.

The check is still made in `apply_to_guile' to avoid packing values unnecessary
if the procedure is not really a procedure.  The check is also made when
registering callbacks because of their delayed nature.

Change-Id: Id879c04d119884ad1226ed2495b880681125bccc
2022-09-16 16:39:48 -04:00
a6148e7420 agent: Remove AGENT_ASSERT in favor of Guile exception
Instead of crashing the agent every time there's an error, just throw an
exception that can be handled by the user.

Change-Id: I18ac929e54b9cda6485754ccd52325db7dff66d9
2022-09-16 16:39:48 -04:00
3eb7416985 Add Dockerfile to build in a Docker container
update readme for instruction on how to build in Docker

Change-Id: I6c450db3502ea6f96407b745fffc22a791976a33
2022-09-16 16:00:35 -04:00
edeeda0b20 ice_transport: remove useless stop
as the destructor take care of everything now, also it fix some
sporadic crashes in ConnectionManager

Change-Id: I5115c0493cb006ffcbe32ae53565edd3e3d1e98c
GitLab: #764
2022-09-16 11:06:46 -04:00
2bf69dcae8 misc: fix ut_recorder
GitLab: #761

Change-Id: Iebcb1dfed3ebd1919c99e00b9528f3e09a77683c
2022-09-15 10:16:03 -04:00
1cc1af80aa peer_connection: ice must be always true
This avoid the TlsSocketEndpoint to use an invalidated ICE.

GitLab: #763
Change-Id: If89a70521e523e19c38fd61c20c483b89a9b6413
2022-09-09 13:04:51 -04:00
206112b579 agent/main: Remove atexit(Dring::fini)
DRing::fini is currently unsafe for atexit.

Change-Id: If4643a5f5455190351c45eebad816cba5b8c642f
2022-09-09 07:48:45 -04:00
bcabb5f764 mic: fix conversationMembersEvent
Change-Id: Ib595ab696edddd0271b85933b26c591b078ad21c
2022-09-08 16:45:37 -04:00
76226044f5 Revert "fileutils: migrate to boost::nowide"
Causes issues with yaml-cpp. Reverting temporarily until we fix the issue.

Change-Id: I2df0823554ad87880bc965bdff4f4707a6129789
2022-09-08 14:23:55 -04:00
cc2f9efb47 misc: fix tests
+ search method was incorrect if no type provided
+ some tests were not waiting for correct signals

Change-Id: If6ba59829defb168f51c4a8e25f2054cd649b8c2
2022-09-08 14:07:31 -04:00
05ff5b3bfe fileutils: migrate to boost::nowide
Change-Id: Iceae2a19ce3febce62f7916af8b4242e06a7e1d4
2022-09-08 13:13:13 -04:00
95b580b573 nodejs: add binding for MessagesFound
Change-Id: Ifc2d7853ba58311356a4c33e80987424f3bff283
2022-09-07 16:35:03 -04:00
7509c5c311 misc: fix tests build
Change-Id: I238f452f77e10c16ebc5f69bef1b768f44e57e2e
2022-09-07 15:41:23 -04:00
0d23dff746 contrib: fix secp256k1 build on iOS
Fix x86_64 build on Apple silicon.

Change-Id: I233a1e4f48d52a5f9dc56090c864c957a69a2221
2022-09-06 20:45:24 -04:00
1fa8dfe69c contrib: homogeneize jsoncpp versions across platforms
Seems that JSONcpp symbols changed between 1.7.4/1.7.6 causing
some versions to fail.
We already uses 1.9.3 since a long time on other platforms
and ubuntu 22 got a version recent enough too.

Change-Id: I21a4c44ee1359a7d89e45770cb2bad9f2eb00cce
GitLab: #824
2022-09-06 15:38:58 -04:00
e73a85d0a5 swarm: add a sending status while first fetch
This clarify the UI to know what message was not synced with
someone.

Change-Id: If58b9858eaab4b9f161c5968e691c7fd5531ee97
2022-09-06 14:57:53 -04:00
e16ded663a test/sip: Nuke it
These tests were never run on the CI and are not even in the build of Meson.

Change-Id: I0109633de2fd03b8589734d92c039b34d5b729bc
2022-09-06 11:39:55 -04:00
5eb4d10da7 unitTest/sip_account/sip_empty_offer: Nuke it
This test has not been compiled for a long time.  Even if fixed, the test does
not pass anymore.

Change-Id: I6e14cc42e1874962734c1592e47a780e04080a1f
2022-09-06 11:39:55 -04:00
5f3d6dc4eb unitTest/Makefile: Add AM_TESTS_ENVIRONMENT
This will setup the correct environment for each tests and echo tests that are
running.  Users can extend this with the TESTS_ENVIRONMENT variable.

Change-Id: I7aa0f04721251a6ea48cb4c2e7c2238f95d67267
2022-09-06 11:39:55 -04:00
c6659035c7 test/test-env: Add setup of environment for tests
Change-Id: I9c619d9492f3109e432a9803ae0a99cb2ab45d2c
2022-09-06 11:39:55 -04:00
2b19b69f91 plugins: use JAMI_LANG variable
To apply translations, first try to read if the JAMI_LANG variable is
set, if not, try to get the system language.

GitLab: #747

Change-Id: Ie458abcc07c0d0fd151172e172fe1418e5f06e7f
2022-09-06 11:26:20 -04:00
5af1041bf8 proposal: swarm: use log to search messages in conversations
This gives to clients the ability to perform search for messages
with several parameters (account's id, conversation's id, author,
period, max number).
(To discuss) This patch introduces the search API, and a signal
(MessagesFound) to return a result.

GitLab: https://git.jami.net/savoirfairelinux/jami-project/-/issues/1382
Change-Id: Ibc4665449fa0da71a015d1d18d6d0d3209331d43
2022-09-06 09:32:08 -04:00
8145803524 meson: remove subprojects
Change-Id: I384328c002aa1dc495e29dfa16ada3044cdeda28
2022-09-06 11:15:21 +03:00
673dc5f525 conversation: fix crash when block contact
This patch fixes crash that happened when block contact
for not active account.

GitLab: #758
Change-Id: I5347394a67cdffe0d95c9ee03aedf9d2618cec55
2022-09-04 16:03:50 -04:00
92f98bf78d README: Recommend to build with autotools on Linux
Change-Id: Ib91b2a994129b8dc63686d9ffc6f5166765e319a
2022-09-02 20:14:45 -04:00
a835266fbb unittest: add plugins
Create a minimal test for the plugins system.

GitLab: #745

Change-Id: I17d48860ce24cfdc5423d4dcc3cb44bb4d4531f6
2022-09-01 10:38:48 -03:00
0b652eb787 jamiaccount: resend profile when necessary
+ Some code were unused
+ Ask for profiles in one to one after a clone, this
allow to get the profile after adding/removing/re-adding
the contact as the peer will not know and got a cache
where they sent the avatar before.
+ Update unit-test

Change-Id: Ide1df647dbec63f343b60c1c622d1a214f4c3016
2022-08-30 20:59:06 -04:00
f895de0937 jamiaccount: do not stop all subcall if one fails
+ In jamiaccount, if a requestSIPConnection was failing, all subcalls
were stopped causing the main call to fail if not connected. In this
patch we only stop the subcall linked to that request.
+ In connectionmanager, if a request failed, we stopped all other
connections instead of just using the id of the request.

This fix calls whenever somebody called a contact right after the
contact changed its connectivity (and the keep-alive is not sent).

Change-Id: I0d9b14795aad37363de992cb29d4d4ca44668285
2022-08-30 20:59:01 -04:00
21ce9443f0 tls_session: place timeout on request, not connection
This allow to cancel the request if the connection is too long
(ipv6 un-resolvable for example)

Change-Id: I24757dd7a9893c36a86eccdc46271d5453205de5
2022-08-30 20:58:57 -04:00
3a7ccb3dd4 Revert "video device: recheck the video properties"
This reverts commit 2f6f35cf04.

Change-Id: I8b7d0b0fcccd010f03e1e29774ff9afe8e968452
2022-08-30 15:38:15 -03:00
d97c9aae8e misc: remove incorrect error
EFETCH error should be given if libgit got an error, not upper
layer

Change-Id: Icdf08238573d435014e820cd63313a9d92381618
2022-08-30 09:54:33 -04:00
9d1aa894a1 sync_module: send initialized buffer
Change-Id: I8bdd1edef75f728464728644c159777e77d7f7d8
2022-08-26 11:38:46 -04:00