Home AMX User Forum AMX General Discussion

Apple TV?

Hi, does anybody know if Apple TV can be controlled via IP? If not, anybody got an IR file they can post?

Thanks!

Comments

  • ryanwwryanww Posts: 196
    I was also interested to see if it was controllable through IP, but couldn't find any information on it. People are already hacking the crap out of these and so I am sure someone will either come up with a way to communicate via IP or make it able to do so. I will look around and see if I fin find any info on it. I really want to get one of those for myself.

    Ryan
  • DHawthorneDHawthorne Posts: 4,584
    ryanww wrote:
    I was also interested to see if it was controllable through IP, but couldn't find any information on it. People are already hacking the crap out of these and so I am sure someone will either come up with a way to communicate via IP or make it able to do so. I will look around and see if I fin find any info on it. I really want to get one of those for myself.

    Ryan

    If people are hacking it, the protocol is out there someplace.
  • ryanwwryanww Posts: 196
    Here is a link to one of the few forums with all of the latest stuff on it. I am sure this one is the latest up-to date one. It is the best one I have seen. I do know they were able to get remote desktop (VNC) working on it, and SSH working. Here is the site:

    http://www.appletvhacks.net/

    Ryan
  • hodeyphodeyp Posts: 104
    interesting, won't be long before a hack is out there!
  • bobbob Posts: 296
    Controlling AppleTV via telnet

    There is no need for any (new) "protocol" to control appleTV. Just enable ssh to the box (search on google or see http://www.appletvhacks.net/), log in via ssh and enable telnet port 23 by executing "/sbin/service telnet start" as root, or via the sudo command "sudo /sbin/service telnet start". Then use the following code on the master to telnet to it. Send osascript (AppleScript) commands to control the box and enjoy.
    DATA_EVENT[dvIPAppleServer]
    {
      ONLINE:
      { 
        nIPAppleServerConnEstablished = TRUE
      }
      OFFLINE:
      {
        nIPAppleServerConnEstablished = FALSE
        nIPAppleServerLogedIn = FALSE
      }
      STRING:
      {
          // Command: Do Terminal Type
          // Command: Do Terminal Speed
          // Command: Do X Display Location
          // Command: Do New Environment Option
          // Command: Do Environment Option
          IF (FIND_STRING(DATA.TEXT, "$FF,$FD,$18,$FF,$FD,$20,$FF,$FD,$23,$FF,$FD,$27,$FF,$FD,$24",1)) 
          {
            // Command: Will Terminal Type
    	// Command: Will Negotiate about Window Size
    	SEND_STRING dvIPAppleServer, "$FF,$FB,$18,$FF,$FB,$1F"  
          
            // Command: Do Negotiate about Window Size
            WAIT_UNTIL (FIND_STRING(DATA.TEXT, "$FF,$FD,$1F",1)) 
            {
              // Command: Won't Terminal Speed
    	  // Command: Won't X Display Location
    	  // Command: Will New Environment Option 
    	  // Command: Won't Environment Option
    	  SEND_STRING dvIPAppleServer, "$FF,$FC,$20,$FF,$FC,$23,$FF,$FB,$27,$FF,$FC,$24"   
    	  // Suboption Begin: Negotiate About Window Size
    	  // Command: Suboption End
    	  SEND_STRING dvIPAppleServer, "$FF,$FA,$1F,$00,$67,$00,$1C,$FF,$F0" 
            }      
            // Suboption Begin: New Environment Option
            WAIT_UNTIL (FIND_STRING(DATA.TEXT, "$FF,$FA,$27,$01,$FF,$F0,$FF,$FA,$18,$01,$FF,$F0",1))
            {
              // Suboption Begin: New Environment Option
    	  SEND_STRING dvIPAppleServer, "$FF,$FA,$27,$00,$FF,$F0"     
    	  // Suboption Begin: Terminal Type
    	  SEND_STRING dvIPAppleServer, "$FF,$FA,$18,$00,$41,$4E,$53,$49,$FF,$F0" 
            }
            // Command: Will Supress Go Ahead
            // Command: Do Echo
    	// Command: Do Linemode
            // Command: Will Status
            // Command: Do Remote Flow Control
            WAIT_UNTIL (FIND_STRING(DATA.TEXT, "$FF,$FB,$03,$FF,$FD,$01,$FF,$FD,$22,$FF,$FB,$05,$FF,$FD,$21",1)) 
            {
              // Command: Do Supress Go Ahead
    	  SEND_STRING dvIPAppleServer, "$FF,$FD,$03" 
    	  // Command: Will Echo
    	  // Command: Won't Linemode
    	  // Command: Don't Status
    	  // Command: Won't Remote Flow Control
    	  SEND_STRING dvIPAppleServer, "$FF,$FB,$01,$FF,$FC,$22,$FF,$FE,$05,$FF,$FC,$21" 
            }
            // Command: Don't Echo
            // Command: Will Echo
            // Command: Do Timing Mark
            WAIT_UNTIL (FIND_STRING(DATA.TEXT, "$FF,$FE,$01,$FF,$FB,$01,$FF,$FD,$06",1)) 
            {
              // Command: Won't Echo
    	  SEND_STRING dvIPAppleServer, "$FF,$FC,$01" 
    	  // Command: Do Echo
    	  // Command: Won't Timing Mark
    	  SEND_STRING dvIPAppleServer, "$FF,$FD,$01,$FF,$FC,$06"
            }      
            WAIT_UNTIL (FIND_STRING(DATA.TEXT, 'login:',1))
            {
              SEND_STRING dvIPAppleServer, "sUsername,$0D"  
            }
            WAIT_UNTIL (FIND_STRING(DATA.TEXT,'Password:',1))  
            {
              SEND_STRING dvIPAppleServer, "sPassword,$0D"
            }
            WAIT_UNTIL (FIND_STRING(DATA.TEXT,'appleserver:',1))  // got a prompt - change this to match your prompt
            {
              nIPAppleServerLogedIn = TRUE
            }
          }  
      }   
    }        
    
  • mstocummstocum Posts: 120
    Bob, does BackRow have an AppleScript dictionary? I wasn't able to find one.
  • bob wrote:
    Send osascript (AppleScript) commands to control the box and enjoy.

    Being that I'm not at all familiar with AppleScript, what can I do with this? Can I tell the AppleTV to play a specific playlist or a specific song, or go to a specific part of the menu structure?
  • mstocummstocum Posts: 120
    TonyAngelo wrote:
    Being that I'm not at all familiar with AppleScript, what can I do with this? Can I tell the AppleTV to play a specific playlist or a specific song, or go to a specific part of the menu structure?

    If BackRow (the UI app on the AppleTV) has an AppleScript dictionary, you should be able to do just about anything you want with it. The problem is as far as I can tell, BackRow has no AppleScript support. For the moment, I think the best you can do is emulate the Apple Remote through the touch panel, which isn't all that useful as it only has 6 buttons.
Sign In or Register to comment.