Activité API

Communiquer avec Kiamo

Un seul paramètre (URL de base), un SDK chargé côté client qui parle directement à Kiamo.

Principe : SDK client, pas de proxy

Contrairement à Intent, on ne passe pas par une route API Next.js. L’application charge le SDK JavaScript AgentVoice depuis l’URL de votre instance Kiamo (NEXT_PUBLIC_KIAMO_URL). Le SDK s’expose globalement (window.AgentVoice) et communique ensuite directement avec Kiamo depuis le navigateur (WebSocket / API Kiamo). Une seule configuration : l’URL de base.

Flux

FrontendChargement script (baseUrl + /sdk/agentvoice/agent_voice.js)new AgentVoice(baseUrl)Kiamo (instance)

Aucun serveur intermédiaire : le SDK dialogue avec Kiamo (authentification et session gérées par Kiamo / l’agent connecté).

Paramètre unique : URL de base

La variable d’environnement NEXT_PUBLIC_KIAMO_URL définit l’URL de votre instance Kiamo (ex. https://votre-instance.mykiamo.com). Elle est publique (préfixe NEXT_PUBLIC_) car le script est chargé par le navigateur depuis ce domaine. L’authentification agent (login, extension, état connecté) est gérée par Kiamo ; le SDK expose l’état via agent.getName(), agent.isLogged(), etc.

Connexion et API du SDK

  • Chargement : on injecte le script {baseUrl}/sdk/agentvoice/agent_voice.js, puis on instancie new AgentVoice(baseUrl).
  • onReady : callback appelé quand le SDK est prêt ; on peut alors lire l’agent (getName, getLogin, getExtension, isLogged) et s’abonner aux événements (onError).
  • Rafraîchir : instance.indicators?.refresh() pour mettre à jour les indicateurs. Pas de GET/POST HTTP depuis notre backend : tout se fait côté client via le SDK.

Capacités AgentVoice (API exposée par le SDK)

ModuleRôle
agentAgentÉtat de l’agent : getName(), getLogin(), getExtension(), isLogged(), onError()
callCallPilotage des appels (CTI)
smartMediaSmartMediaMédia et interactions
indicatorsIndicatorsIndicateurs (refresh())
directoryDirectoryAnnuaire
allowedAllowedPermissions / autorisations
softphoneSoftphoneContrôle softphone

Exemple d’utilisation

URL du script (dérivée de NEXT_PUBLIC_KIAMO_URL) :

https://votre-instance.mykiamo.com/sdk/agentvoice/agent_voice.js

Après chargement du script, instanciation et lecture de l’agent :

const instance = new window.AgentVoice(baseUrl);
instance.onReady(() => {
  const name = instance.agent.getName();
  const isLogged = instance.agent.isLogged();
  // ...
});

Test en conditions réelles : page Architecture → Connexions tiers (carte Kiamo AgentVoice).

Documentation Kiamo

Référence complète du SDK AgentVoice (agent, call, smartMedia, indicators, directory, allowed, softphone) : AgentVoice Javascript API. La sémantique et les événements sont définis par Kiamo ; notre app ne fait qu’utiliser le SDK.