-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Demo #11
Comments
@gyachdav I'm a little bit confused about the general setup / deployment of the project. Since we are just generating data (no GUI), what kind of demo would you like to see? |
@sockeqwe the output of the apps you build is indeed being integrated into project A. However it would be beneficial for us to be able to run even a command line version of your app and see what that output is. Furthermore it would be interesting to see what params and calls we need to make to get to this output. We also want to test your apps under different use cases. No public API is needed but some form of interaction with your app is required. Keep in mind that you're suppose to create an NPM packages for each app. Project E is suppose to assist you with that. The NPM pack should allow us to deploy your app and the docs should give us a clear idea on how to run your app and what output to expect. Hope this clarifies it a bit. Feel free to ping me some more in case I did not answer your questions or if you have additional questions or concerns. |
Hi @gyachdav. We currently have an index.html file which I use to debug the websockets output generated by e.g. the pokemob detection module. We could add some more functionality there (live sentiment tweets logging and showing the output of our sentiment trend module) and have this available as a standalone demo. All you would need to do to run is run Would a setup like that be okay to test our applications stand-alone? Regarding the other points:
|
@phdowling yup hat setup will be perfect.
Keep in mind that project E is suppose to help you pack your apps. That's why they have 8 people there. summoning @PokemonGoers/catch-em-all . Also keep in mind that project E is not going to import your apps. You will be running your listeners as a node process. the output from that process is stored on the project A database. @sacdallago can help you set up the process on the dev server. You will need to consult with @PokemonGoers/pokedata on how to store your output in their db.
I don't see project E require project A, instead they will be making API calls to fetch data for the wiki portion of their webapp. Most of the API calls to project A's data will however be initiated by the map groups who will visualize sightings, predictions and pokemobs indications.
The only case in which I see your apps being directly integrated into E is the sentiment visualization component. This one will need to be provided as an exported module that can be required by E. Let me know if this makes sense. |
@gyachdav so we provide a npm library to project A (so project A is requiring our code) so that they can include our code? concrete example: // This function runs sentiment analysis periodically.
// this function is provided by our npm library, but will invoked by Project A in a own node process.
function runSentimentAnalysis(twitterCredentials, databaseConfig) {
// 1. Query Twitter REST API for tweets
// 2. Sentiment Analysis on each tweet
// 3. Save sentiments into database
...
} Do we agree on that? if yes, then, we also have to provide a REST api for the maps team where I would take the same road. function getSentimentFor(pokemonId, lat, lng){
// Execute some Database query and return sentiment data over time
...
} Then Project A will add a route to their express router: router.get('/sentiment', function(req, resp){
// Execute our function
getSentimentFor(req.query.pokemonId, req.query.lat, req.query.lng);
...
} Have I understood that correctly? If not, can you please give me a concrete example of what the architecture / communication should look like in your opinion? I would also do the same for mobdetection etc. just provide a exportet npm module so that Project A can require our code. |
Yup that sounds about right although you may elect to just run the node process separately from A. The rest of the architecture makes sense. |
@gyachdav Sounds good, I think we will probably go for the separate node process in the end - two issues remain with this though:
Cheers |
At project E we have a little node server that intercepts requests to In terms of deployment I see two different approaches.
|
@phdowling @johartl As far as mongodb: it's always best to separate logic from data, so yes: currently using a cloud mongodb instance, but I'm thinking of migrating to something in RostLab because of space (we only get 500mb for free). |
@gyachdav @sacdallago Setup / Running standalone demoEnsure that mongodb server is running locally on your machine and that database with name Simply clone the repo (develop branch) and run CONSUMER_KEY=<your_consumer_key> CONSUMER_SECRET=<your_consumer_secret> ACCESS_TOKEN=<your_access_token> ACCESS_TOKEN_SECRET=<your_access_token_secret> npm start A demo webapp is also provided: once the server is running, open Keep in mind that for the historic tweet sentiment analysis the server will query for tweets periodically to generate some data. So you may want to run the server for some minutes so that some data has been mined that can be displayed. Feedback is very welcome! |
Any news with regards to integrating the mob detection websocket into project A's backend? |
Our code is stable and production ready. we can integrate it with project A ... We only have to check what's the best way to integrate it. maybe we will provide our code through a npm package to project A. I will take a look at npm packaging ... |
@sockeqwe yes, I'd say the NPM solution is the cleanest. |
Hello there #PokemonGo,
It is time to see a live demo of your apps. You can either:
or
Either way, we need to see that status of your project.
The text was updated successfully, but these errors were encountered: