private int generateMessageImage( String messageSrc, List<String> keywords, String author, String fileName) throws Exception { long time = System.currentTimeMillis(); TwitterMessage message = new TwitterMessage(messageSrc, author, keywords); List<TwitterMessageToken> tokens = message.toTokens(); int width = PPMFactory.createAndSave(fileName, tokens, toRGB(configuration.getBackgroundColor())); LOG.info("Prepared ppm for {} in {} ms", fileName, (System.currentTimeMillis() - time)); return width; }
@Override public void onDirectMessage(DirectMessage directMessage) { Debug.logln( "TwitterServer.onDirectMessage sender: " + directMessage.getSenderScreenName() + " recipient: " + directMessage.getRecipientScreenName() + " text: " + directMessage.getText()); if (directMessage.getSenderId() == this.ownerID) { return; // outgoing message } // incoming message String text = directMessage.getText(); String sender = directMessage.getSenderScreenName(); String recipient = directMessage.getRecipientScreenName(); // Detect trackback Trackback trackback = null; try { trackback = TrackbackStore.getInstance().loadByIncomingText(Channel.TWITTER, sender, text); } catch (Exception e) { LogEntryStore.log(e); } if (trackback == null) { // !$! Send back error message? return; } // Dispatch event TwitterMessage msg = new TwitterMessage(); msg.setDestination(recipient); msg.setSender(sender); msg.write(TrackbackStore.getInstance().cleanIncomingText(text)); this.listener.onTwitterReceived(msg, trackback.getExternalID()); }