My Jami posts

Some links to articles I wrote or talk I gave.

I’m a Core Developer for https://jami.net since several years now. During those years, I gave some talks and wrote a lot of articles that I’ll link of that page: Articles “Improving the call experience in Jami” - 2022, Aug 31 - https://jami.net/improving-call-experience-in-jami/ “Swarm file transfers” - 2022, Aug 09 - https://jami.net/swarm-file-transfers/ “Synchronizing conversation history with Swarm” - 2022, Feb 16 - https://jami.net/synchronizing-conversation-history-with-swarm/ “Swarm: a new generation of group conversations” - 2021, Jan 15 - https://jami. [Read More]
jami  dev  talk  software 

A GPT-3 bot to answer my tickets

A project done in one week-end

Long time no see! I have a looooooot of projects in mind and a lot far too big (+40h of work & personal community stuff & life). However, I got a list of projects I can do in one week-end(ish) (e.g. a Gartic Phone with DALL-E, play with open push, etc) and because I answer to a lot of tickets every-day, I was wondering how this can be automatized nowadays with all the new AI projects (for the fun, to be honest, I think a good FAQ should answer to all common questions and a good documentation should complete this. [Read More]
gpt-3  dev  ai  software 

Git dissect

P2P internals - episode 4

It’s been a long time since my previous post, but let’s continue this serie about distributed systems with a tool that a lot of people use every day: git. Git is a versioning tool. Unlike some systems like subversion, you don’t need to have a server to use git. Every member of the project own a (partial or not) copy of the project and can directly send data to another member. [Read More]
p2p  dev  git 

P2P internals - episode 3

DHT

In the previous articles we talked about how to create a peer to peer connection and what issues we can encounter. These problems are generally due to the NAT which needs methods to pass through it (e.g. TURN servers) or some new protocols (like ICE). It is now time to talk about distributed applications and structures created on top of a p2p network. For a lot of distributed applications, all the nodes in the system can’t be stable. [Read More]
p2p  dev 

P2P internals - episode 2

ICE (RFC 6544, RFC 8445)

In the first article of this series, we saw how to make an application (DEL) which is able to transfer a file from one peer to one another by successfully bypassing the NAT thanks to a TURN server. However, this technique is not really effective, because, in a lot of cases, a TURN server is completely useless. Indeed, if both peers are on the same network or both peers has an IPv6 address, the TURN server is not mandatory. [Read More]
p2p  dev 

Dbus on a server

and without any graphical session

Some time ago, I had to run a script to test an application by sending dbus calls. The script was working great, until I moved it on a server with no graphical session. I ran the script as a System V init script, but you can encounter the same problem in a terminal or in a cron. The thing is that a dbus session is generally managed by KDE, Gnome or your graphical session. [Read More]

P2P internals - episode 1

TURN over TCP (RFC 6062)

I love distributed systems for a various of reasons. But these systems are complex and require interactions with many layers. Even if a lot of distributed systems and software exists, such systems can be difficult to use for several reasons. Today, our operating systems tend to avoid doing as many calculations as possible (i.e. mobile devices need to save battery and avoid data consumption). Also, IPv4 is still massively used so NATs are still needed, interfaces are mainly created to interact with servers, etc. [Read More]
p2p  dev 

How to host your own Jitsi instance

A short feedback from experience

For the local future CHATONS (Chatons is a french word which means kitten), I am currently helping to host a new Jitsi-meet instance. This instance will be available at this address: https://conference.facil.services/ and this is a little post about how we did it and what problems we encountered. First step - The manual installation For the story, the first attempt for hosting the instance worked during several weeks. But, after a migration to our final server, we started to see a lot of problems with that instance (due to the migration or the installation of the back-up system or the monitoring tools). [Read More]

(2/3)Retour du nsec - The visual microphone

Suite de la petite série sur le retour du nsec. Dans ce second article, je vais m’intéresser la dernière partie d’une track en 3 points réalisée par un autre membre de mon équipe. La première partie consistait à trouver la fréquence du mouvement du diaphragme d’un haut parleur. Puis de trouver la musique qui était jouée par cette enceinte (bien entendu, le son n’était pas présent). La dernière partie consistait à retrouver une conversation réalisée dans une pièce où un paquet de chips était filmé à très haute fréquence. [Read More]