device-client