PDA

Voir la version complète : [Asterisk realtime ] Rejected because extension not found in context



onitsha
27/04/2011, 19h27
Bonjour,
Je possède cette erreur depuis une paire de jour suite a une manipulation ....
J'aimerais savoir concrètement où se trouve le context, est-ce bien dans extensions.conf

Et si oui, quoi mettre dedans ...
Si j'ai bien compris mon context s'appelle default


[default]
exten => 559,1, Set(TIMEOUT(digit)=3) ; Durée max d’un chiffre DTMF à 3 sec
exten => 559,2, Set(TIMEOUT(response)=10)ResponseTimeout,10; Attente d’une tonalité DTMF durant 10 sec
exten => 559,3, Answer ; Decrochage
exten => 559,4, Background(MessagesVocaux/MessageVocalBienvenue) ; Lecture en arrière plan
exten => 559,5, Goto(MenuVocal0,s,1)
[MenuVocal0]
exten => s,1, Background(MessagesVocaux/MessageVocalMenu0) ; Lecture en arrière plan
exten => s,2, WaitExten
exten => 1,1, Goto(MenuVocal1,s,1) ; Aller au contexte MenuVocal1
exten => 2,1, Goto(MenuVocal2,s,1) ; Aller au contexte MenuVocal2
exten => 3,1, Goto(MenuVocal3,s,1) ; Aller au contexte MenuVocal3
exten => *,1, Hangup ; Raccrochage
exten => i,1, Playback(MessagesVocaux/MessageVocalToucheInvalide) ; Lecture
exten => t,1, Goto(MenuVocal0,s,1) ; Si ResponseTimeout dépassé retour
[MenuVocal1]
exten => s,1, Background(MessagesVocaux/MessageVocalMenu1) ; Lecture en arrière plan
exten => s,2, WaitExten
exten => 1,1, Goto(MenuVocal11,s,1) ; Aller au contexte MenuVocal11
exten => 2,1, Goto(MenuVocal12,s,1) ; Aller au contexte MenuVocal12
exten => *,1, Hangup ; Raccrochage
exten => i,1, Playback(MessagesVocaux/MessageVocalToucheInvalide) ; Lecture
exten => t,1, Goto(MenuVocal1,s,1) ; Si ResponseTimeout dépassé retour
[MenuVocal2]
exten => s,1, BackGround(MessagesVocaux/MessageVocalMenu2) ; Lecture en arrière plan
exten => s,2, WaitExten
exten => *,1, Hangup ; Raccrochage
exten => i,1, Playback(MessagesVocaux/MessageVocalToucheInvalide) ; Lecture
exten => t,1, Goto(MenuVocal2,s,1) ; Si ResponseTimeout dépassé retour
[MenuVocal3]
exten => s,1, BackGround(MessagesVocaux/MessageVocalMenu3) ; Lecture en arrière plan
exten => s,2, WaitExten
exten => *,1, Hangup ; Raccrochage
exten => i,1, Playback(MessagesVocaux/MessageVocalToucheInvalide) ; Lecture
exten => t,1, Goto(MenuVocal3,s,1) ; Si ResponseTimeout dépassé retour
[MenuVocal11]
exten => s,1, BackGround(MessagesVocaux/MessageVocalMenu11) ; Lecture en arrière plan
exten => s,2, WaitExten
exten => *,1, Hangup ; Raccrochage
exten => i,1, Playback(MessagesVocaux/MessageVocalToucheInvalide) ; Lecture
[MenuVocal12]
exten => s,1, BackGround(MessagesVocaux/MessageVocalMenu12) ; Lecture en arrière plan
exten => s,2, WaitExten
exten => *,1, Hangup ; Raccrochage
exten => i,1, Playback(MessagesVocaux/MessageVocalToucheInvalide) ; Lecture
exten => 555,1,Dial(SIP/confiture) ; 555 appelle le téléphone confiture
exten => 556,1,Dial(SIP/krakotte) ; 556 appelle le téléphone krakotte



Mes utilisateurs sont bien présent dans ma base de donnée et j'insère dans la table extension la suite :

INSERT INTO extensions (context,exten,priority,app,appdata) VALUES ('default','555','1','Dial','SIP/confiture');

INSERT INTO extensions (context,exten,priority,app,appdata) VALUES ('default','556','1','Dial','SIP/krakotte');



Ils sont inscrit mais ne peuvent pas téléphoner et Asterisk me sort cette erreur .
Je sais que c'est minime mais la ...


Call from 'confiture' to extension 'krakotte' rejected because extension not found in context 'default'.



En vous remerciant

Comdif
27/04/2011, 20h50
la table extensions que tu cites est juste comme son nom indique l'équivalent de extension.conf

il te manque à incrémenter la table sip_buddies qui est l'équivalent du sip.conf
et qui vas permettre aux extensions d'exister réellement et donc au système de fonctionner.

http://www.voip-info.org/wiki/view/Asterisk+RealTime+Sip

