pictogram Auteur: Patrick Biker
Date: 18 mars 2006
Maj : 21 Mars 2015

Des exemples d'utilisation des fonctions du WLangage

Rien de tel qu'un exemple pour comprendre une fonction de WLangage. Dans cette section, vous trouverez des exemples simples.

Des exemples évolués, où la fonction est utilisée en contexte, sont également disponible sur ce site.

Aller à la page des exemples évolués

telAppelDebut (en anglais tapiCallStart)

DateHeureAppel est une DateHeure
DateHeureAppel
= telAppelDébut ()


Début de la page

telAppelEnAttente (en anglais tapiCallIsWaiting)

// L'appel en cours est-il en attente ?
SI telAppelEnAttente () ALORS
    // Affichage d'un message
    Message ( "L'appel a été mis en attente" )
FIN


Début de la page

telAppelEstOccupe (en anglais tapiCallIsBusy)

PROCEDURE ComposerNumTel ( sNuméroTel )
// On compose le numéro
SI telCompose ( sNuméroTel , "EtatAppel" , 4) ALORS
 // Communication établie
   Message ( "La communication est établie" )
   Info ( "La communication est établie, vous pouvez décrocher" )
   RETOUR
SINON
   SI PAS ErreurInfo ()~="" ALORS
      Erreur ( ErreurInfo ())
   FIN
   // On teste si la ligne est occupée
   SI telAppelEstOccupé () ALORS
      Info ( "La ligne est occupée" )
      RETOUR
   FIN
   // On teste si le correspondant a répondu
   SI telAppelPasDeRéponse () ALORS
      Info ( "le correspondant n'a pas répondu" )
      RETOUR
   FIN
FIN


Début de la page

telAppelEstTermine (en anglais tapiCallIsOver)

//L'appel en cours est-il terminé ?
SI telAppelEstTerminé () ALORS
    //Raccrochage de la ligne
    telRaccroche ()
FIN


Début de la page

telAppelFin (en anglais tapiCallEnd)

DateHeureFinAppel est une DateHeure
DateHeureFinAppel = telAppelFin ()


Début de la page

telAppelPasDeReponse (en anglais tapiNoAnswer)

