PDA

Voir la version complète : [Résolu] Lancer une page internet a distance via asterisk



Keisuke
29/04/2011, 19h29
Hello,

Un titre un peu farfelu...
J'explique ce que je voudrais faire...

Appel un numéro exemple: *20
Puis lance un script qui lance une page web (adresse interne)

Donc j'ai fait ceci:


exten => _*20,1,Answer()
exten => _*20,2,Wait(1)
exten => _*20,3,AGI(test.php)
exten => _*20,4,Hangup()


puis dans test.php

#!/usr/bin/php -q
<?php
set_time_limit(60);
ob_implicit_flush(false);
error_reporting(0);

system("lynx --source http://10.0.0.2/test.php > /dev/null");

return(0);

?>


Lors du lancement ca fonctionne...
Seulement la page n'est jamais lancé.

log:


-- Executing [*20@from-internal:1] Answer("SIP/1050-00000016", "") in new stack
-- Executing [*20@from-internal:2] Wait("SIP/1050-00000016", "1") in new stack
-- Executing [*20@from-internal:3] AGI("SIP/1050-00000016", "test.php") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/test.php
-- <SIP/1050-00000016>AGI Script /var/lib/asterisk/agi-bin/test.php completed, returning 0
-- Executing [*20@from-internal:4] Hangup("SIP/1050-00000016", "") in new stack


Si je fais mal, ou si vous avez une idée, merci d'avance.

@+
Keisuke

Keisuke
29/04/2011, 19h48
Hello,

Sorry, j'ai résolu le problème vient de mon script php..
plus précisément de l'utilisation de "system"

Donc j'ai remplacer par l'utilisation de curl:



$ch = curl_init("10.0.0.2/test.php");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);


@+

Keisuke

asteriskzeperyl
02/05/2011, 21h50
http://www.voip-info.org/wiki/view/Asterisk+cmd+Curl