Sign in to follow this  

Determine if an XBOX 360 is active on a Windows Network

This topic is 3047 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I'm writing an application for a friend which closes his Bit Torrent application when he's playing his XBOX The only problem is, this application works with every other device EXCEPT his XBOX. Currently the application is able to ping a device by IP and if that device responds, it knows it's necessary to shutdown bit torrent. The problem here is that the XBOX 360 WILL NOT reply to the ping requests, I've searched everywhere and everyone says the XBOX 360 does not reply to ping. What's my alternative? I've been looking for a while at different protocols, DHCP, DNS, ARP, then things come up such as stale IP addresses which are just stored in cache but not actually connected. Could someone shed some light for me? Free V Hugs for you.

Share this post


Link to post
Share on other sites
Have you tried simply connecting to it? My theory is that if it's off, the connection will timeout, and if it's on, it will refuse the connection.

Share this post


Link to post
Share on other sites
Wow, thanks for the heads up guys,

The problem is that I myself don't own an XBOX 360, so I don't know these minor crucial details :P

But this does help a lot!

Thank you very much!

Share this post


Link to post
Share on other sites
The 360 is a UPnP device. I don't know if it is constantly looking for UPnP devices, but it should send out requests on UDP port 1900 over multicast (not broadcast) via the multicast group 239.255.255.250.

The requests are plain text and look kinda like HTTP requests (technically speaking they are HTTPMU, or HTTP over Multicast UDP).
According to the UPnP spec they will look sorta like this:

M-SEARCH * HTTP/1.1
HOST: 239.255.255.250:1900
MAN: "ssdp:discover"
MX: seconds to delay response
ST: search target
USER-AGENT: OS/version UPnP/1.1 product/version

The 360 (if I remember correctly) should identify itself via the USER-AGENT as a XBox. I used to have packet captures, bute I seem to have misplaced them. If you grab a copy of Wireshark (multi platform) you should be able to see them coming from the xbox, and what triggers them. Telling the 360 to look for shared media should do it. I would also expect that when it attempts to connect to xbox live it should send out a request to set up port forwarding with the router.

Hope this is helpful, good luck!

Share this post


Link to post
Share on other sites
^ I was going to suggest that.
Nero detects my 360 within a couple seconds of it turning on via UPnP.
It shows up as Xbox 360.

I hope you don't mind sharing with me the source code when you are done =). Its a very good idea and worth expanding to work with my PS3 as well

Share this post


Link to post
Share on other sites
Planned originally for C++, decided to do this application in C#, if you don't mind the random source.

----------------

Edit 1: I've come up to an unexpected problem, I can't bind port 1900 because it's already in use by Windows SSDP?

----------------

Edit 2: Alright then, if "1900 UDP 239.255.255.250" is officially Microsoft's SSDP port, then I should look for functions to do with SSDP.

http://msdn.microsoft.com/en-us/library/bb870632%28VS.85%29.aspx

[Edited by - treidin19 on August 15, 2009 8:19:45 AM]

Share this post


Link to post
Share on other sites

This topic is 3047 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this