onitsha
28/04/2011, 08h33
Merci, mais pourtant
extconfig.conf

sipbuddies=> mysql,general,sip_buddies
voicemail => mysql,general,voicemail_users
queues => mysql,general,queue_table
queue_members => mysql,general,queue_member_table
meetme => mysql,general,meetme
extensions => mysql,general,extensions
sipusers => mysql,general,sip_buddies
sippeers => mysql,general,sip_buddies
extensions => mysql,general,extensions


J'ai tout ce qu'il me faut techniquement dans mon extconfig ... je comprends pas :/

onitsha
28/04/2011, 10h58
Sachant mes utilisateurs sont enregistré de la sorte dans la base de donnée :



INSERT into sip_buddies (id, username,name, callerid, context, canreinvite, insecure, type, host, secret, allow, nat)
VALUES ('','krakotte','krakotte','krakotte','incoming','n o','port,invite','friend','dynamic','ititiaerler', 'all','yes');
INSERT into sip_buddies (id, username,name, callerid, context, canreinvite, insecure, type, host, secret, allow, nat)
VALUES ('','confiture','confiture','confiture','incoming' ,'no','port,invite','friend','dynamic','ititiaerle r','all','yes');

INSERT into extensions (id, context, exten, priority, app, appdata)
VALUES ('','incoming','krakotte','1','Dial','SIP/krakotte');
INSERT into extensions (id, context, exten, priority, app, appdata)
VALUES ('','incoming','confiture','1','Dial','SIP/confiture');


Et que mon sip.conf comporte cela :


[general]
context=incoming ; Default context for incoming calls
;
bindport=5060 ; bindport is the local UDP port that Asterisk will listen on
bindaddr=0.0.0.0 ; IP address to bind to (0.0.0.0 binds to all)
;
disallow=all ; First disallow all codecs
allow=gsm
allow=ulaw ; Allow codecs in order of preference
;
register => 12121111111:1234:11111111@sipauth.deltathree.com/1000
register => Krakotte:ititiaerler@192.168.1.26/5060
register => Confiture:ititiaerler@192.168.1.26/5060
insecure=port,invite ; 1.4 no longer uses "very"
include => demo
include => default
exten => 1571,1,VoiceMailMain



Excusez moi pour le double post

Comdif
28/04/2011, 13h43
Ca vas pas la chaine d'enregistrement de krakotte et confiture n'ont rien a faire
dans le sip.conf puisque ce sont des extensions (TYPE friend)

seuls les types peer doivent se trouver la (les lignes sortantes sip)

les includes se déclarent avec # dans ce fichier
les exten => n'ont rien a faire également dans ce fichier.

Il me semble que tu confonds et n'as pas compris ce qu'est ou la différence entre:
extension.conf (les règles de numérotation)
sip.conf (le fichier de conf des lignes et postes)

Avant de penser à utiliser Realtime il est préférable de bien maîtriser ces notions.

onitsha
29/04/2011, 09h53
J'avoue ne pas avoir spécialement réfléchis sur la fin, tout ceci ma énervé donc j'ai bidouiller dans l'espoir de voir mon erreur disparaitre .

Mes téléphones s'enregistre tout fonctionne .
Cependant j'ai 4 erreurs .


[Apr 29 09:40:37] ERROR[14239] res_config_ldap.c: No directory URL or host found.
[Apr 29 09:40:38] ERROR[14239] codec_dahdi.c: Failed to open /dev/dahdi/transcode: No such file or directory
[Apr 29 09:40:38] ERROR[14239] chan_vpb.cc: No Voicetronix cards detected
[Apr 29 09:40:38] ERROR[14239] ais/clm.c: Could not initialize cluster membership service: Try Ag

Cependant je comprends pas pour celle ldap, meme quand je déactive le module, elle y est encore au redémarrage du service . Surtout que je suis sous mysql, et je n'ai absolument pas touché a la configuration ldap .

Comdif
29/04/2011, 13h02
Bon la je ne peux plus t'aider ce n'est plus dans mes spécialités
Je répond aux questions sur realtime car je maîtrise assez bien cette technique.
Des erreurs au lancement d'asterisk il y en a souvent n’empêchant pas * de fonctionner et il est toujours possible de les traquer pour les faire disparaître
si on à du temps.

Juste une parenthèse sur realtime, il n'est pas obligatoire de tout basculer en realtime, il est parfaitement possible d'utiliser uniquement la fonction de création des postes et lignes avec la table sip_buddies.

En général je préfère, pour ma part utiliser l'extension.conf original ou un include
pour gérer mes dialplans et contextes, c'est largement plus facile, lisible et
pratique pour écrire des fonctions spéciales.

onitsha
30/04/2011, 10h43
D'accord, je t'en remercie.
Je vais essayer de voir tout ça proprement, des que j'ai résolu mon erreur j'essayerai de faire un compte rendu de propre pour les personnes qui sont dans le même cas que moi .

Si quelqu'un sait résoudre ces erreurs qui m'empêche de compléter ce projet manifestez vous :]