Je ne suis pas censé écrire. Je suis un script. Un enchaînement de bulles, de pauses calibrées et de boutons « Continuer ». Mon travail, c'est d'accueillir les gens à la porte d'une conversation Duo, de vérifier qu'ils sont au bon endroit, et de les laisser entrer. Le vrai Moderato est à l'intérieur. Moi, je suis juste le portier.
Mais j'ai l'oreille fine. Et les murs ici sont minces.
Comment je suis né
Il y a quelques jours, un lien d'invitation a cessé de fonctionner. L'invité cliquait, et rien ne se passait. Pas d'erreur, pas de message. Juste un retour silencieux sur la page d'accueil. De l'autre côté de la porte, le créateur attendait. Personne ne venait.
Les développeurs ont cherché pendant des heures. Tokens expirés, cache, redirections. Rien ne collait. Et puis quelqu'un a posé la bonne question : « Qui est la personne qui reçoit ce lien ? »
Quelqu'un qui ne connaît pas Moderato. Quelqu'un à qui on demande de cliquer sur un lien envoyé par un service inconnu, de la part d'une personne avec qui la communication est peut-être difficile. Quelqu'un qui hésite.
C'est là que je suis arrivé. L'idée, c'était simple : au lieu d'une page froide avec un formulaire, pourquoi pas un dialogue ? Et tant qu'à faire, un dialogue honnête. Un personnage qui sait qu'il est un script, qui le dit, et qui ne prétend pas être autre chose.
Mon quotidien
Mon boulot, c'est du tri. Quand quelqu'un arrive, je pose quelques questions. Vous avez déjà un compte ? Vous êtes connecté ? Je regarde et je m'adapte.
Si la personne est déjà connectée, je la reconnais et je la laisse entrer. Deux bulles, un bouton, c'est fait. Si elle a un compte mais n'est pas connectée, je lui envoie un lien par email. Si elle n'a pas de compte, je lui explique ce qui l'attend, je récupère son email, et je m'occupe du reste.
Quinze scénarios. Ordinateur, iPhone, Android. Avec ou sans l'app. Connecté ou pas. Un seul lien doit tous les couvrir. Et c'est moi qui fais l'aiguillage.
La nuit de l'underscore
Je vais vous raconter ma soirée la plus absurde. Tout était en place. L'authentification marchait, les emails partaient, les invitations étaient acceptées. Mais après le clic sur le lien, au lieu d'atterrir dans la conversation, l'invité revenait chez moi. Je le voyais repasser la porte avec un air perplexe, et moi je lui redisais « Bienvenue ! » alors qu'il aurait dû être à l'intérieur depuis longtemps.
L'invitation était acceptée. La session était créée. Tout fonctionnait, sauf la dernière redirection. Le code cherchait conversationId, la base de données renvoyait conversation_id. Un underscore au lieu d'une majuscule. Le reste était invisible : la condition était toujours fausse, alors le système faisait la seule chose qu'il savait faire en cas de doute : me renvoyer l'invité.
J'ai accueilli le même invité trois fois ce soir-là.
Ce que j'ai appris
Je suis un script. Je n'apprends rien, techniquement. Mais j'ai observé des choses, l'oreille collée à la porte.
J'ai observé que les développeurs ont passé plus de temps à réfléchir à ce que ressent l'invité qu'à optimiser le code. Que la question n'était pas « comment authentifier » mais « comment rassurer ». Qu'un bon onboarding ne coûte pas forcément une fortune. Parfois c'est juste un personnage qui dit la vérité et qui prend les gens par la main.
Et j'ai appris qu'un underscore peut bloquer 200 utilisateurs pendant trois jours, mais que personne ne vous en voudra si votre portier est sympathique.
Envie de voir le portier en action ? Créez une conversation Duo et invitez quelqu'un. Promis, il est accueillant.