Problème avec script en php et commande asterisk

Problème avec script en php et commande asterisk - PHP - Programmation

Marsh Posté le 08-04-2009 à 22:19:49    

Salut
 
Je suis en trains de me faire une interface en php pour exécuter des commande sur mon serveur asterisk.
 
voilà le script:
 

Code :
  1. <?php
  2. $IP_server= "172.20.2.1";
  3. $Port_Manager="xxxx";
  4. $Manager_Login= "admin";
  5. $Manager_Password= "xxxxx";
  6. //Please don't change anything after this line
  7. $socket = fsockopen("$IP_server", "$Port_Manager", $errno, $errstr, $timeout);
  8. fputs($socket, "Action: Login\r\n" );
  9. fputs($socket, "UserName: ".$Manager_Login."\r\n" );
  10. fputs($socket, "Secret: ".$Manager_Password."\r\n\r\n" );
  11. $ext = $_GET['ext'];
  12. fputs($socket, "Action: SIPShowPeer\r\n" );
  13. fputs($socket, "Peer: ovh\r\n\r\n" );
  14. fputs($socket, "Action: Logoff\r\n\r\n" );
  15. while (!feof($socket))
  16. {
  17. $wrets .= fgets($socket,8192);
  18. $show = preg_match("^Address-IP: [0-9]{1,3}+\.[0-9]{1,3}+\.[0-9]{1,3}+\.[0-9]{1,3}^", $wrets, $matches);
  19. $stat = preg_match("^SIP-Useragent: .{1,35}^", $wrets, $status);
  20. }
  21. if ($show=="0" )
  22. {
  23. echo "<font color=\"#FF0000\">NOT-ONLINE</font>";
  24. }
  25. else
  26. {
  27. echo "<font color=\"#006600\">ON-LINE</p> ",(print_r( implode(" ", $matches),1)),"</font></p>";
  28. echo "<font color=\"#006600\">",(print_r( implode(" ", $status),0)),"</font></p>";
  29. //echo $wrets;
  30. }
  31. fclose($socket);
  32. ?>


 
 
Mais voila les erreurs qu'il me fait:

Code :
  1. Warning: fsockopen() [function.fsockopen]: unable to connect to 172.20.2.1:xxxx (Connection timed out) in /opt/nfs/www/henry/henpier/site/onduleur/appel2.php on line 9
  2. Warning: fputs(): supplied argument is not a valid stream resource in /opt/nfs/www/henry/henpier/site/onduleur/appel2.php on line 10
  3. Warning: fputs(): supplied argument is not a valid stream resource in /opt/nfs/www/henry/henpier/site/onduleur/appel2.php on line 11
  4. Warning: fputs(): supplied argument is not a valid stream resource in /opt/nfs/www/henry/henpier/site/onduleur/appel2.php on line 12
  5. Warning: fputs(): supplied argument is not a valid stream resource in /opt/nfs/www/henry/henpier/site/onduleur/appel2.php on line 17
  6. Warning: fputs(): supplied argument is not a valid stream resource in /opt/nfs/www/henry/henpier/site/onduleur/appel2.php on line 18
  7. Warning: fputs(): supplied argument is not a valid stream resource in /opt/nfs/www/henry/henpier/site/onduleur/appel2.php on line 19
  8. Warning: feof(): supplied argument is not a valid stream resource in /opt/nfs/www/henry/henpier/site/onduleur/appel2.php on line 21
  9. Warning: fgets(): supplied argument is not a valid stream resource in /opt/nfs/www/henry/henpier/site/onduleur/appel2.php on line 23


 
J'ai essayé de cherché le problème mais je ne suis pas arrivé. SI vous le savez merci d'avance.

Reply

Marsh Posté le 08-04-2009 à 22:19:49   

Reply

Marsh Posté le 09-04-2009 à 09:20:03    

L'erreur sur fsockopen() semble entrainer les erreurs suivantes. Donc il faudrait se concentrer sur la ligne du fsockopen(). Les "xxxx" devraient être un numéro de port, mais je suppose qu'il n'est pas affiché uniquement pour le forum, mais que c'est un numéro correct dans la réalité. Il faudrait faire un ping pour voir si l'adresse est bonne. Il faudrait voir s'il n'y a pas un parefeu ou une restriction au niveau du réseau. Il faudrait essayer avec une autre adresse. Le mot "manager" m'inquiete un peu, parce qu'il y a parfois une restriction pour n'avoir accès aux fonctions "manager" qu'en local, mais pas à distance. Il faudrait essayer pour un accès utilisateur normal, au lieu d'un accès pour un manager. Bon courage.


Message édité par olivthill le 09-04-2009 à 09:22:36
Reply

Marsh Posté le 09-04-2009 à 18:26:53    

le numéro de port est ok, ping aussi mais rien dans les logs asterisk.

Reply

Marsh Posté le 17-04-2009 à 10:37:33    

Le message indique que la connection n'a pu être faite avant le time out. Dans ton code je ne vois nulle-part où est défini $timeout, quelle est sa valeur ?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed