PDA

Voir la version complète : App_alarmreceiver



greg2901
23/03/2013, 00h14
Bonjour,

Je suis en train de m'arracher les cheveux sur un problème:
Je cherche a utiliser l'appli alarmreceiver, qui d'aprés le support d'asterisk présente un bug https://issues.asterisk.org/jira/browse/ASTERISK-20484 la solution est simple d'après ce que j'ai compris il suffit de télécharger la nouvelle version de l'appli dans le repertoir /usr/src/asterisk*/apps
J'ai renommé le fichier initial app_alarmreceiver.c.old et j'ai supprimé les caractères qu'il y avait après le .c du nouveau fichier, la syntaxe du nouveau fichier est strictement identique à l'ancien...

Lorsque je lance ma commande "make" j'ai plein d'erreur et impossible de recompiler.

Je pense avoir manqué un truc sur la procédure de maj, si quelqu'un a une idée !!!!:pt1cable:

Je préssise que mon serveur tourne avec Centos, et Asterisk 1.8.6.0
Merci de votre aide

jean
23/03/2013, 03h00
- tu as bien télécharger le .c et non le .diff ?

il y a pas mal de commentaires, y'a ptet des trucs intéressants !

quelles erreurs ?

greg2901
23/03/2013, 10h47
Sur le site d'asterisk dans le forum ils parlent de 2 versions

Si j'utilise la derniere a savoir app_alarmreceiver.c?revision=375215, que je renomme en app_alarmreceiver.c et ensuite je fais un MAKE j'ai les erreurs suivantes:

[CC] app_alarmreceiver.c -> app_alarmreceiver.o
app_alarmreceiver.c: In function âreceive_dtmf_digitsâ:
app_alarmreceiver.c:265: attention : implicit declaration of function âast_channel_nameâ
app_alarmreceiver.c:265: attention : format â%sâ expects type âchar *â, but argument 5 has type âintâ
app_alarmreceiver.c:265: attention : format â%sâ expects type âchar *â, but argument 5 has type âintâ
app_alarmreceiver.c:265: attention : format â%sâ expects type âchar *â, but argument 5 has type âintâ
app_alarmreceiver.c:265: attention : format â%sâ expects type âchar *â, but argument 5 has type âintâ
app_alarmreceiver.c:265: attention : format â%sâ expects type âchar *â, but argument 5 has type âintâ
app_alarmreceiver.c:266: attention : format â%sâ expects type âchar *â, but argument 6 has type âintâ
app_alarmreceiver.c:285: attention : implicit declaration of function âast_channel_hangupcause_setâ
app_alarmreceiver.c: In function âwrite_metadataâ:
app_alarmreceiver.c:333: attention : implicit declaration of function âast_channel_callerâ
app_alarmreceiver.c:333: erreur: invalid type argument of â->â
app_alarmreceiver.c:333: attention : type defaults to âintâ in declaration of â__xâ
app_alarmreceiver.c:333: erreur: invalid type argument of â->â
app_alarmreceiver.c:333: erreur: invalid type argument of â->â
app_alarmreceiver.c:333: attention : passing argument 1 of âast_strlen_zeroâ makes pointer from integer without a cast
app_alarmreceiver.c:341: erreur: invalid type argument of â->â
app_alarmreceiver.c:341: attention : type defaults to âintâ in declaration of â__xâ
app_alarmreceiver.c:341: erreur: invalid type argument of â->â
app_alarmreceiver.c:341: erreur: invalid type argument of â->â
app_alarmreceiver.c:341: attention : passing argument 1 of âast_strlen_zeroâ makes pointer from integer without a cast
app_alarmreceiver.c: In function âalarmreceiver_execâ:
app_alarmreceiver.c:801: attention : implicit declaration of function âast_channel_writeformatâ
app_alarmreceiver.c:801: erreur: invalid type argument of â->â
app_alarmreceiver.c:802: erreur: invalid type argument of â->â
app_alarmreceiver.c:804: attention : implicit declaration of function âast_set_write_format_by_idâ
app_alarmreceiver.c:805: attention : format â%sâ expects type âchar *â, but argument 6 has type âintâ
app_alarmreceiver.c:810: attention : implicit declaration of function âast_channel_readformatâ
app_alarmreceiver.c:810: erreur: invalid type argument of â->â
app_alarmreceiver.c:811: erreur: invalid type argument of â->â
app_alarmreceiver.c:813: attention : implicit declaration of function âast_set_read_format_by_idâ
app_alarmreceiver.c:814: attention : format â%sâ expects type âchar *â, but argument 6 has type âintâ
app_alarmreceiver.c:824: attention : implicit declaration of function âast_channel_stateâ
make[1]: *** [app_alarmreceiver.o] Erreur 1
make: *** [apps] Erreur 2

Avec la version app_alarmreceiver.c?anonate375081 il y a encore plus d'erreur et ça me flingue le fichier menuselect.tree qui devient inutilisable car incomplet, lorsque je l'ouvre j'ai le menu select jusqu'à l'app alarmreceiver et ensuite il est vide !!!

fastm3
23/03/2013, 12h53
Tu prends un fichier du trunk donc si tu n'es pas sur le trunk, pas bon...Certaines structures ont du etre changees. Ton source tree doit etre en 1.8 probablement. Essaie avec une version 11 si vraiment tu as besoin de ca.
Fastm3.

greg2901
23/03/2013, 13h18
OK, en gros je fais une mise à jour complete d'Asterisk vers la version 11 ?

Il y a une methode simple pour faire ça ?

fastm3
23/03/2013, 16h06
tar, configure, make , make install comme les autres versions je pense meme si je ne me suis pas encore penché sur la version 11
Mais bon, c'est un gros saut de version, donc tu risques d'avoir d'autres soucis. Dialplan peut etre. Ca me semble un peu la bombe atomique juste pour un patch.

Regarde donc tout de meme le patch ( le diff pas le fichier complet ) , les modifs et voit si tu peux les reporter completement manuellement sur ta version que tu ne donne pas. Ca peut etre plus rapide si tu as quelques bases en C.
Fastm3.

greg2901
24/03/2013, 01h09
La MAJ c'est bien passée, c'est mon serveur perso, je n'ai pas une config de malade avec plein de contexte, je n'ai eu qu'un problème avec un AGI pour filtrer les appels entrant (appel anonime,...=>LISTE NOIRE!!!), dans l'ensemble tout baigne...

Concernant l'appli alarmreceiver.conf, le fichier app_alarmreceiver.c se trouvant dans le version 11 est encore bugé, il faut vraiment télécharger la version corrigée et la coller dans le répertoire !!!

Maintenant lorsque j'appel l’extension qui lance cette appli j'ai bien les 2 tons et du coup ma centrale d'alarme envoie bien les infos et les acquits passent aussi !!!

:ouimaitre: Fastm3, Jean merci pour votre aide :ouimaitre:

Problème résolut !