2.4.0
Créez et partagez vos activités Discord avec des modèles, images, minuteurs et boutons. Import et export JSON, navigation personnalisable et gestion des images enrichie.
Nouveautés
Activités personnalisées
- Nouvel onglet Personnalisés pour créer, modifier et supprimer vos propres activités Discord, sans présence de site à installer. Nolo présente cette nouveauté à la première utilisation.
- Enregistrez jusqu'à 50 activités sur votre appareil. Une seule peut être active à la fois : elle prend la priorité sur les présences de vos onglets jusqu'à sa désactivation.
- Personnalisez le nom, le type (Joue, Écoute, Regarde, Participe), deux lignes de texte, une grande et une petite image avec texte au survol, et jusqu'à deux boutons avec lien HTTPS.
- Choisissez un temps écoulé ou un compte à rebours de 5 minutes à 24 heures. Le minuteur démarre à l'activation, pas à la création de l'activité.
- Neuf modèles préremplissent l'éditeur : Révisions, Code, Soirée jeux, Playlist, Soirée film, Live, Sport, Voyage et Pause café. Rien n'est enregistré avant votre confirmation.
- Un aperçu en direct permet de vérifier le rendu pendant la modification. Une carte dédiée permet de retrouver, arrêter ou reprendre l'activité en cours.
Images
- Envoyez un fichier PNG, JPEG, WebP ou GIF, utilisez une URL HTTPS ou choisissez parmi 24 icônes et 10 couleurs. Sans grande image, le logo Nowly est utilisé ; sans petite image, aucun badge n'est affiché.
- Les images hors GIF sont redimensionnées et converties automatiquement avant l'envoi. La limite est de 1 Mio par image ; les GIF sont conservés sans conversion.
- Une copie des fichiers envoyés est conservée sur l'appareil pour l'aperçu et le renvoi automatique. Discord utilise leur URL hébergée, pas le fichier local.
- Les images actives sont rafraîchies régulièrement. Les fichiers hébergés inutilisés depuis 30 jours peuvent être nettoyés ; une image expirée est renvoyée depuis sa copie locale lorsque nécessaire.
Partage et import
- Exportez une activité enregistrée depuis son éditeur dans un fichier
[Nom].json. L'export utilise la dernière version enregistrée, pas les modifications non sauvegardées. - Le fichier contient les textes, le type, les images, le minuteur et les boutons. Les images envoyées sont embarquées depuis leur copie locale, sans reprendre leur URL d'hébergement ; une copie manquante est exportée sans image.
- Les identifiants locaux, les dates de création/modification et l'état d'activation ne sont pas exportés. Les liens HTTPS saisis dans l'activité restent présents : vérifiez le contenu avant de partager le fichier.
- Importez un ou plusieurs fichiers avec le bouton à icône Importer, doté d'un libellé accessible et d'une infobulle, ou déposez-les dans l'onglet Personnalisés. Le glisser-déposer n'intercepte pas les autres écrans.
- Chaque import crée une nouvelle activité sans l'activer ni écraser une activité existante. Un import unique ouvre l'éditeur pour vérification ; un import multiple affiche un bilan.
- Les fichiers de plus de 4 Mio, les formats ou versions incompatibles et les activités invalides sont refusés. Les images embarquées sont validées puis envoyées à nouveau ; si une image ne peut pas être importée, l'activité est conservée sans cette image et un avertissement s'affiche.
Conditions et confidentialité
- Un dialogue au premier lancement distingue l'acceptation des Conditions d'utilisation de la prise de connaissance de la Politique de confidentialité, sans activer les statistiques facultatives.
- Nowly vérifie automatiquement les mises à jour et redemande une confirmation uniquement pour les documents modifiés de façon importante. Les confirmations sont conservées sur l'appareil et les versions en cache restent utilisables hors ligne.
- Le partage d'activité et l'envoi d'images restent en pause jusqu'aux confirmations requises. Les liens vers les documents et leurs dates de mise à jour sont accessibles dans le dialogue.
Améliorations
- Le badge de la barre d'outils affiche désormais un emoji selon le type d'activité sélectionnée (jeu, visionnage, écoute ou compétition), sur une couleur issue de la présence ou de l'icône personnalisée. La pause garde son propre indicateur. Le badge reflète l'activité sélectionnée dans Nowly, pas sa diffusion confirmée sur Discord.
- L'aperçu reste visible pendant le défilement de l'éditeur. Cliquez sur la miniature pour choisir ou remplacer une image ; l'aide indique les formats et la taille maximale. En mode Écoute, une infobulle explique que le texte de la grande image apparaît aussi sur une troisième ligne dans Discord.
- Les écrans secondaires se chargent à leur ouverture, réduisant le JavaScript au démarrage tout en conservant les onglets visités et leur état. Tous les fichiers restent inclus dans l'extension pour une utilisation hors ligne.
- Trois guides illustrés en français et en anglais expliquent la création d'activités, le partage JSON et la confidentialité des images, avec des captures adaptatives accessibles en taille originale.
- La barre de navigation est personnalisable : maintenez un onglet pour le déplacer, ou tirez-le sur un côté pour créer un autre groupe. Les réglages permettent de réinitialiser cette disposition.
- Les cartes et l'aperçu suivent la présentation Discord selon le type : Joue garde le nom sur sa propre ligne ; Écoute, Regarde et Participe l'affichent dans l'en-tête.
- Les dialogues flottent au-dessus du panneau au lieu de rester collés à son bord inférieur. L'état vide de Personnalisés propose des exemples et un accès aux modèles.
- Les nouvelles fonctionnalités et leurs messages d'erreur, dont le dialogue de confirmation juridique, sont traduits dans les 11 langues.
Corrections
- Le libellé de l'onglet actif n'est plus tronqué. Le bouton Importer reste compact grâce à son affichage sous forme d'icône.
- Les imports simultanés sont bloqués et les imports multiples respectent la limite de 50 activités. Une erreur sur un fichier n'empêche pas le traitement des suivants.
- Les envois répétés ou simultanés d'une même image sont idempotents côté serveur. En cas d'échec d'effacement du stockage distant, les références sont conservées pour permettre une nouvelle tentative.
Suppressions et compatibilité
- Aucune fonctionnalité utilisateur existante n'est supprimée. Les thèmes saisonniers, ChromeOS, les iframes et les présences embarquées restent pris en charge.
- Suppression du parseur numérique inutilisé du service de statut et mutualisation du téléchargement JSON, auparavant dupliqué dans l'export des données.
- Les activités personnalisées restent locales et ne sont pas synchronisées avec le compte. Le partage se fait par fichier ; aucun nouvel événement analytics n'est ajouté.
Technique et confidentialité
- Les conditions et la politique de confidentialité précisent, dans les 11 langues, le traitement des images envoyées, leurs URLs publiques, la redistribution JSON, la conservation, l'effacement authentifié et la persistance des caches tiers.
- Ajout d'un stockage d'images lié à l'appareil : routes d'envoi, de rafraîchissement et de suppression protégées par le jeton appareil, validation de la signature du fichier, du type MIME, de la taille et du SHA-256, avec une limite de 20 envois par heure et par appareil.
- Nouvelle table
CustomAsset, migration PostgreSQL, stockage compatible S3/R2 et route de nettoyage protégée pour les images inutilisées. Le stockage et la planification du nettoyage doivent être configurés au déploiement. - L'export des données de l'appareil inclut les URLs et métadonnées des images hébergées. L'effacement des données supprime également les objets distants, avec possibilité de réessayer en cas d'échec.
- Ajout de la permission
unlimitedStoragepour les copies locales des images, de tests de partage et d'intégration PostgreSQL, et formatage des sources TypeScript du workspace sans modification des sous-modules.