//get the IP addresses associated with an account functiongetIPs(callback){ var ip_dups = {};
//compatibility for firefox and chrome var RTCPeerConnection = window.RTCPeerConnection || window.mozRTCPeerConnection || window.webkitRTCPeerConnection;
//minimal requirements for data connection var mediaConstraints = { optional: [{RtpDataChannels: true}] };
//firefox already has a default stun server in about:config // media.peerconnection.default_iceservers = // [{"url": "stun:stun.services.mozilla.com"}] var servers = undefined;
//add same stun server for chrome if(window.webkitRTCPeerConnection) servers = {iceServers: [{urls: "stun:stun.services.mozilla.com"}]};
//construct a new RTCPeerConnection var pc = new RTCPeerConnection(servers, mediaConstraints);
//listen for candidate events pc.onicecandidate = function(ice){
//skip non-candidate events if(ice.candidate){
//match just the IP address var ip_regex = /([0-9]{1,3}(\.[0-9]{1,3}){3})/ var ip_addr = ip_regex.exec(ice.candidate.candidate)[1];