在xbmc中从python触发按键

时间:2014-05-07 18:53:05

标签: raspberry-pi keypress xbmc

我试图触发返回按键,或者从python按下鼠标左键来影响xbmc(raspbmc)。我以前用uinput用raspbian做过这个,但这似乎对raspbmc不起作用。我也尝试过来自adafruit https://learn.adafruit.com/retro-gaming-with-raspberry-pi/buttons的这个剧本,这个剧本也对我有所帮助。

任何帮助赞赏:) 谢谢 汤姆

1 个答案:

答案 0 :(得分:0)

在尝试看似每个解决方案之后,使用这个python xbmc json模块就可以了!不是关键的按键,但控制xbmc好像是

https://github.com/jcsaaddupuy/python-xbmc

这是我修改的代码,用于获取GPIO输入以触发XBMC中的事件

import RPi.GPIO as GPIO  
from xbmcjson import XBMC
xbmc = XBMC("http://127.0.0.1/jsonrpc")
GPIO.setmode(GPIO.BCM)

GPIO.setup(23, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.setup(24, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)  

def my_callback2(channel):  
    global XBMC
    xbmc.Input.Select()

GPIO.add_event_detect(23, GPIO.FALLING, callback=my_callback2, bouncetime=300)  


if __name__ == "__main__":
    try:  
        print "Waiting for rising edge on port 24"  
        GPIO.wait_for_edge(24, GPIO.RISING)  
        print "Rising edge detected on port 24. Here endeth the third lesson."  

    except KeyboardInterrupt:  
        GPIO.cleanup()       # clean up GPIO on CTRL+C exit  
    GPIO.cleanup()           # clean up GPIO on normal exit try: