C’est un probleme connu, à moins d’utiliser un certificat, il est difficile de se connecter en ssh sans taper le mot de passe.
Le blog que j’ai cité tout à l’heure a une solution :

expect -c ’spawn ssh addrServeur cat /etc/passwd’ -c ‘expect password:’ -c ’send P4ssw0Rd\n’ -c ‘expect eof’

Source : http://unixjunkie.blogspot.com/2006/01/two-cool-bash-tricks.html

Voici juste un avant gout :

exec 5<> /dev/tcp/www.google.com/80
printf "GET / HTTP/1.0\n\n" >&5
cat <&5
exec 5>&-

et

diff <(find dir1) <(find dir2)

le blog :
http://unixjunkie.blogspot.com/
la page en question :
http://unixjunkie.blogspot.com/2006/01/two-cool-bash-tricks.html
Je conseil surtout la lecture des commentaires !!

J’ai rencontré le probleme aujourd’hui.
Une page php (contenant de l’xml) n’était pas reconnu comme tel par XMLhttpRequest.
En réalité il faut ajouter le commande php suivante :

header(’Content-Type: text/xml’);

Je ne dois pas être le premier à avoir eu le problème. Lorsque j’utilise javascript pour modifier une partie d’un texte HTML, il clignote (rafraichissement de l’image). En général cela survient quand on utilise innerHTML. Pour éviter ça je conseil l’usage de la fonction appendChild().

OpenSER::Monitoring

juillet 18, 2007

La derniere fois j’ai parlé de monitoring d’Asterisk, cet aprem parlons d’OpenSER. La configuration de netsnmp ne change pas de celle faite pour Asterisk.

MODIFICATION DU FICHIER DE CONFIGURATION OPENSER.CFG

# SNMP
loadmodule “snmpstats.so”

#snmp params
modparam(”snmpstats”, “snmpgetPath”, “/usr/bin/”)
modparam(”snmpstats”, “sipEntityType”, “registrarServer”)
modparam(”snmpstats”, “sipEntityType”, “proxyServer”)

CREATION DU FICHIER SNMPSTATS

push /etc/snmp/snmpstats.conf

EXEMPLES DE DONNEES DISPONIBLES

SNMPv2-SMI::enterprises.27483.3.1.1.1.1.1.0 = STRING: “SIP/2.0″
SNMPv2-SMI::enterprises.27483.3.1.1.1.1.2.0 = Timeticks: (0) 0:00:00.00
SNMPv2-SMI::enterprises.27483.3.1.1.1.1.4.0 = STRING: “(”
SNMPv2-SMI::enterprises.27483.3.1.1.1.1.5.1.4.1.4.10.1.11.158.5060 = STRING: “`”
SNMPv2-SMI::enterprises.27483.3.1.1.1.1.5.1.4.1.4.10.1.11.158.5061 = Hex-STRING: 08
SNMPv2-SMI::enterprises.27483.3.1.1.1.1.5.1.4.1.4.127.0.0.1.5060 = STRING: “`”
SNMPv2-SMI::enterprises.27483.3.1.1.1.1.5.1.4.1.4.127.0.0.1.5061 = Hex-STRING: 08
SNMPv2-SMI::enterprises.27483.3.1.1.1.1.7.1.2.1 = STRING: “METHOD_INVITE”
SNMPv2-SMI::enterprises.27483.3.1.1.1.1.7.1.2.2 = STRING: “METHOD_CANCEL”
SNMPv2-SMI::enterprises.27483.3.1.1.1.1.7.1.2.3 = STRING: “METHOD_ACK”
SNMPv2-SMI::enterprises.27483.3.1.1.1.1.7.1.2.4 = STRING: “METHOD_BYE”
SNMPv2-SMI::enterprises.27483.3.1.1.1.1.7.1.2.5 = STRING: “METHOD_INFO”
SNMPv2-SMI::enterprises.27483.3.1.1.1.1.7.1.2.6 = STRING: “METHOD_OPTIONS”
SNMPv2-SMI::enterprises.27483.3.1.1.1.1.7.1.2.8 = STRING: “METHOD_REGISTER”
SNMPv2-SMI::enterprises.27483.3.1.1.1.1.7.1.2.9 = STRING: “METHOD_MESSAGE”
SNMPv2-SMI::enterprises.27483.3.1.1.1.1.7.1.2.10 = STRING: “METHOD_SUBSCRIBE”
SNMPv2-SMI::enterprises.27483.3.1.1.1.1.7.1.2.11 = STRING: “METHOD_NOTIFY”
SNMPv2-SMI::enterprises.27483.3.1.1.1.1.7.1.2.12 = STRING: “METHOD_PRACK”
SNMPv2-SMI::enterprises.27483.3.1.1.1.1.7.1.2.13 = STRING: “METHOD_REFER”
SNMPv2-SMI::enterprises.27483.3.1.1.1.1.7.1.2.14 = STRING: “METHOD_PUBLISH”
SNMPv2-SMI::enterprises.27483.3.1.1.1.3.1.0 = Counter32: 9836
SNMPv2-SMI::enterprises.27483.3.1.1.1.3.2.0 = Counter32: 3989
SNMPv2-SMI::enterprises.27483.3.1.1.1.3.3.0 = Counter32: 4388
SNMPv2-SMI::enterprises.27483.3.1.1.1.3.4.0 = Counter32: 7423
SNMPv2-SMI::enterprises.27483.3.1.1.1.3.5.0 = Counter32: 1187
SNMPv2-SMI::enterprises.27483.3.1.1.1.6.1.0 = Gauge32: 0
SNMPv2-SMI::enterprises.27483.3.1.1.1.8.1.0 = Counter32: 0
SNMPv2-SMI::enterprises.27483.3.1.1.1.8.2.0 = Counter32: 0
SNMPv2-SMI::enterprises.27483.3.1.1.1.8.3.0 = Counter32: 330
SNMPv2-SMI::enterprises.27483.3.1.2.1.3.1.0 = INTEGER: 2
SNMPv2-SMI::enterprises.27483.3.1.2.1.3.3.0 = INTEGER: 1
SNMPv2-SMI::enterprises.27483.3.1.2.1.3.4.0 = STRING: ” “
SNMPv2-SMI::enterprises.27483.3.1.2.1.4.1.0 = Counter32: 0
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.2.0 = Gauge32: 3600
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.3.0 = Gauge32: 4294967295
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.4.0 = Gauge32: 0
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.5.0 = Gauge32: 3600
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.6.1.2.1 = STRING: “DefaultUser”
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.6.1.2.2 = STRING: “asterisk”
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.6.1.2.3 = STRING: “3456″
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.6.1.2.4 = STRING: “0001″
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.6.1.3.1 = Counter32: 0
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.6.1.3.2 = Counter32: 0
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.6.1.3.3 = Counter32: 0
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.6.1.3.4 = Counter32: 0
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.7.1.2.1.1 = STRING: “DefaultUser”
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.7.1.2.2.1 = STRING: “sip:s@10.1.1.7″
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.7.1.2.3.1 = STRING: “sip:3456@10.1.1.4:38504;rinstance=004543fdbc5f7891″
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.7.1.2.3.2 = STRING: “sip:3456@10.1.1.4:36114;rinstance=4ec5a9802d261488″
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.7.1.2.4.1 = STRING: “sip:0001@10.1.11.3:5060″
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.7.1.3.1.1 = STRING: “DefaultUser”
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.7.1.3.2.1 = STRING: “sip:s@10.1.1.7″
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.7.1.3.3.1 = STRING: “sip:3456@10.1.1.4:38504;rinstance=004543fdbc5f7891″
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.7.1.3.3.2 = STRING: “sip:3456@10.1.1.4:36114;rinstance=4ec5a9802d261488″
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.7.1.3.4.1 = STRING: “sip:0001@10.1.1.3:5060″
SNMPv2-SMI::enterprises.27483.3.1.2.1.5.7.1.4.1.1 = Hex-STRING: 00 00 00 00 00 00 00 00

Au demarrage, maintenir la touche T, Il est alors possible d’accéder au disque du MacBook par firewire.
Utile pour charger des images disques :)

