~emersion/soju#252: 
Add a way to import history into Soju

While we have CHATHISTORY to query history, it's not yet possible to import history, potentially generated by another client / bouncer, before soju was used.

It might be possible to do this simply by inserting into the the database directly, but it'd probably prefer a sojuctl command. It could take znc syntax logs, so in tandem with https://codeberg.org/emersion/chathistorysync this could also be used to migrate logs from one bouncer to another.

Status
REPORTED
Submitter
~flokli
Assigned to
No-one
Submitted
a month ago
Updated
a month ago
Labels
No labels applied.

~emersion a month ago

We already have an import script in contrib/znc-import/.

A sojuctl command is tricky because it would require slurping data from a file, and I'd rather not add a command to read a user-provided file on the filesystem.

~flokli a month ago

I'll give that import script a try, thanks! It should be enough for my usecase, don't need to push logs from the client, and agreed having soju look around in the filesystem on a clients' request is not good.

Looking at the database providers, StoreMessage seems to have a "ON CONFLICT DO NOTHING,). Does this mean I should be able to import incrementally, as it'll skip over existing entries?

On another note, I've been using weechat, and its logs. Would you be up to a change adding parsing for these, and a flag to the import script?

~emersion a month ago

Does this mean I should be able to import incrementally, as it'll skip over existing entries?

No, because messages originating from the FS don't have a unique ID attached.

On another note, I've been using weechat, and its logs. Would you be up to a change adding parsing for these, and a flag to the import script?

Sure! Probably should be a separate script?

Register here or Log in to comment, or comment via email.