Oct 25, 2015 10:43 PM
(This post was last modified: Feb 8, 2016 08:19 AM by Key Punch.)
Syntax: OFFSET REQUIRED.. EX: php "tResolve.php 50
Features:
=============================
Twitch-->Skype-->IP
Twitch-->Skype-->IP-DB
Twitch-->Email2skype-->Skype2IP
Twitch-->Email2skype-->Skype2IP-DB
=============================
Output format..
=============================
IMPORTANT!!! Skype Resolver API key is required!
How it works..
=============================
1. Scrapes usernames of 100 live Twitch.tv Streams starting from the desired offset.
2. Suffixes each twitch username with combinations of popular email Domains/extensions.
Possible Combinations..
<username>@gmail.com
<username>@gmail.co.uk
<username>@live.com
<username>@live.co.uk
<username>@hotmail.com
<username>@hotmail.co.uk
<username>@aol.com
<username>@aol.co.uk
<username>@yahoo.com
<username>@yahoo.co.uk
3. Attempts "Email2Skype" on every potential email combination.
4. Attempts "Skype2IP" and "Skype2IP-DB" on successful "Email2Skype" combinations.
5. Attempts a "Skype2IP" and "Skype2IP-DB" on each Twitch.tv Display name.
6. Pulls each Streams language, current game, viewer count directly from the twitch API.
=============================
OFFSET VERSION
NO OFFSET VERSION
Features:
=============================
Twitch-->Skype-->IP
Twitch-->Skype-->IP-DB
Twitch-->Email2skype-->Skype2IP
Twitch-->Email2skype-->Skype2IP-DB
=============================
Output format..
=============================
Quote: Twitch: <USERNAME>
Email2Skype2IP: <IP-ADDRESS>
Email2Skype2IP-DB: <IP-ADDRESS>
Email2Skype: <SKYPE-USERNAMES>
Viewers: <LIVE-VIEWER-COUNT>
echo "Game: <CURRENT-GAME>
echo "Language: <STREAM-LANGUAGE>
echo "Skype2IP: <IP-ADDRESS>
Skype2IP-DB: <IP-ADDRESS>
===========================
===========================
IMPORTANT!!! Skype Resolver API key is required!
How it works..
=============================
1. Scrapes usernames of 100 live Twitch.tv Streams starting from the desired offset.
2. Suffixes each twitch username with combinations of popular email Domains/extensions.
Possible Combinations..
<username>@gmail.com
<username>@gmail.co.uk
<username>@live.com
<username>@live.co.uk
<username>@hotmail.com
<username>@hotmail.co.uk
<username>@aol.com
<username>@aol.co.uk
<username>@yahoo.com
<username>@yahoo.co.uk
3. Attempts "Email2Skype" on every potential email combination.
4. Attempts "Skype2IP" and "Skype2IP-DB" on successful "Email2Skype" combinations.
5. Attempts a "Skype2IP" and "Skype2IP-DB" on each Twitch.tv Display name.
6. Pulls each Streams language, current game, viewer count directly from the twitch API.
=============================
OFFSET VERSION
PHP Code
<?php
<?php
$userNotFound = "Username not Found!"; //error messages(
$emptyString = "Your string cannot be empty!";
$unable2Resolve = "Error: Unable to resolve this username!";
$noUsernameFound = "No usernames found.";
$email2 = array('@gmail', '@yahoo', '@live', '@hotmail', '@aol');
$emailext1 = array('.com', '.co.uk');
$offset = $argv[1];
$url = 'https://api.twitch.tv/kraken/streams?stream_type=live&limit=100&game=&offset=' . $offset;
if(empty($offset)) {
echo 'Please specify an offset.. EX: php "tResolve.php 50"';
exit();
}
$curl_options = array(
CURLOPT_URL => $url,
CURLOPT_HEADER => 0,
CURLOPT_RETURNTRANSFER => TRUE,
CURLOPT_TIMEOUT => 0,
CURLOPT_SSL_VERIFYPEER => 0,
CURLOPT_FOLLOWLOCATION => TRUE,
CURLOPT_ENCODING => 'gzip,deflate',
);
$ch = curl_init();
curl_setopt_array( $ch, $curl_options );
$output = curl_exec( $ch );
curl_close($ch);
$ar1 = json_decode($output,true);
foreach($ar1['streams'] as $mydata){
$game5 = $mydata['channel']['game'];
$name5 = $mydata['channel']['name'];
$viewers5 = $mydata['viewers'];
$language5 = $mydata['channel']['language'];
foreach($email2 as $myemail2) {
$myemail4 = $name5 . $myemail2;
foreach($emailext1 as $myemail3) {
$data1 = $myemail4 . $myemail3;
$ch1 = curl_init();
curl_setopt($ch1, CURLOPT_URL, 'http://webresolve.nl/api.php?key=<xxxx-xxxx-xxxx-xxxx>&action=email2skype&string=' . $data1);
curl_setopt($ch1, CURLOPT_RETURNTRANSFER, true);
$mh = curl_multi_init();
curl_multi_add_handle($mh,$ch1);
$running = null;
do {
curl_multi_exec($mh, $running);
} while ($running);
curl_multi_remove_handle($mh, $ch1);
curl_multi_close($mh);
$response_1 = curl_multi_getcontent($ch1);
$skype8 = str_replace($noUsernameFound,"",$response_1);
$skype1 = explode(',',$skype8);
foreach($skype1 as $skype2) {
$ch2 = curl_init();
$ch3 = curl_init();
if($skype2 == "") {
} else {
$skype3 = $skype2;
curl_setopt($ch2, CURLOPT_URL, 'http://webresolve.nl/api.php?key=<xxxx-xxxx-xxxx-xxxx>&action=resolve&string=' . $skype2);
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch3, CURLOPT_URL, 'http://webresolve.nl/api.php?key=<xxxx-xxxx-xxxx-xxxx>&action=resolvedb&string=' . $skype2);
curl_setopt($ch3, CURLOPT_RETURNTRANSFER, true);
$mh1 = curl_multi_init();
curl_multi_add_handle($mh1,$ch2);
curl_multi_add_handle($mh1,$ch3);
$running = null;
do {
curl_multi_exec($mh1, $running);
} while ($running);
curl_multi_remove_handle($mh1, $ch2);
curl_multi_remove_handle($mh1, $ch3);
curl_multi_close($mh1);
$response_2 = curl_multi_getcontent($ch2);
$response_3 = curl_multi_getcontent($ch3);
if($response_2 != $emptyString) {
if($response_2 != $unable2Resolve) {
echo "Email2Skype2IP: $response_2\n";
}
}
if($response_3 != $emptyString) {
if($response_3 != $userNotFound) {
echo "Email2Skype2IP-DB: $response_3\n";
}
}
echo "Email2Skype: $skype3\n";
}
}
}
}
$ch4 = curl_init();
$ch5 = curl_init();
curl_setopt($ch4, CURLOPT_URL, 'http://webresolve.nl/api.php?key=<xxxx-xxxx-xxxx-xxxx>&action=resolve&string=' . $name5);
curl_setopt($ch4, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch5, CURLOPT_URL, 'http://webresolve.nl/api.php?key=<xxxx-xxxx-xxxx-xxxx>&action=resolvedb&string=' . $name5);
curl_setopt($ch5, CURLOPT_RETURNTRANSFER, true);
$mh2 = curl_multi_init();
curl_multi_add_handle($mh2,$ch4);
curl_multi_add_handle($mh2,$ch5);
$running2 = null;
do {
curl_multi_exec($mh2, $running2);
} while ($running2);
curl_multi_remove_handle($mh2, $ch4);
curl_multi_remove_handle($mh2, $ch5);
curl_multi_close($mh2);
$response_4 = curl_multi_getcontent($ch4);
$response_5 = curl_multi_getcontent($ch5);
echo "Twitch: $name5\n";
echo "Viewers: $viewers5\n";
echo "Game: $game5\n";
echo "Language: $language5\n";
echo "Skype2IP: $response_4\n";
echo "Skype2IP-DB: $response_5\n";
echo "===========================\n";
echo "===========================\n";
}
?>NO OFFSET VERSION
PHP Code
<?php
$userNotFound = "Username not Found!"; //error messages(
$emptyString = "Your string cannot be empty!";
$unable2Resolve = "Error: Unable to resolve this username!";
$noUsernameFound = "No usernames found.";
$email2 = array('@gmail', '@yahoo', '@live', '@hotmail', '@aol');
$emailext1 = array('.com', '.co.uk');
$url = 'https://api.twitch.tv/kraken/streams?stream_type=live&limit=100&game=&offset=';
$curl_options = array(
CURLOPT_URL => $url,
CURLOPT_HEADER => 0,
CURLOPT_RETURNTRANSFER => TRUE,
CURLOPT_TIMEOUT => 0,
CURLOPT_SSL_VERIFYPEER => 0,
CURLOPT_FOLLOWLOCATION => TRUE,
CURLOPT_ENCODING => 'gzip,deflate',
);
$ch = curl_init();
curl_setopt_array( $ch, $curl_options );
$output = curl_exec( $ch );
curl_close($ch);
$ar1 = json_decode($output,true);
foreach($ar1['streams'] as $mydata){
$game5 = $mydata['channel']['game'];
$name5 = $mydata['channel']['name'];
$viewers5 = $mydata['viewers'];
$language5 = $mydata['channel']['language'];
foreach($email2 as $myemail2) {
$myemail4 = $name5 . $myemail2;
foreach($emailext1 as $myemail3) {
$data1 = $myemail4 . $myemail3;
$ch1 = curl_init();
curl_setopt($ch1, CURLOPT_URL, 'http://webresolve.nl/api.php?key=<xxxx-xxxx-xxxx-xxxx>&action=email2skype&string=' . $data1);
curl_setopt($ch1, CURLOPT_RETURNTRANSFER, true);
$mh = curl_multi_init();
curl_multi_add_handle($mh,$ch1);
$running = null;
do {
curl_multi_exec($mh, $running);
} while ($running);
curl_multi_remove_handle($mh, $ch1);
curl_multi_close($mh);
$response_1 = curl_multi_getcontent($ch1);
$skype8 = str_replace($noUsernameFound,"",$response_1);
$skype1 = explode(',',$skype8);
foreach($skype1 as $skype2) {
$ch2 = curl_init();
$ch3 = curl_init();
if($skype2 == "") {
} else {
$skype3 = $skype2;
curl_setopt($ch2, CURLOPT_URL, 'http://webresolve.nl/api.php?key=<xxxx-xxxx-xxxx-xxxx>&action=resolve&string=' . $skype2);
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch3, CURLOPT_URL, 'http://webresolve.nl/api.php?key=<xxxx-xxxx-xxxx-xxxx>&action=resolvedb&string=' . $skype2);
curl_setopt($ch3, CURLOPT_RETURNTRANSFER, true);
$mh1 = curl_multi_init();
curl_multi_add_handle($mh1,$ch2);
curl_multi_add_handle($mh1,$ch3);
$running = null;
do {
curl_multi_exec($mh1, $running);
} while ($running);
curl_multi_remove_handle($mh1, $ch2);
curl_multi_remove_handle($mh1, $ch3);
curl_multi_close($mh1);
$response_2 = curl_multi_getcontent($ch2);
$response_3 = curl_multi_getcontent($ch3);
if($response_2 != $emptyString) {
if($response_2 != $unable2Resolve) {
echo "Email2Skype2IP: $response_2\n";
}
}
if($response_3 != $emptyString) {
if($response_3 != $userNotFound) {
echo "Email2Skype2IP-DB: $response_3\n";
}
}
echo "Email2Skype: $skype3\n";
}
}
}
}
$ch4 = curl_init();
$ch5 = curl_init();
curl_setopt($ch4, CURLOPT_URL, 'http://webresolve.nl/api.php?key=<xxxx-xxxx-xxxx-xxxx>&action=resolve&string=' . $name5);
curl_setopt($ch4, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch5, CURLOPT_URL, 'http://webresolve.nl/api.php?key=<xxxx-xxxx-xxxx-xxxx>&action=resolvedb&string=' . $name5);
curl_setopt($ch5, CURLOPT_RETURNTRANSFER, true);
$mh2 = curl_multi_init();
curl_multi_add_handle($mh2,$ch4);
curl_multi_add_handle($mh2,$ch5);
$running2 = null;
do {
curl_multi_exec($mh2, $running2);
} while ($running2);
curl_multi_remove_handle($mh2, $ch4);
curl_multi_remove_handle($mh2, $ch5);
curl_multi_close($mh2);
$response_4 = curl_multi_getcontent($ch4);
$response_5 = curl_multi_getcontent($ch5);
echo "Twitch: $name5\n";
echo "Viewers: $viewers5\n";
echo "Game: $game5\n";
echo "Language: $language5\n";
echo "Skype2IP: $response_4\n";
echo "Skype2IP-DB: $response_5\n";
echo "===========================\n";
echo "===========================\n";
}
?>

