Есть два варианта.
1. Получить в function sampev.onSpectatePlayer, там возвращается наверное два аргумента - ид игрока и тип камеры (а может только ид)
Если через машинки, sampev.onSpectateVehicle - возвращает также что и же, но может и без камеры. В первом аргументе ид машинки (типа там где в /dl). Есть однако важное НО! В машинке возможно не будет игрок если находится в режиме афк - вопрос очень огромный и вряд ли сработает на получение ид водителя. Это лучше не использовать на наблюдения машинки, но игрока - можно. В машинке есть риски для получения информации об игроке.
2. Получить из текстдрава. Это самый популярный, что и используется для админ-тулс. Это гарантирует что ты корректно наблюдаешь игрока. Там и раскрывает важные информации об игроке, например, количество варнов без команды для получения статистики игрока.