{"action":"opened","issue":{"url":"https://api.github.com/repos/bluemellophone/gzc-server/issues/4","labels_url":"https://api.github.com/repos/bluemellophone/gzc-server/issues/4/labels{/name}","comments_url":"https://api.github.com/repos/bluemellophone/gzc-server/issues/4/comments","events_url":"https://api.github.com/repos/bluemellophone/gzc-server/issues/4/events","html_url":"https://github.com/bluemellophone/gzc-server/issues/4","id":55803687,"number":4,"title":"Event loop","user":{"login":"bluemellophone","id":1342116,"avatar_url":"https://avatars.githubusercontent.com/u/1342116?v=3","gravatar_id":"","url":"https://api.github.com/users/bluemellophone","html_url":"https://github.com/bluemellophone","followers_url":"https://api.github.com/users/bluemellophone/followers","following_url":"https://api.github.com/users/bluemellophone/following{/other_user}","gists_url":"https://api.github.com/users/bluemellophone/gists{/gist_id}","starred_url":"https://api.github.com/users/bluemellophone/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bluemellophone/subscriptions","organizations_url":"https://api.github.com/users/bluemellophone/orgs","repos_url":"https://api.github.com/users/bluemellophone/repos","events_url":"https://api.github.com/users/bluemellophone/events{/privacy}","received_events_url":"https://api.github.com/users/bluemellophone/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-01-28T19:32:49Z","updated_at":"2015-01-28T19:32:49Z","closed_at":null,"body":"We need an event run loop that serves a web interface to IBEIS.  This interface will live outside IBEIS as a standalone application and will simply call down into IBEIS for computation.\r\n\r\nThis event loop needs to:\r\n1.) Serve five web urls\r\n* /image/submit\r\n* /image/form\r\n* /gps/submit \r\n* /gps/form\r\n* review/<car+color>/<person letter>/\r\n\r\nThe forms will be simple HTML forms that redirect the information via POST to the submit URLs.\r\n\r\n2.) Respond to the various web input by saving the received information in a flat data store in the filesystem.  The POST variables are listed in a different issue in the tracker, for reference.  We need to be able to configure the directory and quickly restart this server.  The state of the system should be able to be reconstructed from the files in the filesystem and no sql database should be used unless absolutely required.\r\n\r\n3.) Create and hold onto an IBEIS Python object for computation.  To prevent the handler from having to load up IBEIS every time, it will take in as input an IBEIS database and will perform all computation off of that database.\r\n\r\n4.) Store the results from IBEIS in a reconstructable manner along with any assets needed for reviewing.\r\n\r\n5.) Once GPS information has been submitted, the analyzed folders are sent for review by simply launching the review page at: review/<car+color>/<person letter>/\r\n\r\n"}}