DirecTV IP Receiver

From LinuxMCE
Jump to: navigation, search


Minimal codeset for control of DirecTV IP Satellite boxes

The template 2159 (HR24 IP) can be modified with these codes.

Verify template Comm Method is Ethernet.

Device Data needs #69 TCP Port(int) set to 8080

I am unable to determine the range for the MAC address of the devices. I set the Plug & Play 'Range of MAC' From 111121700000 To 111121742000, Vendor Model ID = DirecTV HR-xx Satellite Box, and PNP Protocol = DHCP


Ruby Codes

INTERNAL

Process Initialize

$logFile = File.new("/var/log/pluto/DirecTV.log", "w")

Process Incoming Data

buf = conn_.Recv(100, 500) if !(buf.empty?)

 msg = buf.strip
 log(msg)
 log("")   
 log("***********************************************************")

end

Private Method Listing

def RemoteKey(key)

 log("**********          Sending key=" + key + "          **********")
 conn_.Send("GET\x20/remote/processKey?key=" + key +  &hold=keyPress\x20HTTP/1.1\x0D\x0AContent-Length:\x200\x0D\x0A\x0D\x0A")

end

def log(word)

   logTime = Time.now
   timeStr = logTime.strftime("%d-%m-%Y  %H:%M:%S  ")
   $logFile.print( timeStr + word + "\n" )
   $logFile.flush()
   print(word + "\n")

end


POWER

On

RemoteKey("poweron")

Off

RemoteKey("poweroff")


GENERAL

Enter/Go

RemoteKey("enter")

Info

RemoteKey("info")

NUMBERS

0

RemoteKey("0")

1

RemoteKey("1")

2

RemoteKey("2")

3

RemoteKey("3")

4

RemoteKey("4")

.

.

.

9

RemoteKey("9")