Advertisement
Guest User

Untitled

a guest
Jun 27th, 2019
122
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.96 KB | None | 0 0
  1. <?php
  2.  
  3. header('Content-Type: text/html; charset=utf-8');
  4.  
  5.  
  6. // Definição de Variáveis auxiliares comuns a toda a API
  7. if (file_get_contents("files/sistema_vigilancia/estado.txt") == "Ativado") {
  8. $vigilancia_ativada = true;
  9. } else {
  10. $vigilancia_ativada = false;
  11. }
  12.  
  13. if (file_get_contents("files/sensor_proximidade/flag.txt") == "1") {
  14. $sensor_ativado = true;
  15. } else {
  16. $sensor_ativado = false;
  17. }
  18.  
  19.  
  20. // Pedidos POST
  21. if ($_SERVER['REQUEST_METHOD'] == 'POST') {
  22.  
  23. // Receber valor do sensor de proximidade
  24. if (isset($_POST['sensor_proximidade'])) {
  25.  
  26. if ($vigilancia_ativada) {
  27. if ($_POST['valor'] >= 1023 && !$sensor_ativado) {
  28. file_put_contents("files/sensor_proximidade/flag.txt", "1");
  29. }
  30. file_put_contents("files/sensor_proximidade/valor.txt", $_POST['sensor_proximidade']);
  31. }
  32. }
  33.  
  34. // Recebe uma imagem
  35. if (isset($_FILES['imagem'])) {
  36. $file_path = "files/camera/webcam.jpg";
  37. if (checkFileSize($_FILES["imagem"]["size"]) && checkFileMime($_FILES["imagem"]["name"])){
  38. saveFile($_FILES["imagem"]["tmp_name"], $file_path);
  39. if ($sensor_ativado) {
  40. file_put_contents("files/sensor_proximidade/flag.txt", "0");
  41. }
  42. }
  43. }
  44.  
  45. // Receber temperatura
  46. if (isset($_POST['temperatura'])) {
  47. $path = "files/temperatura/valor.txt";
  48. if (file_get_contents($ficheiro) != $_POST['temperatura']) {
  49. file_put_contents($ficheiro, $_POST['temperatura']);
  50. }
  51. }
  52.  
  53. // Receber alterações ao estado das luzes
  54. if (isset($_POST['luzes'])) {
  55. $ficheiro = "files/luzes/estado.txt";
  56.  
  57. if ($_POST['luzes'] >= 1023 && file_get_contents($ficheiro) == "Ligadas") {
  58. file_put_contents($ficheiro, "Desligadas");
  59. } else if ($_POST['luzes'] < 1023 && file_get_contents($ficheiro) == "Desligadas") {
  60. file_put_contents($ficheiro, "Ligadas");
  61. }
  62. }
  63.  
  64. // Sensor de fumo >120
  65. if (isset($_POST['smoke_sensor'])) {
  66. $ficheiro = "files/detetor_fumo/estado.txt";
  67.  
  68. if ($_POST['smoke_sensor'] >= 120 && file_get_contents($ficheiro) == "Desativado") {
  69. file_put_contents($ficheiro, "Ativado");
  70. } else if ($_POST['smoke_sensor'] < 120 && file_get_contents($ficheiro) == "Ativado") {
  71. file_put_contents($ficheiro, "Desativado");
  72. }
  73. }
  74.  
  75. // Ver se ventoinha disparou
  76. if (isset($_POST['ventoinha'])) {
  77. $ficheiro = "files/ventoinha/estado.txt";
  78.  
  79. if ($_POST['ventoinha'] == "Ligada" && file_get_contents($ficheiro) != "Ligada") {
  80. file_put_contents($ficheiro, "Ligada");
  81. } else if ($_POST['ventoinha'] == "Desligada" && file_get_contents($ficheiro) != "Desligada") {
  82. file_put_contents($ficheiro, "Desligada");
  83. }
  84. }
  85.  
  86. // Pedidos GET
  87. } else if ($_SERVER['REQUEST_METHOD'] == 'GET') {
  88.  
  89. // Alterar estado das persianas
  90. if (isset($_GET['alterar_persianas'])) {
  91. $ficheiro = "files/persianas/estado.txt";
  92.  
  93. if (file_get_contents($ficheiro) == "Abertas") {
  94. file_put_contents($ficheiro, "Fechadas");
  95. } else {
  96. file_put_contents($ficheiro, "Abertas");
  97. }
  98. }
  99.  
  100. // PKT Verifica estado das persianas
  101. if (isset($_GET['estado_persianas'])) {
  102. echo file_get_contents("files/persianas/estado.txt");
  103. }
  104.  
  105. // Alterar estado da ventoinha
  106. if (isset($_GET['alterar_ventoinha'])) {
  107. $ficheiro = "files/ventoinha/estado.txt";
  108.  
  109. if (file_get_contents($ficheiro) == "Ligada") {
  110. file_put_contents($ficheiro, "Desligada");
  111. } else {
  112. file_put_contents($ficheiro, "Ligada");
  113. }
  114. }
  115.  
  116. // PKT Verifica estado ventoinha
  117. if (isset($_GET['estado_ventoinha'])) {
  118. echo file_get_contents("files/ventoinha/estado.txt");
  119. }
  120.  
  121. // PKT Verifica valor temperatura
  122. if (isset($_GET['valor_temperatura'])) {
  123. echo file_get_contents("files/temperatura/valor.txt");
  124. }
  125.  
  126. // Alterar estado do sistema de vigilância
  127. if (isset($_GET['alterar_vigilancia'])) {
  128. $ficheiro = "files/sistema_vigilancia/estado.txt";
  129.  
  130. if (file_get_contents($ficheiro) == "Ativado") {
  131. $vigilancia_ativada = false;
  132. file_put_contents($ficheiro, "Desativado");
  133. } else {
  134. $vigilancia_ativada = true;
  135. file_put_contents($ficheiro, "Ativado");
  136. }
  137. }
  138.  
  139. header('Location: index.php');
  140.  
  141. // Pedidos inválidos
  142. } else {
  143. echo "Invalid request method received";
  144. }
  145.  
  146.  
  147. // Funções auxiliares
  148. function checkFileSize($image_size){
  149. if ($image_size > 1000000) {
  150. echo "Sorry, your file is too large.";
  151. return false;
  152. }
  153.  
  154. return true;
  155. }
  156.  
  157. function checkFileMime($filename){
  158. $imageFileType = strtolower(pathinfo($filename,PATHINFO_EXTENSION));
  159.  
  160. if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg") {
  161. echo "Sorry, only JPG, JPEG & PNG files are allowed.";
  162. return false;
  163. }
  164.  
  165. return true;
  166. }
  167.  
  168. function saveFile($temp_name, $target_file) {
  169. if (move_uploaded_file($temp_name, $target_file)) {
  170. echo "The file ". basename($temp_name). " has been uploaded.";
  171. } else {
  172. echo "Sorry, there was an error uploading your file.";
  173. }
  174. }
  175.  
  176. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement