private void changeDisplayname(String roomId, String displayname) { Map<String, Object> params = new HashMap<>(); params.put("displayname", displayname); params.put("membership", "join"); session.getRoomsApiClient().sendStateEvent(roomId, "m.room.member", session.getMyUserId(), params, new SimpleApiCallback<Void>()); }
@Override public void onUploadComplete(final String uploadId, final String contentUri) { Room room = getRoomByPhonenumber(phoneNumber); JsonObject json = new JsonObject(); json.addProperty("body", fileName); json.addProperty("msgtype", type); json.addProperty("url", contentUri); JsonObject info = new JsonObject(); info.addProperty("mimetype", contentType); json.add("info", info); session.getRoomsApiClient().sendEventToRoom( String.valueOf(transaction), room.getRoomId(), "m.room.message", json, new SimpleApiCallback<Event>() ); transaction++; } }
mSession.getRoomsApiClient().initialSync(mRoomId, new ApiCallback<RoomResponse>() { @Override public void onSuccess(final RoomResponse roomResponse) {
public void SendMesageToRoom(Room room, String body, String type) { Message msg = new Message(); msg.body = body; msg.msgtype = type; session.getRoomsApiClient().sendMessage(String.valueOf(transaction), room.getRoomId(), msg, new SimpleApiCallback<Event>() { @Override public void onSuccess(Event event) { Log.i(TAG, "sendMessage success"); } @Override public void onMatrixError(MatrixError e) { Log.e(TAG, "sendMessage MatrixError" + e); } @Override public void onNetworkError(Exception e) { Log.e(TAG, "sendMessage Network error" + e); } @Override public void onUnexpectedError(Exception e) { Log.e(TAG, "sendMessage Unexpected error" + e); } }); transaction++; }
@Override public void onSuccess(String info) { super.onSuccess(info); session.getRoomsApiClient().updateTopic(info, phoneNumber, new SimpleApiCallback<Void>()); changeDisplayname(info, getContactName(phoneNumber, context)); Room room = store.getRoom(info); SendMesageToRoom(room, body, type); } });
mSession.getRoomsApiClient().initialSync(mRoom.getRoomId(), new ApiCallback<RoomResponse>() { @Override public void onSuccess(RoomResponse roomResponse) {