通过Qimessaging JavaScript连接到虚拟机器人



我想在本地测试我的JavaScript应用程序。

因此,我想在Qimessaging与虚拟机器人的JavaScript应用程序之间建立连接。

有人在此之前做过吗?

这甚至可能吗?

作为虚拟机器人,我在Windows 10系统上尝试了Naoqi-bin.exe和OpenNao VM。

连接到虚拟机器人可以与真实的机器人(胡椒(一起工作。

这是我的尝试:


Qimessaging 1.0:

代码:

<!DOCTYPE html>
<html>    
<head>
    <meta charset="utf-8"/>
</head>    
<body>
<script src="libs/qimessaging/1.0/qimessaging.js"></script>
<script type="text/javascript">
var robot_address = '127.0.0.1'    
  var session = new QiSession(robot_address);
    session.socket().on('connect', function () {
  console.log('QiSession connected!');
  // now you can start using your QiSession
}).on('disconnect', function () {
  console.log('QiSession disconnected!');
});        
</script>
</body>    
</html>

结果:

Broweser控制台显示:

404找不到 http://127.0.0.1/libs/qimessaging/1.0/socket.io/1/?t=1557305266224

交叉原始请求被阻止:相同的原点策略删除阅读 http://127.0.0.1/libs/qimessaging/1.0/socket.io/1/?t = 1557305266224 RESON RESON RESON:COORS HEADER'Access-Control-Allogal-Origin'Sviver-Origin'Sviveral-P> bk_hr>

Qimessaging 2.0:

代码:

<!DOCTYPE html>
<html>    
<head>
    <meta charset="utf-8"/>
</head>    
<body>
<script src="libs/qi/2/qi.js"></script>
<script type="text/javascript">
    var robot_address = '127.0.0.1'
    QiSession(function (session) {
      console.log("connected!");
      // you can now use your QiSession
    }, function () {
      console.log("disconnected");
    },
      robot_address);
</script>
</body>
</html>

结果:

与Qimessaging 1.0

相同

robotutils:

代码:

<!DOCTYPE html>
<html>   
<head>
  <meta charset="utf-8"/>
</head>    
<body>
  <script src="js/robotutils.js"></script>
  <script type="text/javascript">
    RobotUtils.robotIp = "127.0.0.1"
    RobotUtils.onService(function (ALDialog) {
      console.log("Connected the service.")         
    }, function () {
      console.log("Failed to get the service.")
    })
  </script>
</body>   
</html>

结果:

获取http://127.0.0.1/libs/qimessaging/2/qimessaging.js 404找不到

" http://127.0.0.1/libs/qimessaging/2/qimessaging.js"的脚本 即使其MIME类型(" Text/HTML"(也不是有效的 JavaScript Mime类型。

加载失败的源 " http://127.0.0.1/libs/qimessaging/2/qimessaging.js"。


所以我的解释是虚拟机器人不提供所需的文件,或者我在这里缺少某些内容?

好吧,我在aldebaran论坛中找到了答案

[...]

对不起,但是Qimessaging JavaScript无法使用虚拟机器人,只有带有真正的机器人(在真实机器人上有服务器听某个端口来进行Qimessing JS通信,有没有为虚拟机器人运行的此类服务器(。

[...]

最新更新