Deux modes de livraison : service cloud ou déploiement privé. Toute la plateforme peut être installée sur vos serveurs, avec les comptes, les messages et les enregistrements conservés dans votre réseau interneInstallez toute la plateforme sur vos serveurs et gardez les données en interneDécouvrir le déploiement privé
Passerelle de connexions persistantes, Open API et livraison par callback : conversations individuelles et de groupe, salons, supergroupes et notifications système. En réseau faible, aucun message n’est perdu ni dupliqué, et l’exploitation reste administrable et auditable dans le back-office.
Canal de messages, conversations, relations et groupes, SDK multiplateformes : l’ensemble forme un système IM livrable tel quel.
Canal de messages
Passerelle de connexions, Open API, API d’administration et livraison par callback réunis : envoi et réception sans interrogation répétée.
Connexion persistante avec protocole propre et reconnexion automatique
L’Open API couvre tous les types de messages
La livraison par callback synchronise statuts et événements métier
Conversations
Cinq formats — individuel, groupe, salon, supergroupe et notification système — avec des types de messages allant du texte au personnalisé.
Texte, image, fichier, voix, position et types personnalisés
Accusé de lecture, rappel de message, mention @, réponse citée
Brouillons, épinglage, itinérance de l’historique et recherche
Contacts et groupes
Relations et gestion de groupes complètes : votre back-end n’a pas à reconstruire un modèle de droits et de liens.
Amis, demandes, listes de blocage, présence
Renommer, administrateurs, mise en sourdine, retrait, transfert, annonces
SDK et IMKit
Web, Android, iOS, macOS, Flutter, React Native et mini-programme ; les composants d’interface IMKit sont réutilisables tels quels.
Un seul compte, plusieurs appareils en ligne en même temps
IMKit fournit l’interface des conversations, messages et contacts
Console et back-office pour l’administration et l’audit
Livraison fiable et gouvernance
Il ne suffit pas d’envoyer des messages : fiabilité de livraison, qualité des conversations et modération vont ensemble.
Aucune perte, aucun doublon en changeant de réseau
La passerelle de connexions gère l’envoi et la réception ; l’accusé n’est renvoyé qu’après un enregistrement avec trois réplicas. Le client tient un numéro de séquence par conversation, récupère ce qui manque après reconnexion et écarte les doublons : en cas de changement de réseau ou d’arrêt du processus, rien ne se perd et rien ne s’affiche deux fois.
Reconnexion automatique, les messages hors ligne attendent l’envoi
Trois réplicas de stockage, cohérents même en écriture intensive
Canal de push hors ligne en secours, même application fermée
La livraison par callback remonte les statuts à vos systèmes
Les détails qui comptent au quotidien
De l’accusé de lecture à la réponse citée : ce qui sert vraiment au quotidien est déjà intégré — après l’intégration, l’expérience de conversation est complète.
Accusé de lecture de groupe au format n/m, avec le détail des lecteurs
Rappel de message, mention @, réponse citée, brouillon et épinglage
Itinérance de l’historique et recherche sur tous les messages
Salons à forte concurrence avec limitation de fréquence
Contacts et groupes sous contrôle
Demandes d’amis, listes de blocage, gestion des groupes et filtre de mots passent par une seule interface, avec une vue dans le back-office.
Demandes d’amis avec validation, blocages et synchronisation de présence
L’admin du groupe renomme, nomme des admins, met en sourdine, retire, transfère
L’annonce du groupe touche tout le monde, la notification système attire l’attention
Filtre de mots et modération : bloquer ou remplacer
Architecture
Le terminal n’ouvre qu’une seule connexion persistante ; le serveur est découpé par responsabilité, stockage et push sont séparés et montent en charge indépendamment.
Couche d’accèsSDK clients et composants d’interface
Passerelle de connexionsService de messagesRelationsService de groupesModérationOpen APIAdmin APIEnvoi de callbacks
Stockage et pushPersistance et diffusion
Stockage des messages (3 réplicas)Itinérance de l’historiqueCanal push hors ligneListe de mots sensibles
La passerelle de connexions et le service de messages se mettent à l’échelle horizontalement ; en déploiement privé, les trois couches restent sur le réseau interne de votre datacenter.
Un premier message, puis le reste
Créez l’application dans la console, récupérez l’AppID, intégrez le SDK puis ouvrez la connexion : le premier message peut partir.
Créez l’application dans la console, récupérez l’AppID et la clé, configurez l’URL de callback
Intégrez le SDK ou les composants d’interface IMKit et remplacez l’écran de conversation
Côté serveur, appelez l’Open API pour les notifications système, les groupes et les relations
import FeiyanIM from '@feiyan/im-sdk';
// 1. Init: get the AppID from the app details in the console
const im = FeiyanIM.init({ appId: 'YOUR_APP_ID' });
// 2. Connect (auto-reconnect after a drop, offline messages are re-delivered)
await im.connect({ userId: 'user_1001', token });
// 3. Send a message: one API for direct chats, groups and chat rooms
await im.sendMessage({
target: 'group_2001',
type: 'text',
content: 'Hello, FeiyanCloud',
});
// 4. Listen for messages and read receipts
im.on('message', (msg) => console.log(msg));
im.on('readReceipt', (r) => {
console.log(`${r.readCount}/${r.totalCount}`, r.readUserIds);
});
Questions fréquentes avant l’intégration
D’autres détails techniques sont dans la documentation ou via un ticket de support.
Comment éviter les pertes et les doublons ?
La passerelle de connexions écrit le message dans le service de messages, et l’accusé d’envoi n’est renvoyé qu’après un enregistrement avec trois réplicas. Le client tient un numéro croissant par conversation, récupère les messages manquants après reconnexion et supprime les doublons. Un changement de réseau ou un processus arrêté ne provoque donc ni perte ni affichage en double.
Quels types de messages sont pris en charge, et peut-on en créer ?
Texte, image, fichier, voix, position et notifications système sont fournis. Vous pouvez aussi définir un type personnalisé : le corps et le rendu restent chez vous, le serveur ne fait que relayer et stocker — pratique pour des cartes de commande ou des cartes rich text.
Comment l’accusé de lecture de groupe est-il compté ?
En groupe, l’accusé s’affiche sous la forme n/m — lu par n des m membres — et le détail des lecteurs est disponible via l’interface. En conversation individuelle, l’heure de lecture est directement marquée. Les deux états sont remontés à votre back-office par callback.
Combien de temps l’historique reste-t-il disponible ?
Dans le cloud, la durée dépend de l’offre et se règle dans la console ; l’historique se lit par pages via l’Open API. En déploiement privé, le stockage et les règles d’itinérance reposent sur votre propre base de données, avec la durée que vous définissez.
Comment les messages se synchronisent-ils entre appareils ?
Un même compte peut être en ligne sur le Web, le mobile et le poste de travail en même temps. L’envoi ou la lecture sur un appareil déclenche un événement sur le canal en ligne ; les appareils hors ligne récupèrent les messages manquants par numéro de séquence à la reconnexion, pour un état identique partout.
L’IM s’utilise-t-il seul ou obligatoirement avec le RTC ?
L’IM et la vidéo en temps réel sont deux produits indépendants, intégrables séparément. Pour lancer un appel audio ou vidéo depuis la conversation, combinez les fonctions d’appel du RTC : le compte et l’authentification restent communs.
Produit réel
Interface et back-office, un seul produit
Conversation de groupe : mentions, annonce de groupe et compteur de lectureLecture 2/7, huit membres et le message retiré proviennent d’une conversation réelleListe des conversations sur mobileBadges de non-lus, épinglés, brouillons et notifications systèmeRéunion sur mobileAppel en tête-à-tête : vidéo distante en grand et fenêtre locale réduitePartage d’écranPartage du tableau de bord de la console, avec les vidéos des participants conservées sur le côté
Votre premier message en 30 minutes
L’offre gratuite suffit pour développer et tester ; au lancement, évoluez selon votre usage.