代码之家  ›  专栏  ›  技术社区  ›  Albert Lazaro de Lara Asteroid

Pepper:将变量从Python传递到web JS

  •  1
  • Albert Lazaro de Lara Asteroid  · 技术社区  · 9 年前

    Python代码与Raise事件框的默认值相同,它在其上接收字符串“IMAGE” onStart 输入:

    class MyClass(GeneratedClass):
        def __init__(self):
            GeneratedClass.__init__(self)
            pass
    
        def onLoad(self):
            self.memory = ALProxy("ALMemory")
    
        def onUnload(self):
            self.memory = None
    
        def onInput_onStart(self, p):
            self.memory.raiseEvent(self.getParameter("key"), p)
            self.onStopped(p)
    
        def onInput_onStop(self):
            self.onUnload() #~ it is recommended to call onUnload of this box in a onStop method, as the code written in onUnload is used to stop the box as well
            pass
    

    Javascript代码如下:

    $('document').ready(function(){
    
        var session = new QiSession();
    
        session.service("ALMemory").done(function (ALMemory) {
            ALMemory.subscriber("PepperQiMessaging/totablet").done(function(subscriber) {
                $("#log").text("AAA");
                subscriber.signal.connect(toTabletHandler);
            });
        });
    
        function toTabletHandler(value) {
              $("#log").text("-> ");
        }
    });
    

    #log 但不是第二个JS。

    Choregraphe scheme

    2 回复  |  直到 9 年前
        1
  •  2
  •   JLS    9 年前

    是的,我认为网页加载太晚了,无法赶上您的活动。一个快速的解决方案是在页面准备好时从Javascript发送事件,并在Python脚本中等待该事件。收到此事件后,您就知道网页已准备就绪,可以发送“sendImage”事件。

        2
  •  1
  •   Albert Lazaro de Lara Asteroid    9 年前

    延迟 盒子和 发送图像

    Choreographe Scheme