在PHP中制作一个Mumble ICE Authenticator

时间:2015-06-24 01:57:30

标签: php voip ice

通过ICE与Mumble交流是一个非常有趣的任务,只有很少的例子。

我试图在PHP中创建用户身份验证器,并且我在设置方面遇到了一些问题。我的设置是PHP 5.5,Murmur 1.3.0和ICE 3.5.1

$ICE = Ice_initialize();
    $secret = array('secret'=>'');
    try{
            $base = $ICE->stringToProxy("Meta  -e 1.0:tcp -h 127.0.0.1 -p 6502");
            $meta = $base->ice_checkedCast("::Murmur::Meta")->ice_context($secret);
            $mconfig = $meta->getServer(1)->ice_context($secret)->getTree();

这是我到目前为止设置ice服务器的上下文,我想为Murmur :: ServerAuthenticator接口设置回调"验证"

我不确定如何使用ICE Callback系统进行设置,以便能够使用auth的所有详细信息调用函数并返回所需的数据。

这样的事情:

$server->setAuthenticator($auth);
$auth = myownfunc($user, $pw, $certificates, $certhash);

1 个答案:

答案 0 :(得分:0)

我认为身份验证器需要保持TCP连接打开,换句话说,它们必须是守护进程,您不能(或者可能不应该尝试)使用PHP。

因此,您可以在下面找到的所有身份验证器示例都是用Python编写的,并且您会注意到它们示例化了一种或另一种方式。

https://github.com/mumble-voip/mumble-scripts/blob/master/Authenticators

令人困惑的事情可能是您是客户端(服务器杂音),但是当回调/身份验证到达时,该客户端需要保持连接状态