diff --git a/app/lib/realm.js b/app/lib/realm.js
index 0a71d3e76224783bca3be2b89613f88d109c793f..75a21df17a4119298cd1d82d3b108671024e8048 100644
--- a/app/lib/realm.js
+++ b/app/lib/realm.js
@@ -22,6 +22,17 @@ const settingsSchema = {
 	}
 };
 
+const roomsSchema = {
+	name: 'rooms',
+	primaryKey: '_id',
+	properties: {
+		_id: 'string',
+		_server: 'servers',
+		t: 'string',
+		_updatedAt: { type: 'date', optional: true }
+	}
+};
+
 const subscriptionSchema = {
 	name: 'subscriptions',
 	primaryKey: '_id',
@@ -71,8 +82,6 @@ const attachment = {
 		title_link_download: { type: 'bool', optional: true },
 		type: { type: 'string', optional: true }
 	}
-
-
 };
 
 const messagesSchema = {
@@ -100,7 +109,7 @@ const messagesSchema = {
 // Realm.clearTestState();
 // AsyncStorage.clear();
 const realm = new Realm({
-	schema: [settingsSchema, serversSchema, subscriptionSchema, messagesSchema, usersSchema, attachment]
+	schema: [settingsSchema, serversSchema, subscriptionSchema, messagesSchema, usersSchema, roomsSchema, attachment]
 });
 export default realm;
 
diff --git a/app/lib/rocketchat.js b/app/lib/rocketchat.js
index b9757d09a07aa22754faee7ef17da2144c647350..139d94db8d67d9ded132511d0d52f6da5023d85e 100644
--- a/app/lib/rocketchat.js
+++ b/app/lib/rocketchat.js
@@ -186,6 +186,26 @@ const RocketChat = {
 		return this.login(params, callback);
 	},
 
+	// loadRooms(cb) {
+	// 	console.warn('a');
+	// 	Meteor.call('rooms/get', (err, data) => {
+	// 		if (err) {
+	// 			console.error(err);
+	// 		}
+	// 		console.warn(`rooms ${ data.length }`);
+	// 		if (data.length) {
+	// 			realm.write(() => {
+	// 				data.forEach((room) => {
+	// 					room._server = { id: reduxStore.getState().server.server };
+	// 					realm.create('rooms', room, true);
+	// 				});
+	// 			});
+	// 		}
+
+	// 		return cb && cb();
+	// 	});
+	// },
+
 	loadSubscriptions(cb) {
 		Meteor.call('subscriptions/get', (err, data) => {
 			if (err) {
@@ -389,12 +409,9 @@ const RocketChat = {
 	},
 	getRooms() {
 		return Promise.all([call('subscriptions/get'), call('rooms/get')]).then(([subscriptions, rooms]) => {
-			subscriptions = subscriptions.sort((s1, s2) => (s1.rid > s2.rid ? 1 : -1));
-			rooms = rooms.sort((s1, s2) => (s1._id > s2._id ? 1 : -1));
-
 			const { server, login } = reduxStore.getState();
-			const data = subscriptions.map((subscription, index) => {
-				subscription._updatedAt = rooms[index]._updatedAt;
+			const data = subscriptions.map((subscription) => {
+				subscription._updatedAt = (rooms.find(room => room._id === subscription.rid) || {})._updatedAt;
 				subscription._server = { id: server.server };
 				return subscription;
 			});
diff --git a/app/presentation/RoomItem.js b/app/presentation/RoomItem.js
index de65d424e26119734a8ddf044abd113a9230e637..3452f81fb3c5568c3911404e5f069d7e2bbc400e 100644
--- a/app/presentation/RoomItem.js
+++ b/app/presentation/RoomItem.js
@@ -1,4 +1,5 @@
 import React from 'react';
+import moment from 'moment';
 import MaterialCommunityIcons from 'react-native-vector-icons/MaterialCommunityIcons';
 import PropTypes from 'prop-types';
 import { View, Text, StyleSheet, TouchableOpacity } from 'react-native';
@@ -25,13 +26,24 @@ const styles = StyleSheet.create({
 		paddingLeft: 5,
 		paddingRight: 5
 	},
-	roomName: {
+	roomNameView: {
 		flex: 1,
-		fontSize: 16,
-		color: '#444',
 		marginLeft: 16,
 		marginRight: 4
 	},
+	roomName: {
+		paddingTop: 10,
+		flex: 1,
+		fontSize: 16,
+		height: 16,
+		color: '#444'
+	},
+	update: {
+		flex: 1,
+		fontSize: 10,
+		height: 10,
+		color: '#888'
+	},
 	iconContainer: {
 		height: 40,
 		width: 40,
@@ -60,9 +72,11 @@ export default class RoomItem extends React.PureComponent {
 	static propTypes = {
 		type: PropTypes.string.isRequired,
 		name: PropTypes.string.isRequired,
+		_updatedAt: PropTypes.date,
 		unread: PropTypes.number,
 		baseUrl: PropTypes.string,
-		onPress: PropTypes.func
+		onPress: PropTypes.func,
+		Message_DateFormat: PropTypes.string.isRequired
 	}
 
 	get icon() {
@@ -111,11 +125,14 @@ export default class RoomItem extends React.PureComponent {
 	}
 
 	render() {
-		const { unread, name } = this.props;
+		const { unread, name, _updatedAt } = this.props;
 		return (
 			<TouchableOpacity onPress={this.props.onPress} style={styles.container}>
 				{this.icon}
-				<Text style={styles.roomName} ellipsizeMode='tail' numberOfLines={1}>{ name }</Text>
+				<View style={styles.roomNameView}>
+					<Text style={styles.roomName} ellipsizeMode='tail' numberOfLines={1}>{ name }</Text>
+					<Text style={styles.update} ellipsizeMode='tail' numberOfLines={1}>{ moment(_updatedAt).format(this.props.Message_DateFormat) }</Text>
+				</View>
 				{this.renderNumber(unread)}
 			</TouchableOpacity>
 		);
diff --git a/app/views/RoomsListView.js b/app/views/RoomsListView.js
index 3d5d8a40c85bb8dac47a07829e1d9a5b2dce4e43..3f613901243b4b64d7ebed53341c7cd6ea681b53 100644
--- a/app/views/RoomsListView.js
+++ b/app/views/RoomsListView.js
@@ -60,6 +60,7 @@ const ds = new ListView.DataSource({ rowHasChanged: (r1, r2) => r1 !== r2 });
 	login: state.login,
 	Site_Url: state.settings.Site_Url,
 	canShowList: state.login.token || state.login.user.token
+	// Message_DateFormat: state.settings.Message_DateFormat
 }), dispatch => ({
 	login: () => dispatch(actions.login()),
 	connect: () => dispatch(server.connectRequest())
@@ -69,6 +70,7 @@ export default class RoomsListView extends React.Component {
 	static propTypes = {
 		navigation: PropTypes.object.isRequired,
 		Site_Url: PropTypes.string,
+		// Message_DateFormat: PropTypes.string,
 		server: PropTypes.string
 	}
 
@@ -237,9 +239,11 @@ export default class RoomsListView extends React.Component {
 		<RoomItem
 			unread={item.unread}
 			name={item.name}
+			_updatedAt={item._updatedAt}
 			key={item._id}
 			type={item.t}
 			baseUrl={this.props.Site_Url}
+			Message_DateFormat={'MM-DD-YYYY HH:mm:ss'}
 			onPress={() => this._onPressItem(item._id, item)}
 		/>
 	)
diff --git a/package-lock.json b/package-lock.json
index b72dfd9a12e28229dc9f7c450345fde7c42673e2..0f72fe190ce3bd4efcc76c71a3d6e2f6f414a2a0 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -10987,6 +10987,16 @@
         "crypto-js": "3.1.9-1"
       }
     },
+    "react-native-keyboard-aware-scroll-view": {
+      "version": "0.3.0",
+      "resolved": "https://registry.npmjs.org/react-native-keyboard-aware-scroll-view/-/react-native-keyboard-aware-scroll-view-0.3.0.tgz",
+      "integrity": "sha512-gMZq/o3xSd4p8GN2N9++SeYhURHt619ouCJnndHTdKyoDc3qdrETXeC356ogf7IqDVDI4Q42G30Vftktvsn+4g==",
+      "requires": {
+        "create-react-class": "15.6.2",
+        "prop-types": "15.6.0",
+        "react-timer-mixin": "0.13.3"
+      }
+    },
     "react-native-loading-spinner-overlay": {
       "version": "0.5.2",
       "resolved": "https://registry.npmjs.org/react-native-loading-spinner-overlay/-/react-native-loading-spinner-overlay-0.5.2.tgz",