IEmergency est une suite logicielle composée de plusieurs programmes différents. Chaque programme regroupe un ensemble de fonctionnalités qui sont liées entre elles.
Pour éviter toute redondance entre différents systèmes, et pour éviter les multiples encodages, tout le système est architecturé autour d'une seule base de données unique pour la Zone.
Pour permettre l'échange d'information entre les zones de secours, une base de données "centrale" contient toutes les données qui sont communes à tous. Par exemple, les données cartographiques. Cela permet en cas d'échange d'adresse qu'une rue soit identifiée de la même manière par tous.
Le schéma ci-dessous, décrit les différents serveurs nécessaires au fonctionnement d'IEmergency. Attention, il ne faut pas voir chaque serveur comme étant une machine Main frame indépendante et très chère. La plupart de ces machines sont de simples ordinateurs classiques qui peuvent être virtualisés au besoin.
L'infrastriture est conçue pour être la plus redondante possible. Tous les éléments qui le peuvent sont doublés (A et B). Le serveur A est celui qui fonctionne en temps normal. En cas de panne de ce dernier, le serveur B s'enclenche. Dès que le serveur A revient à la normal, le B se remet en veille.
Ce serveur remplit deux fonctions. Il est à la fois l'espace partagé sur le réseau sur lequel se trouve les exécutables permettant d'installer le programme et également la machine par laquelle il est possible de se connecter au serveur de base de données zonale pour effectuer les mises à jour.
Ce serveur permet de faire le lien entre le réseau ASTRID et le réseau ZONE. Il a pour rôle de transmettre les demandes de paging créées depuis IEmergency vers le réseau ASTRID. Il a aussi pour rôle de recevoir les demandes XML arrivant depuis les Centres 112 par le réseau ASTRID, de les interpréter et de les encoder dans la base de données pour que les autres systèmes IEmergency dont le dispatching puissent en disposer.
Ces serveurs (high availability) sont conçus pour fonctionner en continu. Si le serveur A s'arrête, le serveur B prend le relais. Leur fonction principale est de gérer toutes les interconnexions avec des systèmes technique comme par exemple, le track&trace, la domotique, le back-page, etc.
Ces serveurs (high availability) sont conçus pour fonctionner en continu. Si le serveur A s'arrête, le serveur B prend le relais. Leur fonction principale est de gérer toutes les communications avec des systèmes technique comme, par exemple, l'envoi de sms, l'envoi de sds etc.
Le serveur son est, quand à lui, une simple machine qui consulte la base de données pour vérifier si un son doit être joué dans l'interphonie d'un poste. Si c'est le cas, le serveur joue le son et confirme son exécution.