In IoT (Internet of Things) scenarios, lots of things and services are connected and coordinated each other. In our work, we first propose a service-oriented publish/subscribe middleware as a construction base of distributed, ultra-scale, and elastic service bus for IoT applications. The IoT services in our solution are then aware of underpinning service communication fabric, where they are event-driven, their interfaces are defined by underlying event topics, their behaviors are specified by event relations, and they can cooperate with the service communication fabric to complete distributed service coordination.