Stap 2: Controleren als er sprake is van een recente vermelding
De getmention.php zal het duren voor de meest recente vermelding van Twitter, en stuur het naar onze JavaScript-bestand. De Twitter API kunt 15 opiniepeilingen elke 15 minuten, dus we willen poll elke 65 seconden of zo. Om dit te doen, kunnen we een functie die zal worden opgeroepen elke 65000 zijn milliseconden (65 seconden).
window.setInterval(function(){ function reqListener () { console.log(this.responseText); } var oReq = new XMLHttpRequest(); //New request object oReq.onload = function() { var time = Date.now() if(((time/1000) - 65) < this.responseText) { context.drawImage(video, 0, 0, 640, 480); canvas = document.getElementById("canvas"); var img = canvas.toDataURL("image/png"); var date = Date(); $.ajax({ type: "POST", url: "pictweet.php", data: {img : img, date : date} }); } else { console.log("No Mentions :("); } console.log(this.responseText); console.log(time/1000 - 65); }; oReq.open("get", "getmention.php", true); oReq.send(); }, 65000);
Dit is onderdeel van onze JavaScript-bestand, dus we willen het in het webcam.php -bestand toevoegen. Wij willen deze code plaats na het codesegment die initialiseert de gebeurtenislisteners, en voor de "snap" knop. (Dit moet rond coderegel 40 of zo).
Laten we controleren wat is met de code gaande er:
- Eerst maken we de maken een functie die is aangeroepen om 65 seconden (dit is de eerste en laatste regels van de code-blok).
- Vervolgens maken we een XMLHttpRequest()-variabele, genaamd oReq, waarmee het getmention.php -bestand wordt geopend, en krijgt informatie maakt gebruik van "get". Het getmention.php -bestand geeft als resultaat de meest recente tijd van de vermelding, dus als er in de laatste 65 seconden, we willen tweet die we heb gezegd.
- We maken een "onload"-functie die de laatste keer onze rekening heeft gezegd, en vervolgens controleren als het was minder dan 65 seconden geleden zal controleren. Er is een verschil tussen de tijd verzonden door getmention.php , en de tijd die is gemaakt door het JavaScript-bestand. (We doen wat kleine wiskunde te laten gelijkwaardig.)