diff --git a/callout.cpp b/callout.cpp
index eb26d64..3d893bd 100644
--- a/callout.cpp
+++ b/callout.cpp
@@ -99,31 +99,34 @@
     auto it = properties.find("BuildDate");
     if (it != properties.end())
     {
-        buildDate(it->second.get<std::string>());
+        buildDate(sdbusplus::message::variant_ns::get<std::string>(it->second));
     }
 
     it = properties.find("Manufacturer");
     if (it != properties.end())
     {
-        manufacturer(it->second.get<std::string>());
+        manufacturer(
+            sdbusplus::message::variant_ns::get<std::string>(it->second));
     }
 
     it = properties.find("Model");
     if (it != properties.end())
     {
-        model(it->second.get<std::string>());
+        model(sdbusplus::message::variant_ns::get<std::string>(it->second));
     }
 
     it = properties.find("PartNumber");
     if (it != properties.end())
     {
-        partNumber(it->second.get<std::string>());
+        partNumber(
+            sdbusplus::message::variant_ns::get<std::string>(it->second));
     }
 
     it = properties.find("SerialNumber");
     if (it != properties.end())
     {
-        serialNumber(it->second.get<std::string>());
+        serialNumber(
+            sdbusplus::message::variant_ns::get<std::string>(it->second));
     }
 
     emit_object_added();
