Desktop app and previous chats not showing up


#1

Hi

I use the Android release app from Fdroid, it works fine. So I downloaded the desktop app for Linux and started testing it but I do not see any of my existing chats.

Is it possible to access my existing chats since all are on the same account and same server, not sure why it does not work.


#2

I think an easy approach could be having an export/import account(or chats) option so you can import them on your other devices


#3

How are they going to stay in sync? Do I have to import and export constantly?


#4

how do you make 3 or 4 irc clients stay in sync??? and keep all your typed and received messages in all of them at the same time???


#5

I think the question is: why would you need them to be in sync???


#6

I do not know why you think clients should not be in sync, given that if the user is using the exact same email account from the same email server. The chats are on the server, why cant any client with authorized account access the same emails? This is what an email client does, as long long as all set to use the same account, it is not even synching, it is accessing the same emails.


#7

I understand you, sorry I was looking from my point of view only and since I am not interested on keeping the emails on the server missed your use case


#8

Sure, but this is what chat apps do at least the ones I use like Riot, XMPP clients, you can browse your messages on different platforms, and any message sent to a client will be accessed by all the clients of the same account etc.

If you delete your emails that is a different issue.


#9

but by current way DC is handing received message timestamps this may be a mess, I am talking at a glance I have not lurked in the code, but after restarting my phone the date was at 2015, and the app was acting “buggy” (my own messages not showing, etc) until I realized it was because the phone date.
So maybe the problem isn’t showing up the emails(that already are in your server) in all devices but at what time?


#10

also suppose you delete 10 chats and groups from app A then when you come to app B, the chats and groups will remain there, so this will confuse users, since if the app sync their messages they will expect to sync groups and chats too. With the current implementation I don’t see how to do this, unless DC create a subfolder for every group/chat or other trick


#11

Syncing messages with the IMAP is not supported by the f-droid version yet, but it’s surely a “given” default for any IMAP client.
The desktop app is getting the support, but is not yet compatible with the f-droid version. That’s a bit hidden, but in https://github.com/deltachat/deltachat-desktop/blob/master/UPGRADING.md

The unreliable message ordering with time resets is known, also a way to avoid ordering newer messages before older ones, with a lower bound on the sort_timestamp. (But it unsatisfactorily got labeled as discussion.)


#12

I would like that for the better sorting and browsability with classic email clients. But why should it be necessary for syncing chats and groups, if chats get deleted together with deleting its last message.


#13

#14

Found the idea again, to limit the effect of system time resets (into the past), by bounding it with the last sort_timestamp https://github.com/deltachat/deltachat-core/pull/435


#15

testbird: I don’t understand, are you saying that deleting the last message of a chat (using another MUA) will delete the whole chat?? that sounds more like a bug than a feature to me :confused:


#16

The bug #210 above is about deltachat leaving the messages on the server if an entire chat is deleted in deltachat. This needs to be fixed in order to sync chats between clients.

IMHO a 1-to-1 representation still makes the most sense as the default for the number of recent synced messages that are not yet archived messages (these are different from the current “archived chats” that are rather inactivatung/hiding entire chats). This makes syncing all clients simple to understand and does not leave any messages nor chats behind piling up at some place, producing the smallest inconvenience possible:

Chats could have a switch to show/hide archived messages and remain listed as long as there are messages.
If all messages in a chat get deleted (no matter if with a deltachat or classic client) and there are zero messages in a chat remaining, the chat should be removed from the chat list.

But note that the auto-archiving of all messages that are exceeding the number of messages to sync, or are older than say six weeks, will mostly prevent inadvertent disappearance of a chats, because of already archived messages. Users paying for server space would reduce the number of synced messages anyway (auto-archiving threshold). And it should also be likely to archive some more important messages manually before deleting all the unwanted remaining ones.

If the removal of the entire chat due to deleting the last message it contained still happened unexpectedly, a new incoming message, or selecting the contact from the address book will automatically re-create it.


#17

to me this “delete last msg” thing smells really bad :confused:


#18

You need to explain, what, why, …


#19

Users may think DC is buggy if they see they chats appearing and disappearing, also if they don’t see the chat they may think it was deleted, also in case they want to delete it on server using DC, how will they do this if the chat is not shown?? they will be shown on the archived list??


#20

OK, I’ll try to add aspects that we had not discussed yet.

Users may think DC is buggy if they see they chats appearing and disappearing

I’m not sure, but think you may be thinking of the current “archived chats” feature, that allows you to make entire chats disappear (only on a single client). I would suggest to rename that to “inactivate chats”.

Messages with the “archived message” state are more like “starred” messages to be kept (see https://github.com/deltachat/deltachat-core/issues/164#issuecomment-417868402). They don’t magically make entire chats appear or disappear, but are only used to distinguish and filter out messages within a chat, e.g. to keep the history shorter. Chats should only disappear after the user has really deleted all synced messages in a chat manually (on devices that do not have any “archived messages” left on the device).
If that chat would be kept in the chat list, it would be empty with no messages on the server. And because other clients can’t see any messages corresponding to this chat on the server, they have no idea this empty chat still exists. Newly connected clients can not get in sync and create it. Thus this would lead to inconsistencies with some clients still showing the empty chat, and others not.

also if they don’t see the chat they may think it was deleted

That’s the correct understanding, a chat won’t be listed (neither as active nor inactive) if there is not even a single (synced, archived, or starred) message left of it.

also in case they want to delete it on server using DC, how will they do this if the chat is not shown??

If messages are synced properly as proposed, and there is no chat shown in deltachat then there are no corresponding messages on the server, so there is nothing anybody could want to delete.

I guess what you may mean is that someone may want to delete all messages from the server without them getting deleted from the client (and the chat). And again, that’s what the (auto-)archive is for. If you set the number of synced messages to zero (means auto-archiving all, i.e. already the first message), then messages are archived quickly automatically and deleted from the server.