Advertisement
Guest User

Untitled

a guest
Jul 23rd, 2018
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.55 KB | None | 0 0
  1. #encoding:utf-8
  2. import irma
  3. import wireless
  4.  
  5. class IRPacket(wireless.Packet):
  6. attributs = {}
  7. def __init__(self):
  8. wireless.Packet.__init__(self)
  9. self.name = "IR <Unknown Packet>"
  10.  
  11. def __str__(self):
  12. return self.name
  13.  
  14. #Device IR
  15. class IRDevice (IR.Device) :
  16. # Méthodes directement accessibles depuis les WifiEmitters / WifiReceivers
  17. sharedMethods = ["getFreq","setFreq"]
  18.  
  19. # Méthode privée d'initialisation spécifique à l'infrarouge
  20. def _initIR(self):
  21. # Protocole : indique si on est en train d'advertiser, scanner ou en mode normal
  22. self.protocole = PROTO_RAW
  23. # Indique la fréquence courante
  24. self.currentFreq = 38000
  25.  
  26. # L'interface est disponible ?
  27. def isUp(self):
  28. return utils.isInterfaceUp(self.interface)
  29.  
  30. # Accesseurs à la fréquence courante
  31. def getFreq(self):
  32. return self.currentFreq.value
  33.  
  34. def setFreq(self, freq):
  35. self.currentFreq.value = freq
  36.  
  37.  
  38.  
  39. class IREmitter(IR.Emitter):
  40. def __init__(self,interface="hci0"):
  41. wireless.Emitter.__init__(self,interface=interface,packetType=IRPacket,deviceType=IRDevice)
  42.  
  43. def _convert(self,p):
  44. if p.packet is None:
  45.  
  46.  
  47. # ===========Elements communs===========
  48. # On initialise le paquet comme paquet IRma
  49. p.packet = IRma_Hdr()
  50. # IRma
  51.  
  52. return p.packet
  53.  
  54. class IRReceiver(IR.Receiver):
  55. def __init__(self,interface="hci0",monitor=True):
  56. wireless.Receiver.__init__(self,interface=interface,packetType=IRPacket,deviceType=IRDevice)
  57. self.setMonitorMode(monitor)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement