Di recente mi è capitato di dover schedulare un riavvio automatico di una Videocamera Hikvision.
Documentandomi sul sito di HikVision ho scoperto che è possibile interagire con le telecamere di HikVision tramite chiamate HTTP e quindi tramite il Protocollo HIKCGI.
PRE-REQUISITI
PC o Server Con Sistema operativo Windows
Credenziali Amministrative per accesso alla Telecamera HikVision
DOWNLOAD ED INSTALLAZIONE DEL SOFTWARE cURL
Come prima cosa procedere al download del software cURL dal link
http://www.confusedbycode.com/curl/
Selezionare il pacchetto da scaricare in base alla versione del proprio sisyema operativo (32 bit o 64 bit)
NOTA BENE: al momento della stesura della seguente guida la versione del cURL è 7.46.0
Dopo aver scaricato il pacchetto eseguirlo
Accettare la licenza quindi cliccare su Install
Cliccare su Finish per terminare l’installazione.
CONFIGURAZIONE TELECAMERA PER COMANDI HTTP E CGI
A questo punto procedere con la configurazione della telecamera per fare in modo che accetti comandi CGI
Collegarsi alla telecamera con l’interfaccia web quindi anadare nel Menù Configurazione -> Rete -> Imp.Avanzate
Quindi abilitare l’opzione Abilita Hikvision-CGI come mostrato nell’immagine sovrastante.
Cliccare su Salva per confermare le modifiche.
Adesso procedere con la creazione dell’account utente che farà il riavvio della telecamera
NOTA BENE: volendo è possibile utilizzare l’account admin per impostare il riavvio ma è preferibile creare un account dedicato al riavvio via script.
Quindi sempre dall’interfaccia web andare nel Menù Configurazione -> Sistema -> Gestione Utenti
Cliccare su Aggiungi
Impostare i seguenti parametri come mostrato nell’immagine sovrastante
Nome Utente: inserire il nome da dare all’utente
Tipo Utente: selezionare Operatore
Password Amministratore: inserire la password dell’utente admin
Password: Inserire la password da dare all’utente
Conferma: Confermare la password dell’utente
Selezionare le seguenti grant:
Remoto: Imp. parametri
Remoto: Arresto/Riavvio
Controllo Porta Seriale da Remoto
Cliccare OK per confermare la creazione dell’utente.
Se è stato fatto tutto correttamante dovremmo vedere l’utente appena creato come mostrato nell’immagine sovrastante.
UTILIZZO DELL’UTILITY cURL
Il comando cURL è un comando estremamente utile e versatile.
Si tratta di una delle opzioni più gettonate nell’ambito della programmazione, poiché con il suo utilizzo è possibile svolgere una serie di operazioni, come, ad esempio, effettuare richieste HTTP.
Aprire una finestra DOS quindi poisizionarsi nel seguente path Program Files\cURL\bin
Eseguire il comandi riportato di seguito per il riavvio della telecamera
0 |
curl -X PUT --user RebootUser:"PASSWORD" --http1.1 --digest http://IP-ADDRESS-TELECAMERA/ISAPI/System/reboot |
NOTA BENE: modificare la PASSWORD dell’utente e l’IP-ADDRESS della telecamera
ATTENZIONE: inserire la password dell’utente tra gli apici altrimenti il comando va in errore
Se il comando è andato a buon fine dovremmo vedere le seguenti righe di risposta
0 1 2 3 4 5 6 |
<?xml version="1.0" encoding="UTF-8"?> <ResponseStatus version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema"> <requestURL>/ISAPI/System/reboot</requestURL> <statusCode>1</statusCode> <statusString>OK</statusString> <subStatusCode>ok</subStatusCode> </ResponseStatus> |
A questo punto è possibile creare un .BAT contenente le seguenti righe di codice
0 1 |
cd "Program Files\cURL\bin" curl -X PUT --user RebootUser:"PASSWORD" --http1.1 --digest http://IP-ADDRESS-TELECAMERA/ISAPI/System/reboot |
Salvare e chiudere il file appena creato.
Eseguirlo e accertarsi che la telecamera si riavii
TROUBLESHOOTING DEI COMANDI CON POSTMAN
Per verirficare che i comandi utilizzati funzionino è possibile utilizzare il software free Postman.
Postman è un ambiente di sviluppo API che aiuta le persone a creare, testare, documentare, monitorare e pubblicare documentazione per le loro API.
Scaricare il software dal seguente link quindi installarlo sul PC.
https://www.postman.com/downloads/
Aprire il software
Ad esempio proviamo a richiedere tutte le informazioni relative all’Hardwatre della Telecamera con il comando
Selezionare il metodo GET quindi inserire la seguente stringa come mostrato nell’immagine sovrastante
http://IP-TELECAMERA/ISAPI/System/deviceInfo
Dato che la telecamera ha bisogno dell’autenticazione per eseguire la GET cliccare su Authorization quindi inserire la Username e la Password come mostrato nell’immagine sovrastante
Cliccare sul pulsante Send per inviare il comando.
Se il comando è corretto dovremmo vedere in basso tutte le informazioni hardware relative alla telecamera come mostrato nell’immagine sovrastante.
INFORMAZIONI AGGIUNTIVE
Il Protocollo HIKCGI è un insieme di interfacce CGI basate su protocolli HTTP.
Questo protocollo supporta 4 metodi definiti dal protocollo HTTP: GET, PUT, POST e DELETE.
Il Metodo GET: richiede una rappresentazione della risorsa specificata. Il metodo GET dovrebbe solo recuperare i dati e non dovrebbe avere altri effetti. Se le richieste sono corrette, le informazioni sulle risorse verranno restituite in base al formato del protocollo.
Il Metodo PUT: aggiorna una risorsa specifica o reimposta una risorsa specifica. Questo metodo modifica la risorsa e puoi controllare le informazioni specifiche dell’operazione nel ResponseStatus.
Il Metodo POST: può comportare la creazione di una nuova risorsa. Il dispositivo creerà una nuova risorsa utilizzando questi parametri passati dal metodo POST e dall’ID di ritorno della nuova risorsa. Il modo in cui creare una risorsa è lo stesso del metodo PUT,
e il risultato dell’operazione è mostrato nella pagina ResponseStatus.
In aggiunta, Il metodo POST supporta la ricerca di alcune richieste complicate.
Il Metodo DELETE: elimina la risorsa specifica. Prima di utilizzare il metodo DELETE, assicurarsi dell’esistenza della risorsa specifica altrimenti l’operazione fallirà. Il risultato dell’operazione verrà mostrato nel ResponseStatus.
Quindi riepilogando oltre al riavvio è possibile configurare, modificare e cancellare i parametri della nostra telecamera HikVision.
A tal proposito al fondo dell’articolo vi allego alcuni file PDF prodotti da Hikvision con tutti i possibili comandi e spiegazioni su questa ottima feature.
Download “HIKCGI-Integration-Guide.pdf” HIKCGI-Integration-Guide.pdf – Scaricato 929 volte – 993,86 KB Download “IP Surveillance API (RaCM Part) User Guide Version 2.0” IP-Surveillance-API-RaCM-Part-User-Guide-Version-2.0.pdf – Scaricato 983 volte – 1,02 MB Download “IP Surveillance API User Guide Version 2.6” IP-Surveillance-API-User-Guide-Version-2.6.pdf – Scaricato 495 volte – 11,00 MBSono Raffaele Chiatto, un appassionato di informatica a 360 gradi.
Tutto è iniziato nel 1996, quando ho scoperto il mondo dell'informatica grazie a Windows 95, e da quel momento non ho più smesso di esplorare e imparare.
Ogni giorno mi dedico con curiosità e passione a scoprire le nuove frontiere di questo settore in continua evoluzione.
0 Comments