예제 #1
0
 @Override
 public ChatMessage sendMessage(Message message) throws ConnectionException {
   checkLoaded();
   try {
     long ms = System.currentTimeMillis();
     JsonObject obj = new JsonObject();
     obj.add("content", message.write());
     obj.add("messagetype", "RichText");
     obj.add("contenttype", "text");
     obj.add("clientmessageid", String.valueOf(ms));
     ConnectionBuilder builder = new ConnectionBuilder();
     builder.setUrl(getClient().withCloud(SEND_MESSAGE_URL, getIdentity()));
     builder.setMethod("POST", true);
     builder.addHeader("RegistrationToken", getClient().getRegistrationToken());
     builder.addHeader("Content-Type", "application/json");
     builder.setData(obj.toString());
     HttpURLConnection con = builder.build();
     if (con.getResponseCode() == 201) {
       return ChatMessageImpl.createMessage(
           this, getUser(getClient().getUsername()), null, String.valueOf(ms), ms, message);
     } else {
       throw getClient().generateException(con);
     }
   } catch (IOException e) {
     throw new ConnectionException("While sending a message", e);
   }
 }