The emerging simultaneous localization and mapping (SLAM) techniques enable robots with spatial awareness of the physical world. However, such awareness remains at a geometric level. We propose an approach for quickly constructing a smart environment with semantic labels to enhance the robot with spatial intelligence. Essentially, we embed UWB-based distance sensing IoT devices into regular items and treat the robot as a dynamic node in the IoT network. By leveraging the self-localization from the robot node, we resolve the locations of IoT devices in the SLAM map. We then exploit the semantic knowledge from the IoT to enable the robot to navigate and interact within the smart environment. With the IoT nodes deployed, the robot can adapt to environments that are unknown or that have time-varying configurations. Through our experiments, we demonstrated that our method supports an object level of localization accuracy (0.28m), a shorter discovery and localization time compared to an exhaustive search, and an effective navigation strategy for a global approach and local manipulation. Further, we demonstrated two use case scenarios where a service robot (i) executes a sequence of user-assigned tasks in a smart home and (ii) explores multiple connected regions using IoT landmarks.