rpc server callback