Bibliothèque d'Insertion Dynamique de Numéros

Dynamic Number Insertion Library

Installation

Installation

<script id="voxolib_DNI" 
   src="https://diddyn.voxolib.com/libv1/number.js" 
   data-clientid="YOUR_CLIENT_ID" 
   data-detection="true" 
   data-country="fr" 
   data-selector=".phone" 
   async></script>

Options de Configuration

Configuration Options

Attribute Description Valeurs Description Values
data-clientid Identifiant unique du client Chaîne Your unique client identifier String
data-country Code pays fr, uk, es, it, de, nl Country code fr, uk, es, it, de, nl
data-detection Mode de détection automatique true/false Auto-detection mode true/false
data-selector Sélecteur CSS pour le remplacement ciblé Chaîne de sélecteur CSS CSS selector for targeted replacement CSS selector string

Autorisation des Domaines

Domain Authorization

Configuration

{
  "authorizedDomains": [
    "example.com",
    "*.example.com",
    "sub.example.com"
  ]
}
Pattern Description Exemple
example.com Autorise uniquement le domaine exact example.com
*.example.com Autorise tous les sous-domaines de example.com sub1.example.com, sub2.example.com
sub.example.com Autorise uniquement ce sous-domaine spécifique sub.example.com
Pattern Description Example
example.com Authorizes exact domain only example.com
*.example.com Authorizes all subdomains of example.com sub1.example.com, sub2.example.com
sub.example.com Authorizes only this specific subdomain sub.example.com

Règles de Validation

Validation Rules

Règle Description
Format des domaines Ne pas inclure de protocole (https://) ou de slash final (/)
Wildcards Uniquement autorisés au début du domaine avec *.
Validation Le domaine actuel doit correspondre exactement ou via wildcard
Configuration vide Si authorizedDomains est absent, la substitution est désactivée
Rule Description
Domain Format Do not include protocol (https://) or trailing slash (/)
Wildcards Only allowed at start of domain with *.
Validation Current domain must match exactly or via wildcard
Empty Config If authorizedDomains is missing, swapping is disabled

Formats Téléphoniques Supportés

Supported Phone Formats

  • International : International: +33 1 23 45 67 89, +33(0)1 23 45 67 89
  • National : National: 01 23 45 67 89, (0)1 23 45 67 89
  • Compact : Compact: 0123456789

Configuration JSON

JSON Configuration

Structure

Structure

{
						  "fr": {
							"numbers": { ... },
							"sources": { ... }
						  }
						}

Section Numéros

Numbers Section

Les numéros doivent être stockés au format E164 sans espaces ni caractères spéciaux :

Numbers should be stored in E164 format without spaces or special characters:

Key Description Exemple
organic Numéro pour le trafic de recherche organique 33123456789
google_paid Numéro pour le trafic Google Ads 33987654321
facebook Numéro pour le trafic Facebook/Instagram 33234567890
linkedin Numéro pour le trafic LinkedIn 33345678901
bing_paid Numéro pour le trafic Bing Ads 33456789012
email Numéro pour les campagnes email 33567890123
default Numéro par défaut pour les sources non identifiées 33000000000
Key Description Example
organic Number for organic search traffic 33123456789
google_paid Number for Google Ads traffic 33987654321
facebook Number for Facebook/Instagram traffic 33234567890
linkedin Number for LinkedIn traffic 33345678901
bing_paid Number for Bing Ads traffic 33456789012
email Number for email campaign traffic 33567890123
default Fallback number for unidentified sources 33000000000

Section Sources

Sources Section

Chaque source peut être configurée avec des règles de détection spécifiques :

Each source can be configured with specific detection rules:

Propriété Description Exemple
domains Tableau des motifs de domaine à rechercher dans l'URL référente ["google.", "googleadservices.com"]
exclude Tableau des motifs de domaine à exclure ["googleadservices.", "googlesyndication."]
parameters Paramètres URL pour identifier la source ["gclid", "utm_source=google"]
Property Description Example
domains Array of domain patterns to match in referrer URL ["google.", "googleadservices.com"]
exclude Array of domain patterns to exclude ["googleadservices.", "googlesyndication."]
parameters URL parameters to identify the source ["gclid", "utm_source=google"]

Types de Sources

Sources Types

"organic": {
									  "domains": ["google.", "bing.com", "yahoo.com", "duckduckgo.com"],
									  "exclude": ["googleadservices.", "googlesyndication."],
									  "parameters": []
									}
									

"google_paid": {
										  "domains": ["googleadservices.com", "google."],
										  "parameters": ["gclid", "gbraid", "wbraid"]
										},
										"bing_paid": {
										  "domains": ["bing.com"],
										  "parameters": ["msclkid"]
										}
									

"facebook": {
										  "domains": ["facebook.com", "instagram.com", "messenger.com"],
										  "parameters": ["fbclid"]
										},
										"linkedin": {
										  "domains": ["linkedin.com"],
										  "parameters": ["li_fat_id"]
										},
										"twitter": {
										  "domains": ["twitter.com", "t.co"],
										  "parameters": []
										},
										"tiktok": {
										  "domains": ["tiktok.com"],
										  "parameters": ["ttclid"]
										}
									

"email": {
										  "domains": [],
										  "parameters": ["utm_medium=email", "utm_source=newsletter"]
										}
									

Liste Noire

Blacklist

La fonctionnalité de liste noire empêche le remplacement de numéros de téléphone spécifiques par le système DNI.

The blacklist feature prevents specific phone numbers from being replaced by the DNI system.

Configuration

{
							  "fr": {
								"numbers": { ... },
								"blacklist": ["0123456789", "0987654321"],
								"sources": { ... }
							  }
							}
						
Fonctionnalité Description Feature Description
Support des formats Les numéros peuvent être spécifiés dans n'importe quel format supporté pour le pays Format Support Numbers can be specified in any supported format for the country
Normalisation Les numéros sont automatiquement normalisés pour la comparaison Normalization Numbers are automatically normalized for comparison
Persistance Les numéros sur liste noire restent inchangés quelle que soit la source du trafic Persistence Blacklisted numbers remain unchanged regardless of traffic source

Détection des Sources de Trafic

Traffic Source Detection

Source Méthode de détection Source Detection Method
Recherche organique Référents : Google, Bing, Yahoo, DuckDuckGo, Ecosia, Qwant Organic Search Referrers: Google, Bing, Yahoo, DuckDuckGo, Ecosia, Qwant
Recherche payante Paramètres : gclid, gbraid, wbraid (Google Ads), msclkid (Bing Ads) Paid Search Parameters: gclid, gbraid, wbraid (Google Ads), msclkid (Bing Ads)
Réseaux sociaux Paramètres : fbclid (Facebook/Instagram), li_fat_id (LinkedIn), ttclid (TikTok) Social Media Parameters: fbclid (Facebook/Instagram), li_fat_id (LinkedIn), ttclid (TikTok)
Email Paramètres UTM : utm_medium=email, utm_source=newsletter Email UTM Parameters: utm_medium=email, utm_source=newsletter