diff --git a/src/status-viewer.cpp b/src/status-viewer.cpp
index 6bc5879..f4f81f4 100644
--- a/src/status-viewer.cpp
+++ b/src/status-viewer.cpp
@@ -31,9 +31,11 @@
   QQmlContext* s_context = s_engine.rootContext();
 
   s_context->setContextProperty("forwarderModel", &s_forwarderStatusModel);
+  s_context->setContextProperty("channelModel", &s_channelModel);
   s_context->setContextProperty("faceModel", &s_faceModel);
   s_context->setContextProperty("fibModel", &s_fibModel);
   s_context->setContextProperty("ribModel", &s_ribModel);
+  s_context->setContextProperty("strategyModel", &s_strategyModel);
   s_context->setContextProperty("statusViewer", this);
 
   s_engine.load((QUrl("qrc:/status.qml")));
@@ -46,6 +48,12 @@
 }
 
 void
+StatusViewer::onChannelStatusRetrieved(const std::vector<nfd::ChannelStatus>& status)
+{
+  emit s_channelModel.onDataReceived(status);
+}
+
+void
 StatusViewer::onFaceStatusRetrieved(const std::vector<nfd::FaceStatus>& status)
 {
   emit s_faceModel.onDataReceived(status);
@@ -64,6 +72,12 @@
 }
 
 void
+StatusViewer::onStrategyChoiceStatusRetrieved(const std::vector<nfd::StrategyChoice>& status)
+{
+  emit s_strategyModel.onDataReceived(status);
+}
+
+void
 StatusViewer::onStatusTimeout()
 {
   std::cerr << "Should not really happen, most likely a serious problem" << std::endl;
@@ -74,13 +88,17 @@
 StatusViewer::requestNfdStatus()
 {
   s_controller->fetch<ndn::nfd::ForwarderGeneralStatusDataset>(bind(&StatusViewer::onStatusRetrieved, this, _1),
-                                                              bind(&StatusViewer::onStatusTimeout, this));
+                                                               bind(&StatusViewer::onStatusTimeout, this));
+  s_controller->fetch<ndn::nfd::ChannelDataset>(bind(&StatusViewer::onChannelStatusRetrieved, this, _1),
+                                                bind(&StatusViewer::onStatusTimeout, this));
   s_controller->fetch<ndn::nfd::FaceDataset>(bind(&StatusViewer::onFaceStatusRetrieved, this, _1),
                                              bind(&StatusViewer::onStatusTimeout, this));
   s_controller->fetch<ndn::nfd::FibDataset>(bind(&StatusViewer::onFibStatusRetrieved, this, _1),
-                                           bind(&StatusViewer::onStatusTimeout, this));
+                                            bind(&StatusViewer::onStatusTimeout, this));
   s_controller->fetch<ndn::nfd::RibDataset>(bind(&StatusViewer::onRibStatusRetrieved, this, _1),
-                                           bind(&StatusViewer::onStatusTimeout, this));
+                                            bind(&StatusViewer::onStatusTimeout, this));
+  s_controller->fetch<ndn::nfd::StrategyChoiceDataset>(bind(&StatusViewer::onStrategyChoiceStatusRetrieved, this, _1),
+                                                       bind(&StatusViewer::onStatusTimeout, this));
   s_scheduler.scheduleEvent(time::seconds(15), bind(&StatusViewer::requestNfdStatus, this));
 }
 
