Używam twitter streaming api
& johnny-five
z innymi modułami http
, express
& socket.io
z arduino uno
moduły Nodejs nie działa zgodnie z oczekiwaniami w różnych urządzeniach
mój skrypt działa poprawnie w laptopie. Ale moja produkcja będzie na tablecie. Mam dwie tabletki i oba reagują odmiennie. Na hp omni
tabletki i otrzymuję następujący błąd
Mam także arduino-uno
podłączony przez port COM3
ale jej urządzenie pokazuje podłączone COM1
O ile wiem, ten błąd jest spowodowany tym, standard firmata
nie uploded w arduino. Przesłałem ten program i to działa dobrze w laptopie
Na Acer
Tablet Nie otrzymuję żadnego programu błędów rozpoczyna perfekcyjnie bez żadnych problemów, ale nie jestem otrzymujących tweety z twitter streaming api
mam skrzyżowane sprawdzane wiele razy działa perfekcyjnie na laptopie za każdym razem go uruchomić, ale daje dwa różne problemy z tablets
Oto kod używam
var Twitter = require('twitter');
var five = require("johnny-five");
var express = require('express')
, app = express()
, http = require('http')
, server = http.createServer(app)
, io = require('socket.io').listen(server);
server.listen(8080);
// routing
app.use(express.static(__dirname + '/http'));
app.use(function (req, res, next) {
res.setHeader('Access-Control-Allow-Origin', "http://"+req.headers.host+':80');
res.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE');
res.setHeader('Access-Control-Allow-Headers', 'X-Requested-With,content-type');
next();
}
);
var client = new Twitter({
consumer_key: 'abc',
consumer_secret: 'abc',
access_token_key: 'abc',
access_token_secret: 'abc'
});
var board = new five.Board();
board.on("ready", function() {
this.pinMode(5, five.Pin.OUTPUT);
this.pinMode(10, five.Pin.INPUT);
//Ask to visit url
console.log("Visit http://localhost:8080");
var randomHashtag = Math.floor((Math.random() * 10000) +1);
var count = 0;//Initialize counter
io.sockets.on('connection', function (socket) {
console.log('Ready to recieve tweets');//Prints Message when Socket.io is ready to recieve tweets
io.emit('stream',{number:randomHashtag});//Send random no when socket initzilize
client.stream('statuses/filter', {track: '#tweetMe'}, function(stream) {
stream.on('data', function(tweet) {
if(tweet.text.search(randomHashtag) > 0){
count++;//Increment pending tweets
randomHashtag = Math.floor((Math.random() * 10000) +1);
io.emit('stream',{number:randomHashtag});
board.digitalWrite(5,1);
console.log(tweet.text);
}
else{
console.log("Tweet Without random No");
}
});
stream.on('error', function(error) {
throw error;
});
});
});
});
W jaki sposób jest kodowany front-end? Czy słyszałeś o cordova i czy o luce telefonicznej? Korzystają z opakowania, aby aplikacje były kompatybilne/dostępne do pobrania w sklepie z aplikacjami dla systemów iOS i Android, mają również obsługę kodowania natywnego, aby w razie potrzeby dodać dodatkową funkcjonalność. – Ravenous
Nie wiem, jak to może mi pomóc? Oba końce są w javascript. –
Cordova buduje prostą natywną aplikację, ale wykorzystuje przeglądarki internetowe do wyświetlania aplikacji Webapp (javascript app). Możesz więc raz zakodować aplikację internetową i uzyskać zgodność krzyżową z systemami iOS i Android (np.tablety lub telefony). – Ravenous