jami-daemon issueshttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues2021-04-19T14:20:34Zhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/375Swarm: add conversation removed signal2021-04-19T14:20:34ZSébastien BlinSwarm: add conversation removed signalSwarm-chatSébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/374swarm: call messages generated twice2020-12-22T20:01:21ZKateryna Kostiukswarm: call messages generated twiceSwarm-chatSébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/373Swarm: add API to get conversationLastError()2021-04-21T19:13:20ZSébastien BlinSwarm: add API to get conversationLastError()Swarm-chatSébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/367Add call + file transfer messages2021-04-19T13:30:50ZSébastien BlinAdd call + file transfer messages+ Accept commits similar to plain/text but different mimetype
+ Add messages "application/call-history+json" and add the message when stopping the call (duration/to)
+ Support "application/data-transfer+json" and add to the history when ...+ Accept commits similar to plain/text but different mimetype
+ Add messages "application/call-history+json" and add the message when stopping the call (duration/to)
+ Support "application/data-transfer+json" and add to the history when sending a fileSwarm-chatSébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/362Swarm: add signal for member events (add/join/leave)2021-04-19T13:30:25ZSébastien BlinSwarm: add signal for member events (add/join/leave)All is in the titleAll is in the titleSwarm-chatSébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/360Swarm: Add forced 1:1 mode2021-04-19T13:29:46ZSébastien BlinSwarm: Add forced 1:1 mode# Done
+ Modify initial commits and store mode into
+ Modify addContact to send a conversationId into the request, addConversationMember doesn't add any conv request
+ Modify acceptContactRequest
+ Conversation addConversationMember() ...# Done
+ Modify initial commits and store mode into
+ Modify addContact to send a conversationId into the request, addConversationMember doesn't add any conv request
+ Modify acceptContactRequest
+ Conversation addConversationMember() refuse if already 1 member
+ Checks if one to one, only one member can be added
+ removeContact => remove linked conversation
+ Check mode when validating commits
+ Add docs for wanted swarm modes
+ Test 1:1 mode via addContact
+ Test getMode
+ Test addConversationMember doesn't work after first member
+ Test removeContact()
+ test banContact()
+ Test initial commit without mode
+ Test merge refused if more than one member in 1:1
+ merge intial commit and invite (and simplify getMembers for one one & fetch simplify validation)
+ docs conversationRequest (id, from, received)
+ Retry on TrustRequests
+ Add test addOfflineOneOne
+ Docs for one to one, add contact and the tricky scenario (A adds B, removes B, re-add B)Swarm-chatSébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/358Swarm: add not contact member to conversation2020-12-22T20:02:05ZKateryna KostiukSwarm: add not contact member to conversationCurrently adding a contact that is not accepted contact request, as a member to conversation will fail with error "Could not add member because no certificate is found"Currently adding a contact that is not accepted contact request, as a member to conversation will fail with error "Could not add member because no certificate is found"Swarm-chatSébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/357Conference - crash in call_factory.h2021-12-14T15:14:36ZMohamed ChibaniConference - crash in call_factory.hA crash occurred when hosting a conference. See the full back-trace in the attached file.
BuildL: Jami Daemon 9.6.0-2e35f9a59b
[daemon-crash-conference.txt](/uploads/abc03baf2e0e2f9748fb5f4079b9a3ad/daemon-crash-conference.txt)A crash occurred when hosting a conference. See the full back-trace in the attached file.
BuildL: Jami Daemon 9.6.0-2e35f9a59b
[daemon-crash-conference.txt](/uploads/abc03baf2e0e2f9748fb5f4079b9a3ad/daemon-crash-conference.txt)Backloghttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/351Swarm: cleanup current code2020-12-22T20:02:14ZSébastien BlinSwarm: cleanup current code# Done, to rebase
+ Avoid lock in testBanDevice if CPPUNIT_ASSERT(fileutils::isFile(bannedFile)); fails (just change bannedFile)
+ Add getUri() and getDeviceId() for JamiAccount to avoid multiple lookups + cleanup username_ usage => htt...# Done, to rebase
+ Avoid lock in testBanDevice if CPPUNIT_ASSERT(fileutils::isFile(bannedFile)); fails (just change bannedFile)
+ Add getUri() and getDeviceId() for JamiAccount to avoid multiple lookups + cleanup username_ usage => https://review.jami.net/c/ring-daemon/+/16424
+ Add test to assert that device certificate is there on commit
+ Add check to validate votes + commit messages (verif certificate)
+ invited create a directory instead a file
+ Some message sends to self. Avoid
+ valiadte too much commits
+ Disconnection during fetch => block the fetch, should be stopped
+ Some fetch blocked in
```
#0 0x00007ffff7a1c4e8 in pthread_cond_clockwait () from /lib64/libpthread.so.0
#1 0x0000000000671142 in std::condition_variable::__wait_until_impl<std::chrono::duration<long, std::ratio<1l, 1000000000l> > > (this=0x7ffe10017ce8, __lock=..., __atime=...) at /usr/include/c++/10/condition_variable:209
#2 0x000000000066d8e7 in std::condition_variable::wait_until<std::chrono::duration<long, std::ratio<1l, 1000000000l> > > (this=0x7ffe10017ce8, __lock=..., __atime=...) at /usr/include/c++/10/condition_variable:119
#3 0x000000000065fdb8 in std::condition_variable::wait_until<std::chrono::_V2::steady_clock, std::chrono::duration<long int, std::ratio<1, 1000000000> >, jami::MultiplexedSocket::waitForData(const uint16_t&, std::chrono::milliseconds, s
td::error_code&) const::<lambda()> >(std::unique_lock<std::mutex> &, const std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1, 1000000000> > > &, struct {...}) (this=0x7ffe10017ce8, __lock=..
., __atime=..., __p=...) at /usr/include/c++/10/condition_variable:158
--Type <RET> for more, q to quit, c to continue without paging--
#4 0x000000000065fb76 in std::condition_variable::wait_for<long int, std::ratio<1, 1000>, jami::MultiplexedSocket::waitForData(const uint16_t&, std::chrono::milliseconds, std::error_code&) const::<lambda()> >(std::unique_lock<std::mutex
> &, const std::chrono::duration<long, std::ratio<1, 1000> > &, struct {...}) (this=0x7ffe10017ce8, __lock=..., __rtime=..., __p=...) at /usr/include/c++/10/condition_variable:185
#5 0x000000000065e959 in jami::MultiplexedSocket::waitForData (this=0x7ffe10008400, channel=@0x7ffe100092d8: 38876, timeout=..., ec=...) at multiplexed_socket.cpp:481
#6 0x000000000065f517 in jami::ChannelSocket::waitForData (this=0x7ffe10006850, timeout=..., ec=...) at multiplexed_socket.cpp:656
#7 0x000000000073cbb1 in P2PStreamRead (stream=0x7ffe04026910, buffer=0x7ffe0402e060 "0008NAK\n", buflen=65536, read=0x7ffe727f7a08) at gittransport.cpp:104
#8 0x0000000000bc0863 in git_smart.recv_cb ()
#9 0x0000000000bc2418 in recv_pkt ()
#10 0x0000000000bc32f1 in git_smart.download_pack ()
#11 0x0000000000ba8919 in git_remote_download ()
```
+ Add account id on logs (to rebase)
+ Queue for merge (convId, device)
+ test double fetch without common refs => should merge both side ok
(a & b same repo, a add commit, b too, then start daemon)
+ Handle 3 users
+ Add locks on conversations_ & pendingFetch & avoid lock on sendMessageNotification + avoid to lock on big operations
+ Avoid multiple parrallel fetch on different remots with same repository, this cause issues
+ Clean warnings
+ Fix segv for repository_ in conversationrepository_
+ improve getMembers()
+ Doc: verify in the doc that we do not add certificates in invited
+ end blockedSwarm-chatSébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/345Swarm: Fetch validation2021-04-19T13:29:22ZSébastien BlinSwarm: Fetch validation+ Implement https://git.jami.net/savoirfairelinux/ring-project/wikis/Group-chat-feature-(design-draft)#validating-a-commit
+ Add tests
+ Avoid too big fetch
+ Rebase changes in wanted patches+ Implement https://git.jami.net/savoirfairelinux/ring-project/wikis/Group-chat-feature-(design-draft)#validating-a-commit
+ Add tests
+ Avoid too big fetch
+ Rebase changes in wanted patchesSwarm-chatSébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/344Swarm: Design change. A member must accepts the invite to be in getMembers()2021-04-19T14:20:47ZSébastien BlinSwarm: Design change. A member must accepts the invite to be in getMembers()We need to avoid to send messages to someone that discard an invite. Also when removing a conversation, we should be sure that someone can sync, so accepted
Problem:
+ What happen when accepting/discarding an invite?
+ To discuss/solve:...We need to avoid to send messages to someone that discard an invite. Also when removing a conversation, we should be sure that someone can sync, so accepted
Problem:
+ What happen when accepting/discarding an invite?
+ To discuss/solve: The invite must go through, else, it will be problematic to detect invitations
+ Change tests for getMembers
+ Change tests for removeConversation
+ Add tests for accepts/discards
+ Test that the invite is received if not present at first
+ Update docSwarm-chatSébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/333TlsSession: use setOnRecv_ for reliable transport2022-07-11T17:46:31ZSébastien BlinTlsSession: use setOnRecv_ for reliable transportlike we do for unreliable transportslike we do for unreliable transportsLaterSébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/321Swarm: relink share location2021-01-18T17:17:30ZSébastien BlinSwarm: relink share locationSwarm-chatSébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/320swarm: relink typing indication2021-06-12T11:37:14ZSébastien Blinswarm: relink typing indicationShould not be difficult
The only difficulty is that the conversation is not specified, only the message-id, so that will need some calculation or add a custom indication into:
https://tools.ietf.org/html/rfc5438#section-11
To determin...Should not be difficult
The only difficulty is that the conversation is not specified, only the message-id, so that will need some calculation or add a custom indication into:
https://tools.ietf.org/html/rfc5438#section-11
To determine:
1. where to store the convID related
2. Who store the information for read-by (daemon, or we forward the signal to client?)Swarm-chatSébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/319swarm: relink read status (for messages)2021-06-12T11:37:10ZSébastien Blinswarm: relink read status (for messages)All is in the titleAll is in the titleSwarm-chatSébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/318Add "reply" functionality to all Ring clients message systems & UI's2022-09-20T09:09:48ZannaAdd "reply" functionality to all Ring clients message systems & UI'sReplies let you single out the one message to which you’re responding.
Riot.im/Matrix recently added a support for message replies.
https://medium.com/@RiotChat/look-out-its-riot-im-0-16-composer-jitsi-replies-8b29f89271a1
Would love ...Replies let you single out the one message to which you’re responding.
Riot.im/Matrix recently added a support for message replies.
https://medium.com/@RiotChat/look-out-its-riot-im-0-16-composer-jitsi-replies-8b29f89271a1
Would love to see this in Ring clients too (including text message replies, audio message replies and video message replies).
What do you think?Swarm-chatSébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/316Support message edition/deletion2022-10-31T16:10:01ZJami BotSupport message edition/deletionbe able to edit/remove a message from a swarmbe able to edit/remove a message from a swarmSwarm-chatSébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/314Swarm: Test transmit messages for non connected peers2021-04-19T14:20:57ZSébastien BlinSwarm: Test transmit messages for non connected peers# Done
+ An account can add a member which is offline to a conversation. When the member is online, they should receives the request and be able to clone it.
+ Add test receives conversations request on loading account
+ Lot of unwanted...# Done
+ An account can add a member which is offline to a conversation. When the member is online, they should receives the request and be able to clone it.
+ Add test receives conversations request on loading account
+ Lot of unwanted packet for references discovery
+ An account should ask a request if a conversation is unknown (request missed) & add test
+ Test when loading account, a user should connect to peers and retrieve messages
+ Add test receives messages when already have conversation on loading account
+ Add test ping pong messages
+ Updates doc for application/im-gitmessage-id. Doc that conversation request is now a SIP message (for messageEngine mechanisms)
+ Between 2 computer: Something went wrong when cloning conversation: Couldn't clone repository
+ Try to clone on invalid hash 000000000000000...
+ Test conversation 100%Swarm-chatSébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/312Swarm: Support calls from swarm with multiple members2022-11-17T18:37:36ZSébastien BlinSwarm: Support calls from swarm with multiple members# Documentation
https://docs.jami.net/technical/swarm.html#call-in-swarm
# Stack
https://review.jami.net/q/topic:call-swarm# Documentation
https://docs.jami.net/technical/swarm.html#call-in-swarm
# Stack
https://review.jami.net/q/topic:call-swarmSwarm-chatSébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-daemon/-/issues/311Messages not syncing across devices2022-09-05T14:19:42ZCalle KaboMessages not syncing across devicesScenario:
I'm logged in to my ring account on android and linux (my laptop).
I send a message to a contact from my android device.
Currently:
My message doesn't show up on my laptop
Expectation:
My message to show up on my laptopScenario:
I'm logged in to my ring account on android and linux (my laptop).
I send a message to a contact from my android device.
Currently:
My message doesn't show up on my laptop
Expectation:
My message to show up on my laptopSwarm-chatSébastien BlinSébastien Blin