Serveur VoIP Asterisk sur CentOS Partie 3/4 (Installer et configurer Postfix)

Nous allons

  1. Installer Asterisk (Article sur www.madti.info en collaboration avec Thomas Schultz).
  2. Configurer et tester Asterisk
  3. Installer et configurer Postfix
  4. Troubleshooting Asterisk

Mise en place d’un Serveur VoIP Asterisk sur CentOS Partie 4/4 (Troubleshooting Asterisk)

Afin de diagnostiquer les éventuels problèmes liés à la configuration d’Asterisk, il est indispensable d’en connaitre le fonctionnement de base. De nombreux blogs et/ou wikis existent. Et puis nous n’allons réinventer la roue, alors vous trouverez sur le site

http://www.voip-info.org/wiki/view/How+To+Debug+and+Troubleshoot+VOIP

Tout ce dont vous avez besoin.

Et puis un petit résumé:

Lancement d’Asterisk

Pour lancer Asterisk, il faut d’abord se connecter en root :

Lancer Asterisk :

root# /etc/init.d/asterisk start

Lancer la CLI (Command-Line Interface) :

root# asterisk -rvvvvv

Les commandes de la CLI

Le nombre de commandes est important. Voici celles que nous avons le plus utilisées :

  • sip debug : active le mode debug et affiche les trames
  • sip show users : affiche les utilisateurs inscrits
  • reload : recharge les fichiers de configuration
  • show dialplan : affiche extensions.conf

Vous pouvez accéder à toutes les commandes ici.

Les fichiers de configuration

Les fichiers de configuration d’Asterisk se trouvent dans /etc/asterisk/ et portent l’extension .conf.

  • asterisk.conf : contient les emplacements des différents répertoires utilisés par Asterisk
  • extensions.conf : permet de définir le plan de numérotation (Dial Plan)
  • sip.conf : permet de définir les contextes d’appel et les utilisateurs utilisant le protocle SIP

 

 

Afficher Cacher un texte sous Word

Pour afficher cacher un texte mis en forme sous Word. Il faut passer par une petite programmation en vba.
Une série de cases à cocher ( une par section à cacher) est à créer, nommer.
Puis à vous d’adapter le script suivant:

'SCRIPT VBA POUR AFFICHER CACHER UN TEXTE PAR MODIFICATION DE SIGNET OU PAR TEXTE MASQUÉ
 'Préparation de Word
 'Affichage du ruban développeur
 'Fichier=>Options=>Personnaliser le Ruban>cocher développeur(design)
 'Préparation du document
 'On insère dans les documents des case-à-cocher (ActiveX)(onglet developpeur>contrôles>mode création, contrôles>outils hérités>contrôles ActiveX>case-à-cocher)
 'On insère des signets (marques-pages/bookmark) aux endroits a modifier (un signet titre et un second texte).
 'On créer les styles à appliquer (styles pour titres et styles pour textes)
 'On appuie sur Alt+F11 pour l’éditeur VBE/VBA
 'On selectionne Project(nom_du_document), puis Microsoft Word Objets =>ThisDocument
 '
 'Définitions
 'On déclare les fonctions (SUB) en PRIVATE pour qu’elles ne soient disponibles que pour ce document, et qu'elles n'interfèrent pas les uns avec les autres.
 'Dim permet la déclaration de la variable, AS son Format
 'On assigne les valeurs aux variables:
 '"texte" est une chaîne de caractères
 'Chr(10) indique un retour à la ligne
 'Chr(169) indique un CopyRight ©
 'Chr(167) indique un Alinea/Paragraphe §
 'Chr(174) indique un Registered/ Ressort ®
 'Chr(153) indique un TradeMark ™
 '& indique une concaténation de chaîne
 'vbNullString efface le contenu de la variable
 '
 'On commence les conditions avec IF et on termine la condition avec End IF
 'ELSE une condition « si faux »
 'Call appelle une autre fonction SUB
 'With permet d’appliquer plusieurs modifications à un objet et se termine par End With
 '
 '
 'Script
 'case-à-cocher 1
 Private Sub CheckBox1_Click()
 Dim StrTxt As String, StrBkMk As String
 Dim Stxt As String, StBk As String
 StrBkMk = "Bookmark1"
 StBk = "bookmarka"
 If Me.CheckBox1.Value = True Then
 StrTxt = "Titre signet 1"
 Stxt = Chr(10) & "Texte signet 1" & Chr(10)
 Else
 StrTxt = vbNullString
 Stxt = vbNullString
 End If
 Call UpdateBookmark(StrBkMk, StrTxt)
 Call UpdateBookmark2(StBk, Stxt)
 Call ListBookmark("Bookmark1")
 Call StyleBookmark("bookmarka")
 End Sub
 'case-à-cocher 2
 Private Sub CheckBox2_Click()
 Dim StrTxt As String, StrBkMk As String
 Dim Stxt As String, StBk As String
 StrBkMk = "Bookmark2"
 StBk = "bookmarkb"
 If Me.CheckBox2.Value = True Then
 StrTxt = "Titre signet 2"
 Stxt = Chr(10) & "Texte signet 2" & Chr(10)
 Else
 StrTxt = vbNullString
 Stxt = vbNullString
 End If
 Call UpdateBookmark(StrBkMk, StrTxt)
 Call UpdateBookmark2(StBk, Stxt)
 Call ListBookmark("Bookmark2")
 Call StyleBookmark("bookmarkb")
 End Sub
 'case-à-cocher 3
 Private Sub CheckBox3_Click()
 Dim StrTxt As String, StrBkMk As String
 Dim Stxt As String, StBk As String
 StrBkMk = "Bookmark3"
 StBk = "bookmarkc"
 If Me.CheckBox3.Value = True Then
 StrTxt = " Titre signet 3 "
 Stxt = Chr(10) & "Texte signet 3." & Chr(10)
 Else
 StrTxt = vbNullString
 Stxt = vbNullString
 End If
 Call UpdateBookmark(StrBkMk, StrTxt)
 Call UpdateBookmark2(StBk, Stxt)
 Call ListBookmark("Bookmark3")
 Call StyleBookmark("bookmarkc")
 End Sub
 'case-à-cocher 4
 Private Sub CheckBox4_Click()
 Dim StrTxt As String, StrBkMk As String
 Dim Stxt As String, StBk As String
 StrBkMk = "Bookmark4"
 StBk = "bookmarkd"
 If Me.CheckBox4.Value = True Then
 StrTxt = " Titre signet 4»
 Stxt = Chr(10) & "Texte signet 4." & Chr(10)
 Else
 StrTxt = vbNullString
 Stxt = vbNullString
 End If
 Call UpdateBookmark(StrBkMk, StrTxt)
 Call UpdateBookmark2(StBk, Stxt)
 Call ListBookmark("Bookmark4")
 Call StyleBookmark("bookmarkd")
 End Sub
 'case-à-cocher 5
 'cache affiche grâce à "texte masqué" de la police de caractères (texte ou page blanche)
 Private Sub CheckBox5_Click()
 Bookmarks("Bookmark5").Range.Font.Hidden = Not CheckBox5.Value
 '// If the logic is wrong, change to
 '// = Not Checkbox5.Value
 End Sub

