{"action":"opened","issue":{"url":"https://api.github.com/repos/fossasia/open-event/issues/6","labels_url":"https://api.github.com/repos/fossasia/open-event/issues/6/labels{/name}","comments_url":"https://api.github.com/repos/fossasia/open-event/issues/6/comments","events_url":"https://api.github.com/repos/fossasia/open-event/issues/6/events","html_url":"https://github.com/fossasia/open-event/issues/6","id":73956645,"number":6,"title":"Twitterwall integration","user":{"login":"Orbiter","id":238730,"avatar_url":"https://avatars.githubusercontent.com/u/238730?v=3","gravatar_id":"","url":"https://api.github.com/users/Orbiter","html_url":"https://github.com/Orbiter","followers_url":"https://api.github.com/users/Orbiter/followers","following_url":"https://api.github.com/users/Orbiter/following{/other_user}","gists_url":"https://api.github.com/users/Orbiter/gists{/gist_id}","starred_url":"https://api.github.com/users/Orbiter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Orbiter/subscriptions","organizations_url":"https://api.github.com/users/Orbiter/orgs","repos_url":"https://api.github.com/users/Orbiter/repos","events_url":"https://api.github.com/users/Orbiter/events{/privacy}","received_events_url":"https://api.github.com/users/Orbiter/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-05-07T11:49:02Z","updated_at":"2015-05-07T11:49:02Z","closed_at":null,"body":"Mario suggested to integrate a Twitterwall, which presents latest tweets to the event. We discussed various places where the wall may appear (i.e. at a welcome screen, below a single event view or as spcial 'event wall' view). I would like to point out, how the tweet timeline data can be retrieved.\r\n\r\n- There will be library, provided by the loklak project which can be integrated as jar file\r\n- The library provides very simple methods to retrieve the timeline, like\r\n\r\n```\r\nWallFactory factory = new WallFactory(String query);\r\n```\r\n.. initializes the library with a query, which represents the search term that can be used to retrieve all tweets, like '#fossasia'.\r\n\r\n```\r\nTimeline timeline = factory.getTimeline()\r\n```\r\n.. retrieves the actual view on the tweets, where ```timeline instanceof Collection<Message>``` is a sequence of messages. Inside each message you will find all tweet credentials, inclusive the user details. If this method is used, you must track yourself which messages have been arrived lately.\r\n\r\n```\r\nMessage message = factory.getById(String message_id)\r\n```\r\nyou can use the factory as database and retrieve messages by their id. This is especially useful if you track arrival of new messages by id, but don't want to store the complete message referenced by them\r\n\r\n```\r\nMessage message = factory.take();\r\nMessage message = factory.take(long millis);\r\n```\r\nThe take/0 method would block until the next message arrives (== was tweeted) and then returns the message. Using the take/1 method, the blocking is terminated after at most millis millisecods. If more than one message arrived, then you must call take several times\r\n\r\n```\r\nint count = factory.available();\r\n```\r\nreturns the number of messages that can be retrieved with take/0 without blocking\r\n\r\nAbout images: you probably want to display user images or embedded pictures in the wall. The loklak library will provide direct download links for them inside the messages, but handling of downloads and caching of downloaded images must be done by yourself.\r\n\r\nThese methods should be sufficient to provide the wall data. If you need other access methods, please describe them. The actual library is not available right now, but this is the plan for it.\r\n"}}