Si vous avez participé au développement d'un logiciel, vous devez déjà connaître le terme SDK ou Software Development Kit (kit de développement logiciel). C'est la seule chose dont vous ne pouvez pas vous passer lorsque vous essayez de développer un logiciel. Mais pour ceux qui ne connaissent pas encore le SDK, nous allons aujourd'hui passer les prochaines minutes à discuter du SDK, et plus précisément du ZIWO SDK pour iOS.

Définition du SDK

SDK est l'acronyme de " Software Development Kit " et désigne un kit comprenant un ensemble d'outils, d'exemples de codes, d'archives, de processus et parfois même de directives qui permettent aux développeurs de créer des applications logicielles pour n'importe quelle plateforme, qu'il s'agisse d'android ou d'iOS. Avec le "kit de développement logiciel", les développeurs peuvent créer des systèmes et développer des applications, tandis que les APIs (Application Programming Interface), en revanche, sont conçues sur mesure pour une utilisation spécifique - pour permettre la communication entre les applications.

(Pour en savoir plus sur les APIs, consultez le site https://www.ziwo.io/why-is-api-key-to-your-business/)

Présentation du SDK ZIWO pour iOS et de ses fonctionnalités

L'équipe ZIWO a développé la classe ZIWO SDK, un singleton qui est utilisé pour récupérer les données liées à ZIWO lorsque l'agent est connecté.

Elle offre un moyen facile d'intégrer les appels ZIWO dans l'application iOS. De plus, elle est codée en Swift 5 - un langage de programmation de qualité industrielle, développé en utilisant une approche moderne de la performance, de la sécurité et des modèles de conception de logiciels. Swift 5 est un langage de programmation rapide, sûr et interactif qui est extrêmement populaire parmi les développeurs iOS et la communauté des développeurs open-source.

L'équipe de développeurs de ZIWO a intégré ce SDK hautement expressif et interactif avec WebSockets, le protocole Verto et WebRTC. Sans oublier que WebSocket est un protocole de communication informatique avancé qui offre des canaux de communication en duplex intégral sur une seule connexion TCP et facilite l'initiation d'une session de communication interactive bidirectionnelle entre le navigateur de l'utilisateur et le serveur.

D'autre part, Verto est un protocole basé sur JSON qui, avec WebSocket, permet à un navigateur web (JSON + WebSockets se traduisent par une capacité bidirectionnelle d'échange instantané d'informations) d'initier un appel. WebRTC est utilisé pour la communication en temps réel dans les navigateurs et les applications mobiles.

Voici une instance de Verto WebSocket pour communiquer avec le protocole Verto.

"Déclaration

Swift

public var vertoWebSocket : VertoWebSocket?"

et un exemple de message de réponse RTC

struct RTCAnswerMessage

extension RTCAnswerMessage : RTCMessageBuilderProtocol

extension RTCAnswerMessage : RTCMessageParserProtocol

Type utilisé pour traiter les candidats RTC reçus par la bibliothèque externe GoogleRTC.

ZiwoClient est la classe principale du "Software Development Kit". Cette classe permet d'initialiser le WebSocket qui sera utilisé pour communiquer avec Verto. Les délégués indiquent au développeur quand un appel est reçu, quand un appel commence et quand un appel se termine. Il fournit également des informations sur la WebSocket qui est liée au protocole Verto.

Vous trouverez ci-dessous les fonctionnalités intégrées au SDK ZIWO :

  • Authentification Verto
  • Appeler un agent ou un numéro externe
  • Recevoir un appel d'un agent ou d'un numéro externe
  • Couper le micro pendant un appel
  • Régler la source audio sur le haut-parleur pendant un appel
  • Mettre en attente / reprendre un appel en cours

Vous pouvez utiliser CocoaPods pour ajouter le SDK à votre application. CocoaPods est construit avec Ruby et peut être installé avec le Ruby par défaut disponible sur macOS ou iOS.

Comment utiliser le SDK ZIWO?

Pour configurer le SDK Ziwo et le protocole Verto, suivez les étapes ci-dessous :

1. Définissez le domaine : ZIWO SDK.shared.domain = "test-domain.aswat.co"

2. Une fois que l'agent s'est connecté à Ziwo (.POST /auth/login), définir le jeton d'accès renvoyé par la requête.
ZIWO SDK.shared.accessToken = accessToken

3. Notifier à Ziwo que l'agent est connecté et disponible (.POST /agents/autoLogin). Chaque fois que vous obtenez les données de l'agent (.GET /profile), définir l'agent connecté.ZIWO SDK.shared.setAgent(agent : agent)

4. Enfin, initialisez le client Ziwo.
self.ziwoClient.initializeClient() self.ziwoClient.delegate = self

LeSDK ZIWO est publié sous la licence GNU GPVL3.

Ce SDK est un changement majeur pour les utilisateurs d'iOS qui souhaitent commencer à utiliser les appels ZIWO dans leurs applications iOS.

Ensavoir plus sur ZIWO