An IP address is just an unsigned 32-bit number.
Surely, even on WC8, it should be possible to have a variable (name) that references the current device IP address
Eg, on boot-up,
set var1 ipaddr # get my address
set var2 123 # my unique ID
email em1 # report it
The way I do it on my own devices, is I have them "wake up", set the time, and once they're alive they do a "webset" to call in to a server that they're online.
I typically store a unique ID for this device in one of the URAM variables.
The server can see the IP address of the request, and can now map the IP and device ID.
(This doesn't work so well when the device is behind a NAT device, and the server isn't, and other trickery needs to be done!)