'mise-a-jour du signet de titre
Sub UpdateBookmark(StrBkMk As String, StrTxt As String)
Dim bProtected As Boolean
Dim BkMkRng As Range
Dim sPassword As String
sPassword = "" 'password pour protection du doc
'deprotection du doc
If ActiveDocument.ProtectionType <> wdNoProtection Then
bProtected = True
ActiveDocument.Unprotect Password:=sPassword
End If
With ActiveDocument
If .Bookmarks.Exists(StrBkMk) Then
Set BkMkRng = .Bookmarks(StrBkMk).Range
BkMkRng.Text = StrTxt
.Bookmarks.Add StrBkMk, BkMkRng
End If
End With
'reprotection du doc
Finished:
If bProtected = True Then
ActiveDocument.Protect _
Type:=wdAllowOnlyFormFields, NoReset:=True, Password:=sPassword
End If
Set BkMkRng = Nothing
End Sub

'mise-a-jour du signet de texte
Sub UpdateBookmark2(StBk As String, Stxt As String)
Dim bProtected As Boolean
Dim BkMkRng2 As Range
Dim sPassword As String
sPassword = "mot de passe" 'password pour protection du doc
'deprotection du doc
If ActiveDocument.ProtectionType <> wdNoProtection Then
bProtected = True
ActiveDocument.Unprotect Password:=sPassword
End If
With ActiveDocument
If .Bookmarks.Exists(StBk) Then
Set BkMkRng2 = .Bookmarks(StBk).Range
BkMkRng2.Text = Stxt
.Bookmarks.Add StBk, BkMkRng2
End If
End With
'reprotection du doc
Finished:
If bProtected = True Then
ActiveDocument.Protect _
Type:=wdAllowOnlyFormFields, NoReset:=True, Password:=sPassword
End If
Set BkMkRng = Nothing
End Sub

'application du style de titre
Sub ListBookmark(StrBkMk As String)
Dim BkLstRange As Range
Dim bProtected As Boolean
Dim sPassword As String
sPassword = "mot de passe" 'password pour protection du doc
'deprotection du doc
If ActiveDocument.ProtectionType <> wdNoProtection Then
bProtected = True
ActiveDocument.Unprotect Password:=sPassword
End If
If Me.CheckBox1.Value = True Then
With ActiveDocument
If .Bookmarks.Exists(StrBkMk) Then
Set BkLstRange = .Bookmarks(StrBkMk).Range
BkLstRange.Style = "Puce_1"
End If
End With
Else
With ActiveDocument
If .Bookmarks.Exists(StrBkMk) Then
Set BkLstRange = .Bookmarks(StrBkMk).Range
BkLstRange.Style = "Normal"
End If
End With
End If
'reprotection du doc
Finished:
If bProtected = True Then
ActiveDocument.Protect _
Type:=wdAllowOnlyFormFields, NoReset:=True, Password:=sPassword
End If
End Sub

'application du style de texte
Sub StyleBookmark(StBk As String)
Dim BkLstRange2 As Range
Dim bProtected As Boolean
Dim sPassword As String
sPassword = "mot de passe" 'password pour protection du doc
'deprotection du doc
If ActiveDocument.ProtectionType <> wdNoProtection Then
bProtected = True
ActiveDocument.Unprotect Password:=sPassword
End If
With ActiveDocument
If .Bookmarks.Exists(StBk) Then
Set BkLstRange = .Bookmarks(StBk).Range
BkLstRange.Style = "article"
End If
End With
'reprotection du doc
Finished:
If bProtected = True Then
ActiveDocument.Protect _
Type:=wdAllowOnlyFormFields, NoReset:=True, Password:=sPassword
End If
End Sub