PROCEDURE ComposerNumTel ( sNuméroTel )
// On compose le numéro
SI telCompose ( sNuméroTel , "EtatAppel" , 4 ) ALORS
    // Communication établie
    Message ( "La communication est établie"
    Info ( "La communication est établie, vous pouvez décrocher"
    RETOUR
SINON
    SI PAS ErreurInfo ()~= "" ALORS
        Erreur ( ErreurInfo ())
    FIN
    // On teste si la ligne est occupée
    SI telAppelEstOccupé () ALORS
        Info ( "La ligne est occupée" )
        RETOUR
    FIN
    // On teste si le correspondant a répondu
    SI telAppelPasDeRéponse () ALORS
        Info ( "Le correspondant n'a pas répondu" )
        RETOUR
    FIN
FIN


Début de la page

telArrete (en anglais tapiStop)

PROCEDURE DetectionAppel ( nIdService , nIdAppel , nStatut )
  //Décroche la ligne pour répondre
  telRépondAppel ( nIdAppel )

  //Enclenchement du répondeur
  telJoue ( "repondeur.wav" , telJoueBoucle , nIdAppel )

  //Si la touche étoile a été appuyée
  //le répondeur est stoppé
  SI Position ( telToucheEnfoncée ( nIdAppel ), "*" ) ALORS
    telArrête ( nIdAppel )
  FIN


Début de la page

telCapacite (en anglais tapiCapability)

SI ETBinaire ( telCapacité ( "LTP2" ), telOptionTypeVoix ) = ...
        telOptionTypeVoix ALORS Info ( "Voix gérée" )

Si
ETBinaire ( telCapacité ( "LTP2" ), telOptionTypeFax ) = ...
        telOptionTypeFax ALORS Info ( "Fax géré" )


Début de la page

telCompose (en anglais tapiDial)

SI telCompose ( ChampSaisieNuméroTéléphone , "EtatLigne" ) ALORS
    Info ( "Cliquez sur OK pour raccrocher" )
    telRaccroche ()
FIN

Procédure EtatLigne ( ValeurEtat )
SELON ValeurEtat
  CAS telLigneOccupée : Message ( "La ligne est occupée" )
  CAS telLigneDecrochée : Message ( "OK, connecté" )
  CAS telLigneNumérote : Message ( "Numérotation en cours" )
  CAS telLigneTonalité : Message ( "Tonalité" )
  CAS telLigneRaccrochée : Message ( "Le correspondant a raccroché" )
  CAS telLigneAttendRéponse : Message ( "Recherche du correspondant" )
  CAS telLigneSonnerie : Message ( "Sonnerie chez le correspondant" )
FIN


Début de la page

telComposeLigne (en anglais )

//Récupère la liste des périphériques TAPI
sListeTAPI est une chaîne = telListePériphérique ()
//Affiche la liste dans une combo
ListeAjoute ( COMBO_TAPI , sListeTAPI )
...
//Sélectionne le périphérique TAPI
SI t elComposeLigne ( COMBO_TAPI [ COMBO_TAPI ], ...
    ChampSaisieNuméroTéléphone , "EtatLigne" )<>0 ALORS
      Info ( "Cliquez sur OK pour raccrocher" )
      telRaccroche ()
FIN

Procédure EtatLigne ( ValeurEtat )
SELON ValeurEtat
  CAS telLigneOccupée : Message ( "La ligne est occupée" )
  CAS telLigneDecrochée : Message ( "OK, connecté" )
  CAS telLigneNumérote : Message ( "Numérotation en cours" )
  CAS telLigneTonalité : Message ( "Tonalité" )
  CAS telLigneRaccrochée : Message ( "Le correspondant a raccroché" )
  CAS telLigneAttendRéponse : Message ( "Recherche du correspondant" )
  CAS telLigneSonnerie : Message ( "Sonnerie chez le correspondant" )
FIN


Début de la page

TelDemarreDetectionAppel (en anglais tapiListen)

// Démarre le service de détection des appels
SI telDémarreDétectionAppel ( "AppelEntrant" , telOptionTypeFax ,...
            "DetectionAppel" ) ALORS
     // Le service de détection des appels a démarré
    Message ( "Détection des appels activée" )
SINON
   // Le service de détection des appels n'a pas démarré
    Erreur ( "Impossible de démarrer la détection des appels" + RC +...
         "Détail de l'erreur :" + RC + ErreurInfo ( errMessage ))
FIN


Début de la page

telDureeAppel (en anglais TapiCallDuring)

DuréeAppel est une Durée
DuréeAppel = telDuréeAppel ()


Début de la page

telEnregistre (en anglais TapiRecord)

//Le répondeur a été mis en route
//Le message de la personne qui téléphone est actuellement enregistré
//La durée maximale est fixée à 60 secondes

telEnregistre
( "M_" + DateDuJour () + Maintenant () + ".wav" , 60 , nIdAppel )


Début de la page

telErreur (en anglais tapiError)

SI telNuméroAppelé () = "" ALORS
    SI telErreur () = Vrai ALORS
        Erreur ( ErreurInfo ( errMessage ))
    FIN
FIN


Début de la page

telFinDetectionAppel (en anglais TapiStopCallDetection)

-- Fermeture de la fenêtre de gestion des appels
// On arrête le service de détection des appels
telFinDétectionAppel ( "AppelEntrant" )


Début de la page

TelJoue (en anglais TapiPlay)

PROCEDURE DetectionAppel ( nIdService , nIdAppel , nStatut )
  //Décroche la ligne pour répondre
  telRépondAppel ( nIdAppel )

  //Enclenchement du répondeur
  telJoue ( "repondeur.wav" , telJoueBoucle , nIdAppel )

  //Si la touche étoile a été appuyée
  //le répondeur est stoppé
  SI Position ( telToucheEnfoncée ( nIdAppel ), "*" ) ALORS
    telArrête ( nIdAppel )
  FIN


Début de la page

telListePeripherique (en anglais TapiDeviceList)

//Récupère la liste des périphériques TAPI
sListeTAPI est une chaîne = telListePériphérique ()
//Affiche la liste dans une combo
ListeAjoute ( COMBO_TAPI , sListeTAPI )


Début de la page

telNumeroAppelant (en anglais TapiCallerId)

// Procédure permettant de rechercher le numéro de téléphone
// dans la base de donnée des contacts
PROCEDURE RechercheIdentite ( sNumTel )
// On met en forme le numéro de téléphone
sNumTel = Droite ( SansEspace ( sNumTel ), 9 )
// On recherche dans le carnet d'adresse
HLitRecherchePremier ( CONTACT , TélSurNeuf , sNumTel )
SI HTrouve ( CONTACT ) ALORS
      LIB_NOM = CONTACT . Nom
      LIB_PRENOM = CONTACT . Prénom
      LIB_SOCIETE = CONTACT . Société
      LIB_TEL = CONTACT . Téléphone
SINON
      LIB_NOM = "CONTACT INCONNU"
      LIB_PRENOM = "CONTACT INCONNU"
      LIB_SOCIETE = "CONTACT INCONNU"
      LIB_TEL = telNuméroAppelant ( nIdAppel )
FIN


Début de la page

telNumeroAppele (en anglais TapiCalledID)

sNumTel est une chaîne = telNuméroAppelé ( nIdAppel )
Message ( "Appel en cours : " + sNumTel + "..." )


Début de la page

telNumerote (en anglais TapiSendKey)

telNumérote ( "123456789ABCD*#" , ListeAppel [ ListeAppel ])


Début de la page

telPeripherique (en anglais tapiDevice)

//Récupère la liste des périphériques TAPI
sListeTAPI est une chaîne = telListePériphérique ()

//Affiche la liste dans une combo
ListeAjoute ( COMBO_TAPI , sListeTAPI )
...
//Sélectionne le périphérique TAPI
//choisi dans la liste
telPériphérique ( COMBO_TAPI [ COMBO_TAPI ])


Début de la page

telRaccroche (en anglais TapiHangUp)

SI telCompose ( ChampSaisieNuméroTéléphone , "EtatLigne" ) ALORS
   Info ( "Cliquez sur OK pour raccrocher" )
   telRaccroche ()
FIN


Début de la page

telRepondAppel (en anglais TapiAnswerCall)

PROCEDURE DetectionAppel ( nIdService , nIdAppel , nStatut )
  //Décroche la ligne pour répondre
  telRépondAppel ( nIdAppel )
  //Enclenchement du répondeur
  telJoue ( "repondeur.wav" , telJoueBoucle , nIdAppel )
  //Si la touche étoile a été appuyée
  //le répondeur est stoppé
  SI Position ( telToucheEnfoncée ( nIdAppel ), "*" ) ALORS
   telArrête ( nIdAppel )
  FIN


Début de la page

telRepondAppel (en anglais TapiAnswerCall)

//Décroche la ligne pour répondre
telRépondAppel ( nIdAppel )


Début de la page

telToucheEnfoncee (en anglais TapiKeyPressed)

ListeTouches est une chaîne = telToucheEnfoncée ()
SI Position ( ListeTouches , "*" )<>0 ALORS
   Trace ( "La touche * a été utilisée" )
FIN


Début de la page