Questions fréquentes
Les questions qui reviennent le plus souvent quand une équipe décide si Saphere lui convient, et où se trouve la réponse complète.
Que mesure Saphere, et à partir de quoi ?
Le visage d’une personne, filmé une trentaine de secondes. À partir de la lumière que sa peau renvoie, Saphere reconstitue un signal de pouls et en déduit jusqu’à dix variables : fréquence cardiaque, fréquence respiratoire, variabilité, stress, pression artérielle, âge apparent, indice de masse corporelle et un score cardiovasculaire d’ensemble. La liste complète, avec ce dont chacune dépend, est sur ce qui est mesuré.
Quelles sont les façons de prendre une mesure ?
Deux, qui partagent le même serveur. Saphere Scan conduit une mesure guidée en direct, dans un navigateur ou une WebView, et vous rend un résultat. L’api prend un fichier que vous avez déjà enregistré, une vidéo ou une suite d’images, et rend le même type de résultat sans aucun widget. Les équipes qui ont besoin des deux utilisent les deux.
Quelle doit être la durée d’une vidéo ?
Au moins 25 secondes. Seules les 30 premières sont utilisées, quelle que soit la longueur du fichier.
Ai-je besoin d’un serveur à moi ?
Pour tout ce qui atteint la production, oui — un petit point d’entrée qui frappe un jeton d’accès pour chaque mesure. La raison n’est pas la commodité du widget mais la vôtre : votre clé d’API ouvre toutes les routes de votre compte et n’expire pas, elle ne doit donc jamais atteindre un navigateur. Le widget demande à votre point d’entrée un jeton court et à usage unique à la place. Les jetons d’accès couvrent les trois façons de le câbler, y compris celle qui est réservée aux essais.
Où trouver ma clé d’API ?
Dans la console, par environnement. Une clé de Test et une clé de Production sont deux clés différentes et ne sont pas interchangeables — voir les environnements.
Puis-je changer les couleurs et les écrans du widget ?
Oui, les deux. Vous les préparez dans la console ops, avec l’atelier de personnalisation, et vous attachez le résultat au widget par son identifiant. Rien n’est recopié dans votre code, et un changement ne demande aucun déploiement de votre côté. La personnalisation explique comment.
Quelles langues parle-t-il ?
Dix : arabe, allemand, anglais, espagnol, français, italien, polonais, portugais, portugais du Brésil et turc. La mise en page se reflète pour l’arabe, de la barre d’outils aux chevrons.
Fonctionne-t-il dans une application mobile ?
Oui, dans une WebView — React Native, Ionic/Capacitor, ou une coque native. L’autorisation caméra doit être accordée par l’application hôte, et c’est l’étape que la plupart des intégrations manquent en premier. L’intégration en WebView en donne le détail par plateforme.
Pourquoi une mesure est-elle revenue sans aucune variable ?
Presque toujours un droit plutôt qu’un échec : les variables qu’un compte peut recevoir se configurent sur le compte, et un client de test fraîchement créé n’en a reçu aucune. Un résultat avec un score de qualité et un returnedVariables vide en est la signature.
Pourquoi une variable a-t-elle échoué alors que les autres ont réussi ?
Parce qu’elle avait besoin de quelque chose dont elle ne disposait pas — la taille et le poids pour l’indice de masse corporelle, les champs démographiques pour les indicateurs de pression artérielle et cardiovasculaires. Cette variable revient porteuse d’un code d’erreur qui nomme ce qui manquait ; le reste de la mesure n’en est pas affecté.
Quelles conditions une bonne mesure demande-t-elle ?
De la lumière sur le visage, une personne immobile, un visage découvert, et un cadrage correct à 40-60 cm avec le haut du buste visible. Les conditions d’une bonne mesure expliquent pourquoi chacune n’est pas négociable et comment le widget guide vers la bonne position.
Que se passe-t-il après l’envoi d’une vidéo ?
Le serveur la traite et rend les variables auxquelles votre compte a droit, avec le signal dont elles sont tirées. Deux voies existent : un appel unique qui porte le fichier et les options ensemble, ou un enchaînement en deux temps qui crée d’abord la mesure et téléverse le fichier ensuite. Les deux sont sur la page des mesures.
Quels formats vidéo sont acceptés ?
.mp4, .avi, .mov et .webm, jusqu’à 100 Mo. Seules les 30 premières secondes sont utilisées.
Comment fonctionne le système de crédits ?
Chaque variable qu’une mesure calcule avec succès consomme des crédits — le coût de cette variable, tel qu’il est configuré sur votre compte. Une mesure qui rend quatre variables coûte donc la somme de ces quatre-là, et une variable qui n’a pas pu être calculée ne coûte rien. Les crédits se comptent par mois calendaire : une dotation neuve chaque mois, et ce qui n’a pas été dépensé n’est pas reporté.
Que se passe-t-il quand les crédits sont épuisés ?
Les mesures ne sont plus possibles pour ce compte jusqu’au mois suivant, et le widget affiche un message le disant plutôt que d’échouer en silence. Si vous attendez un pic, demandez le relèvement de la dotation avant plutôt qu’après.
Pourquoi ma mesure a-t-elle échoué ?
L’endroit où elle a échoué en dit le plus.
Avant le début de la capture — la mesure n’a pas pu s’ouvrir du tout. Presque toujours le jeton : absent, déjà utilisé, expiré, ou frappé pour un compte inactif ou à court de crédits.
Pendant la capture — les conditions n’étaient pas réunies, ou la session a été interrompue :
- aucun visage détecté, ou le visage a quitté le cadre ;
- lumière trop faible, trop dure, ou à contre-jour ;
- le conteneur du widget a été redimensionné en cours de capture ;
- la caméra est devenue indisponible — une autre application l’a prise, ou l’autorisation a été retirée ;
- la personne a annulé.
Les conditions d’une bonne mesure couvrent celles qui dépendent de l’environnement.
Comment diagnostiquer une mesure en échec ?
Écoutez le flux d’événements. measure:aborted porte la raison pour laquelle une personne a mis fin à la mesure, measure:failed celle pour laquelle le système n’a pas pu l’achever, et chacun porte un code plutôt qu’un message — un code ne change pas avec la langue d’affichage. La liste complète est dans les événements.
Comment Saphere protège-t-il les données personnelles ?
Le traitement se limite à produire les indicateurs de signes vitaux pour lesquels la mesure existe. Les captures ne sont conservées que le temps que le calcul en a besoin, et une mesure peut être supprimée par l’api — ce qui retire les objets stockés en plus de l’enregistrement, dans cet ordre, de sorte qu’aucune capture ne survive à l’enregistrement qui l’adresse.
Où les données sont-elles hébergées ?
En France, chez OVHcloud, sur une infrastructure agréée pour l’hébergement de données de santé. Le transport est chiffré de bout en bout, et la connexion à la base est elle-même vérifiée contre l’autorité de l’hébergeur plutôt que simplement chiffrée.
Comment envoyer un retour ou signaler un problème ?
Par courriel, à issue@i-virtual.ai. Joignez l’identifiant de la mesure s’il y en a un — c’est ce qui permet de remonter au problème.
Peut-on essayer avant d’intégrer ?
Oui — le widget peut viser directement l’api avec votre clé, sans point d’entrée à vous, précisément pour cela. Cette stratégie s’appelle unsafe-api-key parce que c’est ce qu’elle est : elle place une clé permanente dans une page. À réserver aux essais, jamais à la production.