You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
113 lines
3.8 KiB
113 lines
3.8 KiB
<?php |
|
include_once 'ADBService.php'; |
|
|
|
$service = new ADBService(ADBService::DEFAULT_HOST); |
|
|
|
?> |
|
|
|
<!doctype html> |
|
<html lang="de"> |
|
<head> |
|
<meta charset="UTF-8"> |
|
<meta name="viewport" |
|
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> |
|
<meta http-equiv="X-UA-Compatible" content="ie=edge"> |
|
<link rel="stylesheet" href="https://bootswatch.com/4/slate/bootstrap.min.css"> |
|
<link rel="stylesheet" href="remote.css"> |
|
<title>Android TV Web Remote</title> |
|
</head> |
|
<body> |
|
<div class="container"> |
|
<div class="row remote-control" id="remote"> |
|
<a class="col-4 btn btn-danger" onclick="sendKey('POWER')"><i class="fas fa-power-off"></i></a> |
|
<a class="col-4 btn btn-secondary" onclick="sendKey('DPAD_UP')"><i class="fas fa-caret-up fa-1c5x"></i></a> |
|
<a class="col-4"></a> |
|
|
|
<a class="col-4 btn btn-secondary" onclick="sendKey('DPAD_LEFT')"><i class="fas fa-caret-left fa-1c5x"></i></a> |
|
<a class="col-4 btn btn-secondary" onclick="sendKey('DPAD_CENTER')">OK</a> |
|
<a class="col-4 btn btn-secondary" onclick="sendKey('DPAD_RIGHT')"><i class="fas fa-caret-right fa-1c5x"></i></a> |
|
|
|
<a class="col-4"></a> |
|
<a class="col-4 btn btn-secondary" onclick="sendKey('DPAD_DOWN')"><i class="fas fa-caret-down fa-1c5x"></i></a> |
|
<a class="col-4"></a> |
|
|
|
<hr class="col-md-12"/> |
|
|
|
<a class="col-4 btn btn-secondary" onclick="sendKey('BACK')"><i class="fas fa-long-arrow-alt-left"></i></a> |
|
<a class="col-4 btn btn-secondary" onclick="sendKey('HOME')"><i class="fas fa-home"></i></a> |
|
<a class="col-4 btn btn-secondary" onclick="sendKey('VOLUME_UP')"><i class="fas fa-volume-up"></i></a> |
|
|
|
<a class="col-4"></a> |
|
<a class="col-4"></a> |
|
<a class="col-4 btn btn-secondary" onclick="sendKey('VOLUME_DOWN')"><i class="fas fa-volume-down"></i></a> |
|
|
|
<a class="col-4"></a> |
|
<a class="col-4"></a> |
|
<a class="col-4"></a> |
|
|
|
<div class="alert alert-info connected-info"> |
|
<?= str_replace('already ', '', $service->connect()) ?> |
|
</div> |
|
</div> |
|
</div> |
|
|
|
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> |
|
<script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script> |
|
<script src="https://kit.fontawesome.com/b54a4cceff.js" crossorigin="anonymous"></script> |
|
<script> |
|
function sendKey(key) { |
|
axios.post('execute.php', { |
|
keyCode: key |
|
}).then((response) => { |
|
// console.log(response); |
|
}).catch((error) => { |
|
console.log(error); |
|
}) |
|
} |
|
|
|
// Check for Keypress |
|
jQuery(document).keydown(function (e) { |
|
switch (e.keyCode) { |
|
// SPACE / ENTER |
|
case 13: |
|
case 32: |
|
sendKey('DPAD_CENTER'); |
|
break; |
|
// W |
|
case 87: |
|
sendKey('DPAD_UP'); |
|
break; |
|
// D |
|
case 68: |
|
sendKey('DPAD_RIGHT'); |
|
break; |
|
// S |
|
case 83: |
|
sendKey('DPAD_DOWN'); |
|
break; |
|
// A |
|
case 65: |
|
sendKey('DPAD_LEFT'); |
|
break; |
|
// UP |
|
case 38: |
|
sendKey('VOLUME_UP'); |
|
break; |
|
// DOWN |
|
case 40: |
|
sendKey('VOLUME_DOWN'); |
|
break; |
|
// H |
|
case 72: |
|
sendKey('HOME'); |
|
break; |
|
// B |
|
case 72: |
|
sendKey('BACK'); |
|
break; |
|
} |
|
} |
|
); |
|
</script> |
|
</body> |
|
</html>
|