Dans le fichier vm_general.inc, certaines distributions (dont trixbox) disposent d’une configuration de asterisk comme suis :

format=wav49|wav

Il semblerait que passer à la forme suivante améliore le niveau sonore (non testé) :

format=wav|wav49

ce mesage s’adresse donc à ceux qui auraient des mails vocaux au niveau sonore trop faible.

Source

CONDITION DE MISE EN PLACE

deux serveurs Asterisk chacun avec le port 4569/udp en écoute.

PREPARATION DES FICHIERS DE CONFIGURATION

Fichier iax.conf pour chacun des deux serveurs

[general]
bindport = 4569
bindaddr = 0.0.0.0
disallow=all
allow=ulaw
allow=alaw
allow=gsm
mailboxdetail=yes

[DNS du serveur distant]
type=friend
username=DNS du serveur local
secret=Mot de passe commun aux deux serveurs
auth=plaintext
host=DNS du serveur distant
context=fromiax
peercontext=fromiax
qualify=yes
trunk=yes

ATTENTION : le mot de passe du trunk est le même pour les deux serveurs

Fichier extensions.conf des deux serveurs :

[fromiax]
exten => _X.,1,Answer()
exten => _X.,1,PlayBack(hello-world)
exten => _X.,n,Hangup()

Dans ce cas de configuration, tous les appels envoyés d’un serveur à l’autre à travers IAX obtiendront un jolie Hello World.

COMMENT RENVOYER DES APPELS A TRAVERS IAX ?
Soit pour une extension connue avec Dial :

exten => 2002,1,Dial(IAX2/DNS du serveur distant/2002,30,r)

Soit pour toutes les extensions inconnues d’un contexte avec switch :

switch => IAX2/DNS du serveur distant

Voici deux méthodes pour l’écoute des conversations avec Asterisk

Exemple Monitor

exten =>
s,1,ExecIF($["${RECORDSIP}"="TRUE"],Monitor,wav|${TIMESTAMP}-${CALLERID(
num)}-${MACRO_EXTEN}-${UNIQUEID}.WAV)

Exemple MixMonitor

exten => _1NXXNXXXXXX,1,MixMonitor(/var/spool/asterisk/monitor/${CALLERIDNUM}-${EPOCH}-${EXTEN}.wav)
exten => _1NXXNXXXXXX,2,Dial(Zap/R1/${EXTEN},90
exten => _1NXXNXXXXXX,3,Hangup

Je ne sais pas si j’en aurais besoin mais c’est toujours mieux noté quelque part.

Un petit truc sur wengo

Emplacement du fichier de configuration :
/Users/name/Library/Application Support/WengoPhone/config.xml

Log:
/Users/name/Applications/WengoPhone.app/Contents/MacOS/log-main.txt