This code is from project: Make use of your Banana PI IR receiver with python!
ir.py
#!/usr/bin/python from evdev import InputDevice, list_devices from mpd import MPDClient import socket import os def mpd_func(func_name): try: c = MPDClient() c.connect("localhost", 6600) getattr(c, func_name)() c.disconnect() except socket.error: print "Cannot connect to MPD" def MPD_stop(): mpd_func("stop") def MPD_pause(): mpd_func("pause") def MPD_play(): mpd_func("play") def MPD_next(): mpd_func("next") def MPD_prev(): mpd_func("previous") def SYS_halt(): os.system("halt") # function to keycode binding fun_tbl = { 1 : MPD_stop, 2 : MPD_pause, 3 : MPD_next, 4 : MPD_prev, 15 : SYS_halt, 223 : MPD_play, } for dev in [ InputDevice(fn) for fn in list_devices()]: if dev.name == "sunxi-ir": for event in dev.read_loop(): if event.value == 1: try: fun_tbl[event.code]() except KeyError: print "Action for %d code is not defined" % (event.code)
No comments:
Post a Comment