savoirfairelinux issueshttps://git.jami.net/groups/savoirfairelinux/-/issues2022-12-29T16:26:24Zhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/788File-transfer small improvements2022-12-29T16:26:24ZSébastien BlinFile-transfer small improvementsFile transfer in swarm got auto-retried on error and prepared the way to restart a transfer from where it stopped, but this last feature is not yet implemented.
The idea here is, in case of failure, restart where it stopped. The steps I...File transfer in swarm got auto-retried on error and prepared the way to restart a transfer from where it stopped, but this last feature is not yet implemented.
The idea here is, in case of failure, restart where it stopped. The steps I see to do it:
+ Only deletes the file if the shasum is wrong, or if user-cancelled. Not if the socket is broken
+ Pass "offset" to the file transfer protocol to restart where it stopped (and test it was correctly implemented)
+ Add a new state (waiting for peers to restart) to improve the UI instead of cancelled if the user didn't cancelled the transfer.
Bonus:
+ In client-qt implements "Delete file locally" as it's missing.Fadi ShehadehSébastien BlinFadi Shehadehhttps://git.jami.net/savoirfairelinux/jami-docs/-/issues/11How can SFL afford to give Jami away for free? How does/will SFL make money o...2023-03-30T13:42:46ZovariHow can SFL afford to give Jami away for free? How does/will SFL make money off Jami?https://docs.jami.net/user/faq.html#how-can-sfl-afford-to-give-jami-away-for-free-how-does-will-sfl-make-money-off-jami
https://www.transifex.com/savoirfairelinux/jami/translate/#hu/$/437271800
```
Summary: ethical company, they will m...https://docs.jami.net/user/faq.html#how-can-sfl-afford-to-give-jami-away-for-free-how-does-will-sfl-make-money-off-jami
https://www.transifex.com/savoirfairelinux/jami/translate/#hu/$/437271800
```
Summary: ethical company, they will make money supporting managed Jami solutions for organizations; their main source of income is elsewhere; all Jami code is GPLv3+; etc. etc.
```
Should the en source string be replaced with (perhaps into multiple strings):
```
Fortunately, the main source of income for SFL is elsewhere.
SFL receives income supporting managed Jami solutions for organizations and enterprises with `JAMS (Jami Account Management Server) <https://jami.biz/>`.
Users are welcome to use the `Donate` button on the `Jami <https://jami.net/>` website to support Jami development.
Individuals and organizations are encouraged to contact the SFL/Jami team at contact@jami.net to pay for implementing any `Feature requests <https://docs.jami.net/developer/feature-requests.html>`.
```
TL;DR
1. Could the duplicate `etc. etc.` be improved?
2. Is all Jami code still GPLv3+? Does jami-web code have a AGPLv3+ license? How does the license of the code relate to making money? Should the license be removed from this section? If so, should another Question and Answer be created with the code?
```
Jami code is released as GPLv3+ and AGPLv3+.
```
3. Can paragraphs please be added:
(a) to state that SFL accepts donations? There is a link on the Jami webpage to:
https://www.paypal.com/donate?hosted_button_id=MGUDJLQZ4TP5W
(b) so that people can contact SFL at contact@jami.net to pay for feature development?
(c) about managed Jami solutions be added which links to JAMS (Jami Account Management Server) at https://jami.biz/?
What do you think?
Thank youhttps://git.jami.net/savoirfairelinux/jami-web/-/issues/146Switch audio/video devices2022-12-12T23:21:04ZSimon TranSwitch audio/video devices- [ ] Callback handle for when the option is selected;
- [ ] Change the audio/video source/stream within the callback functions.- [ ] Callback handle for when the option is selected;
- [ ] Change the audio/video source/stream within the callback functions.Simon TranSimon Tranhttps://git.jami.net/savoirfairelinux/jami-web/-/issues/145Simplify and reduce API calls to server from client (e.g. loading messages)2022-11-09T21:57:23ZMisha Krieger-RaynauldSimplify and reduce API calls to server from client (e.g. loading messages)https://git.jami.net/savoirfairelinux/jami-web/-/issues/144replace .then with await2022-12-19T19:39:29ZSimon Tranreplace .then with awaithttps://git.jami.net/savoirfairelinux/jami-web/-/issues/143Improve request headers2022-12-19T19:39:29ZSimon TranImprove request headershttps://git.jami.net/savoirfairelinux/jami-web/-/issues/142Use Axios instead of fetch2022-12-12T23:21:10ZSimon TranUse Axios instead of fetchSimon TranSimon Tranhttps://git.jami.net/savoirfairelinux/jami-docs/-/issues/10[Question] Track user(s) / User Data collection2023-03-19T09:58:40ZElys[Question] Track user(s) / User Data collectionI would like to see an answer in the FAQ (Jami docs) of this question:
Does Savoir-faire Linux (SFL) and/or any other company / persons etc. track the user acitvitiy?
Is there technically any way to track the user activity for example ...I would like to see an answer in the FAQ (Jami docs) of this question:
Does Savoir-faire Linux (SFL) and/or any other company / persons etc. track the user acitvitiy?
Is there technically any way to track the user activity for example by using any server (https://jami.net/why-is-jami-truly-distributed/#)?
Could you actually use one or more servers (nameserver, turn-server) to find out which peer (username?) communicates with the other and when?
Or when you are online and/or your location?
If yes, which servers are used?
Is there a "information we can (AND DO!) access"?
Example 1: https://stealthchat.com/privacy.html
> - Device and Connection Information. We collect device-specific information when you use StealthChat, including your device hardware model, operating system information, network information for diagnostic and troubleshooting purpose.
> - Status Information. We collect information about your online status and personal status message on the StealthChat servers, such as whether you are online, when you last used StealthChat and when you last updated your personal status message.
Example 2: https://twin.me/en/privacy-policy/
> Log information used for statistical purposes on the general use of the twinme service during given periods of times (e.g., number of users, device brands and operating systems, locations, number and duration of calls, number of messages exchanged, etc.).
Of course you should differentiate between SIP-accounts (with other providers) and Jami accounts?
--------
EDIT:
Actually this question was partly answered but it still needs an update
https://forum.jami.net/t/jami-buisness-model-how-does-jami-make-money/349/7
> We don’t collect any data from Jami (not even statistics). We might add opt-in collection of anonymized statistics in the future to better understand Jami usage, but we won’t collect any personal data.
So we would need an updated information about Jami (all apps) AND Jami-Web.
Ideally I hope Jami / SFL and/or other companies never collect any data (zero-knowledge).
However if you do collect data (now or in the future) can you please mention the last version of Jami that did NOT collect any data at all?https://git.jami.net/savoirfairelinux/jami-web/-/issues/141Show user + initial icon for calling pending/receiving interface2022-12-12T23:21:07ZGabriel RochonShow user + initial icon for calling pending/receiving interfaceGabriel RochonGabriel Rochonhttps://git.jami.net/savoirfairelinux/jami-web/-/issues/140Remove websocket on close2022-12-12T23:21:05ZCharlie DuquetteRemove websocket on closeCharlie DuquetteCharlie Duquettehttps://git.jami.net/savoirfairelinux/jami-project/-/issues/1511Contact in the contact list disappears after some time if you don't communica...2023-10-15T17:39:31ZElysContact in the contact list disappears after some time if you don't communicate anymore?I once added a contact in my contact list. Since then I've never made any call again or tried to send text messages (with / without attachments).
After a few weeks the contact is not in the contact list anymore (and the contact didn't r...I once added a contact in my contact list. Since then I've never made any call again or tried to send text messages (with / without attachments).
After a few weeks the contact is not in the contact list anymore (and the contact didn't remove / block me)
Is this a wanted behaviour or is it actually a bug?
If it's a wanted behaviour how can you change this setting?https://git.jami.net/savoirfairelinux/jami-web/-/issues/139Validate whether text from buttons have hover style; if they do, implement them2022-12-19T19:39:29ZGabriel RochonValidate whether text from buttons have hover style; if they do, implement themhttps://git.jami.net/savoirfairelinux/jami-web/-/issues/138Background color of accept buttons should be forest green2022-12-19T19:39:29ZGabriel RochonBackground color of accept buttons should be forest greenhttps://git.jami.net/savoirfairelinux/jami-web/-/issues/137Icon color should be white (fix SVGIcons accordingly)2022-12-19T19:39:29ZGabriel RochonIcon color should be white (fix SVGIcons accordingly)https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/883Functional tests (qml_tests) failures2023-12-23T14:05:02ZMaxim CournoyerFunctional tests (qml_tests) failuresHi,
After applying patches to fix #882 against 20221031.1308.130cc26, I was able to run the tests with a manual procedure borrowed from the `build.py` script (which is currently tailored for Windows):
```scheme
(replace 'check
...Hi,
After applying patches to fix #882 against 20221031.1308.130cc26, I was able to run the tests with a manual procedure borrowed from the `build.py` script (which is currently tailored for Windows):
```scheme
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(setenv "QT_QPA_PLATFORM" "offscreen")
(setenv "QT_QUICK_BACKEND" "software")
;; The tests require a writable HOME.
(setenv "HOME" "/tmp")
(display "Running unittests...\n")
(invoke "tests/unittests" "-mutejamid")
(display "Running functional tests...\n")
;; This is to allow building from the source tarball or
;; directly from the git repository.
(let ((tests-qml (if (file-exists? "../client-qt/tests")
"../client-qt/tests/qml"
"../tests/qml")))
(invoke "tests/qml_tests" "-mutejamid"
"-input" tests-qml)))))
```
The unittests all pass, but the qml_tests return some failures:
```
starting phase `check'
Running unittests...
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/guix-build-jami-20221031.1308.130cc26.drv-0/runtime-nixbld'
(process:2064): libnotify-WARNING **: 20:06:20.854: Failed to connect to proxy
No accounts to migrate
20:06:20.857 os_core_unix.c !pjlib 2.12.1 for POSIX initialized
Daemon is running
[==========] Running 3 tests from 2 test suites.
[----------] Global test environment set-up.
[----------] 2 tests from AccountFixture
[ RUN ] AccountFixture.InitialAccountListCheck
[ OK ] AccountFixture.InitialAccountListCheck (0 ms)
[ RUN ] AccountFixture.CreateSIPAccountTest
error initializing NetworkManager client: Could not connect: No such file or directory
AccountModelPimpl::slotVolatileAccountDetailsChanged, can't find "1d75d198d2a21f3d"
AccountModelPimpl::slotVolatileAccountDetailsChanged, can't find "1d75d198d2a21f3d"
Syncing lrc accounts list with the daemon
"detected new account 1d75d198d2a21f3d"
database "/tmp/.local/share/unittests/jami/1d75d198d2a21f3d/history.db" version set to: "1"
Syncing lrc accounts list with the daemon
Syncing lrc accounts list with the daemon
"detected account removal 1d75d198d2a21f3d"
[ OK ] AccountFixture.CreateSIPAccountTest (4950 ms)
[----------] 2 tests from AccountFixture (4950 ms total)
[----------] 1 test from ContactFixture
[ RUN ] ContactFixture.AddSIPContactTest
AccountModelPimpl::slotVolatileAccountDetailsChanged, can't find "f96505d5790f5317"
AccountModelPimpl::slotVolatileAccountDetailsChanged, can't find "f96505d5790f5317"
Syncing lrc accounts list with the daemon
"detected new account f96505d5790f5317"
database "/tmp/.local/share/jami/f96505d5790f5317/history.db" version set to: "1"
Syncing lrc accounts list with the daemon
Syncing lrc accounts list with the daemon
"detected account removal f96505d5790f5317"
[ OK ] ContactFixture.AddSIPContactTest (14999 ms)
[----------] 1 test from ContactFixture (14999 ms total)
[----------] Global test environment tear-down
[==========] 3 tests from 2 test suites ran. (19950 ms total)
[ PASSED ] 3 tests.
Destroying connectivity monitor
Running functional tests...
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/guix-build-jami-20221031.1308.130cc26.drv-0/runtime-nixbld'
(process:2082): libnotify-WARNING **: 20:06:41.435: Failed to connect to proxy
No accounts to migrate
dbus not connected
qt.core.qobject.connect: QObject::connect(PreviewEngine, MessagesAdapter): invalid nullptr parameter
qt.core.qobject.connect: QObject::connect(PreviewEngine, MessagesAdapter): invalid nullptr parameter
Can't update current account info data for ""
20:06:41.437 os_core_unix.c !pjlib 2.12.1 for POSIX initialized
Daemon is running
********* Start testing of qml_test *********
Config: Using QtTest library 6.3.1, Qt 6.3.1 (x86_64-little_endian-lp64 shared (dynamic) release build; by GCC 10.3.0), unknown unknown
QWARN : qml_test::tst_ChatViewFooter::compile()
/tmp/guix-build-jami-20221031.1308.130cc26.drv-0/jami-project/client-qt/tests/qml/src/tst_ChatViewFooter.qml produced 1 error(s):
/tmp/guix-build-jami-20221031.1308.130cc26.drv-0/jami-project/client-qt/tests/qml/src/tst_ChatViewFooter.qml:28,1: "qrc:/src/app/mainview/components": no such directory
Working directory: /tmp/guix-build-jami-20221031.1308.130cc26.drv-0/jami-project/build
Import paths:
'/tmp/guix-build-jami-20221031.1308.130cc26.drv-0/jami-project/build/tests'
'qrc:/qt-project.org/imports'
'/gnu/store/g0cpw37529bbz2f0zbbwmivpd4igp4w6-qt5compat-6.3.1/lib/qt6/qml'
'/gnu/store/8nlck8a9s88krl7m8a0d36yf3j2b7mv4-qtdeclarative-6.3.1/lib/qt6/qml'
'/gnu/store/k0v5qlk1gkl62d0wspsy9y6khrn5cq0c-qtmultimedia-6.3.1/lib/qt6/qml'
'/gnu/store/1228mp35skd88ijx799v5851paadv9wg-qtwebchannel-6.3.1/lib/qt6/qml'
'/gnu/store/iygnhxwydlwbs1hc9knjvam6im489zyl-qtwebengine-6.3.1/lib/qt6/qml'
Plugin paths:
'.'
FAIL! : qml_test::tst_ChatViewFooter::compile() "qrc:/src/app/mainview/components": no such directory
Loc: [/tmp/guix-build-jami-20221031.1308.130cc26.drv-0/jami-project/client-qt/tests/qml/src/tst_ChatViewFooter.qml(28)]
QWARN : qml_test::UnknownTestFunc() dbus not connected
QWARN : qml_test::UnknownTestFunc() qt.core.qobject.connect: QObject::connect(PreviewEngine, MessagesAdapter): invalid nullptr parameter
QWARN : qml_test::UnknownTestFunc() qt.core.qobject.connect: QObject::connect(PreviewEngine, MessagesAdapter): invalid nullptr parameter
QWARN : qml_test::UnknownTestFunc() Can't update current account info data for ""
QWARN : qml_test::tst_FilesToSendContainer::compile()
/tmp/guix-build-jami-20221031.1308.130cc26.drv-0/jami-project/client-qt/tests/qml/src/tst_FilesToSendContainer.qml produced 1 error(s):
/tmp/guix-build-jami-20221031.1308.130cc26.drv-0/jami-project/client-qt/tests/qml/src/tst_FilesToSendContainer.qml:28,1: "qrc:/src/app/mainview/components": no such directory
Working directory: /tmp/guix-build-jami-20221031.1308.130cc26.drv-0/jami-project/build
Import paths:
'/tmp/guix-build-jami-20221031.1308.130cc26.drv-0/jami-project/build/tests'
'qrc:/qt-project.org/imports'
'/gnu/store/g0cpw37529bbz2f0zbbwmivpd4igp4w6-qt5compat-6.3.1/lib/qt6/qml'
'/gnu/store/8nlck8a9s88krl7m8a0d36yf3j2b7mv4-qtdeclarative-6.3.1/lib/qt6/qml'
'/gnu/store/k0v5qlk1gkl62d0wspsy9y6khrn5cq0c-qtmultimedia-6.3.1/lib/qt6/qml'
'/gnu/store/1228mp35skd88ijx799v5851paadv9wg-qtwebchannel-6.3.1/lib/qt6/qml'
'/gnu/store/iygnhxwydlwbs1hc9knjvam6im489zyl-qtwebengine-6.3.1/lib/qt6/qml'
Plugin paths:
'.'
FAIL! : qml_test::tst_FilesToSendContainer::compile() "qrc:/src/app/mainview/components": no such directory
Loc: [/tmp/guix-build-jami-20221031.1308.130cc26.drv-0/jami-project/client-qt/tests/qml/src/tst_FilesToSendContainer.qml(28)]
QWARN : qml_test::UnknownTestFunc() dbus not connected
QWARN : qml_test::UnknownTestFunc() qt.core.qobject.connect: QObject::connect(PreviewEngine, MessagesAdapter): invalid nullptr parameter
QWARN : qml_test::UnknownTestFunc() qt.core.qobject.connect: QObject::connect(PreviewEngine, MessagesAdapter): invalid nullptr parameter
QWARN : qml_test::UnknownTestFunc() Can't update current account info data for ""
QWARN : qml_test::UnknownTestFunc() error initializing NetworkManager client: Could not connect: No such file or directory
PASS : qml_test::Local Account Test::initTestCase()
PASS : qml_test::Local Account Test::test_initially_no_account()
PASS : qml_test::Local Account Test::cleanupTestCase()
QWARN : qml_test::UnknownTestFunc() dbus not connected
QWARN : qml_test::UnknownTestFunc() qt.core.qobject.connect: QObject::connect(PreviewEngine, MessagesAdapter): invalid nullptr parameter
QWARN : qml_test::UnknownTestFunc() qt.core.qobject.connect: QObject::connect(PreviewEngine, MessagesAdapter): invalid nullptr parameter
QWARN : qml_test::UnknownTestFunc() Can't update current account info data for ""
QWARN : qml_test::tst_PresenceIndicator::compile()
/tmp/guix-build-jami-20221031.1308.130cc26.drv-0/jami-project/client-qt/tests/qml/src/tst_PresenceIndicator.qml produced 1 error(s):
/tmp/guix-build-jami-20221031.1308.130cc26.drv-0/jami-project/client-qt/tests/qml/src/tst_PresenceIndicator.qml:25,1: "qrc:/src/app/commoncomponents": no such directory
Working directory: /tmp/guix-build-jami-20221031.1308.130cc26.drv-0/jami-project/build
Import paths:
'/tmp/guix-build-jami-20221031.1308.130cc26.drv-0/jami-project/build/tests'
'qrc:/qt-project.org/imports'
'/gnu/store/g0cpw37529bbz2f0zbbwmivpd4igp4w6-qt5compat-6.3.1/lib/qt6/qml'
'/gnu/store/8nlck8a9s88krl7m8a0d36yf3j2b7mv4-qtdeclarative-6.3.1/lib/qt6/qml'
'/gnu/store/k0v5qlk1gkl62d0wspsy9y6khrn5cq0c-qtmultimedia-6.3.1/lib/qt6/qml'
'/gnu/store/1228mp35skd88ijx799v5851paadv9wg-qtwebchannel-6.3.1/lib/qt6/qml'
'/gnu/store/iygnhxwydlwbs1hc9knjvam6im489zyl-qtwebengine-6.3.1/lib/qt6/qml'
Plugin paths:
'.'
FAIL! : qml_test::tst_PresenceIndicator::compile() "qrc:/src/app/commoncomponents": no such directory
Loc: [/tmp/guix-build-jami-20221031.1308.130cc26.drv-0/jami-project/client-qt/tests/qml/src/tst_PresenceIndicator.qml(25)]
QWARN : qml_test::UnknownTestFunc() dbus not connected
QWARN : qml_test::UnknownTestFunc() qt.core.qobject.connect: QObject::connect(PreviewEngine, MessagesAdapter): invalid nullptr parameter
QWARN : qml_test::UnknownTestFunc() qt.core.qobject.connect: QObject::connect(PreviewEngine, MessagesAdapter): invalid nullptr parameter
QWARN : qml_test::UnknownTestFunc() Can't update current account info data for ""
QWARN : qml_test::tst_WizardView::compile()
/tmp/guix-build-jami-20221031.1308.130cc26.drv-0/jami-project/client-qt/tests/qml/src/tst_WizardView.qml produced 1 error(s):
/tmp/guix-build-jami-20221031.1308.130cc26.drv-0/jami-project/client-qt/tests/qml/src/tst_WizardView.qml:27,1: "qrc:/src/app/wizardview": no such directory
Working directory: /tmp/guix-build-jami-20221031.1308.130cc26.drv-0/jami-project/build
Import paths:
'/tmp/guix-build-jami-20221031.1308.130cc26.drv-0/jami-project/build/tests'
'qrc:/qt-project.org/imports'
'/gnu/store/g0cpw37529bbz2f0zbbwmivpd4igp4w6-qt5compat-6.3.1/lib/qt6/qml'
'/gnu/store/8nlck8a9s88krl7m8a0d36yf3j2b7mv4-qtdeclarative-6.3.1/lib/qt6/qml'
'/gnu/store/k0v5qlk1gkl62d0wspsy9y6khrn5cq0c-qtmultimedia-6.3.1/lib/qt6/qml'
'/gnu/store/1228mp35skd88ijx799v5851paadv9wg-qtwebchannel-6.3.1/lib/qt6/qml'
'/gnu/store/iygnhxwydlwbs1hc9knjvam6im489zyl-qtwebengine-6.3.1/lib/qt6/qml'
Plugin paths:
'.'
FAIL! : qml_test::tst_WizardView::compile() "qrc:/src/app/wizardview": no such directory
Loc: [/tmp/guix-build-jami-20221031.1308.130cc26.drv-0/jami-project/client-qt/tests/qml/src/tst_WizardView.qml(27)]
Totals: 3 passed, 4 failed, 0 skipped, 0 blacklisted, 16ms
********* Finished testing of qml_test *********
Destroying connectivity monitor
error: in phase 'check': uncaught exception:
%exception #<&invoke-error program: "tests/qml_tests" arguments: ("-mutejamid" "-input" "../client-qt/tests/qml") exit-status: 4 term-signal: #f stop-signal: #f>
phase `check' failed after 22.1 seconds
command "tests/qml_tests" "-mutejamid" "-input" "../client-qt/tests/qml" failed with status 4
```
Ideas?
Thanks!https://git.jami.net/savoirfairelinux/jami-web/-/issues/136Add client UI to select Jami vs JAMS to login2022-12-12T23:21:09ZMisha Krieger-RaynauldAdd client UI to select Jami vs JAMS to loginGabriel RochonGabriel Rochonhttps://git.jami.net/savoirfairelinux/jami-web/-/issues/135Buttons should have the same styling as end call2022-11-08T18:42:09ZGabriel RochonButtons should have the same styling as end callhttps://git.jami.net/savoirfairelinux/jami-web/-/issues/134Reject, respond audio and respond video buttons should be visible2022-11-08T18:42:02ZGabriel RochonReject, respond audio and respond video buttons should be visiblehttps://git.jami.net/savoirfairelinux/jami-web/-/issues/133Status of call (connecting OR calling) should be optional (won't show in pend...2022-11-08T18:40:21ZGabriel RochonStatus of call (connecting OR calling) should be optional (won't show in pending receiving)https://git.jami.net/savoirfairelinux/jami-web/-/issues/132Icon should have a spinning circle around it, going clockwise2022-12-19T19:39:29ZGabriel RochonIcon should have a spinning circle around it, going clockwise