2017-03-08 79 views
0

从我的网站(使用symphony 3.3)我使用$ ssh-> exec请求其他serveur转码视频(使用ffmpeg)。 我工作很好,但我有一个问题。执行后的phpseclib回调

转码操作后,我从第二服务器获得的信息(使用$ SFT->获得)有关(在命令行的末尾使用>)通过的ffmpeg生成日志文件转码,并希望看到的导致我的网页。

问题是:当我打电话给$ sft->得到以获取信息时,过程未完成(可能需要几分钟)。 那么网站如何知道该流程在第二台服务器上完成? 我试试$ ssh-> exec($ cli,'callbak');没有成功(回调工作,但来得太早)。

如果有人了解我的问题并知道解决方案,请告诉我! phpseclib是非常好的包我想保留它。 问候

文森特

回答

0

,如果你做这样的事情你可能有更多的成功:

$ssh->write("[command]\n"); 
$ssh->read('[prompt]'); 

$ssh->get('/path/to/file'); 

$ssh->read将阻塞,直到它在标准输出读取提示。即。它会阻塞,直到[command]完成执行。