- Infoshare
-
Signed in: Administrator
- Change Password
- Signoff
- Online Documentation
- Adutante ver. 5.0.1.0
PAGE TITLE
Date Last ModifiedPAGE TITLE
Date Last ModifiedVersion 1 (sortie avec VSLogger version 4.6.1.4, février 2015)
Point d'accès
Ressources individuelles
Méthodes HTTP utilisées
Main
Justificatif
Utilisation de l'API Versadial
| Method | Scope | Semantics |
|---|---|---|
| GET | collection | Récupérer toutes les ressources d'une collection |
| GET | Ressources individuelles | Récupérer une ressource unique |
| POST | collection, Ressources individuelles | Créer une nouvelle ressource dans une collection, Mettre à jour une ressource, Créer une requête |
| DELETE | Ressources individuelles | Supprimer une ressource |
| OPTIONS | tout | Renvoyer les méthodes HTTP disponibles et d'autres options |
La majorité des réponses, renvoyées en tant qu'objet JSON. L'exception est des téléchargements binaires, Application / wav
| Type | Content-Type |
|---|---|
|
JSON |
application/json
application/json
|
|
Wave file |
application/wav
|
Résultat Objet JSON Convention (échec / réussite)
Si aucune exception ne se produit, le résultat doit toujours être l'objet JSON
{status:xxx, data:object, errmessage: text message }
status:
0 - Succès, objet de données contient objet de réponse de fonctionnement, commande spécifique
-1 - échec générique, avec message facultatif
-2 - problème de session (par exemple, timeout, manque, etc.)
-3 -permission error ("Action non autorisée!)
-4 -HASH erreur (avec message d'erreur facultatif, si SECURITY HASH inabled)
data:object L'appel API est spécifique et décrit dans la méthode API individuelle
Un ou plusieurs styles de paramètres sont pris en charge par un point d'extrémité spécifique.
Query:
Form:
<form action="rest/myservice" method="post" enctype="application/x-www-form-urlencoded">
<p> Name : <input type="text" name="name" /> </p> <p> Age : <input type="text" name="age" /> </p> <input type="submit" value="Add User" /> </form>xhr.setRequestHeader("content-type", "application/json"); var param={ "user":{"email":"someone@email.com", "password":"secure" } }; xhr.send(JSON.stringify(param));
Le hash de sécurité API et API doit être activé sur le serveur VSLogger.
Suivant les paramètres définis sur le serveur (outil CLI, voir Administration VSLogger)
API_ENABLED: Vrai / faux
HASHTYPE: NON, SHA-1 ou SHA-256
SALT: chaîne de sécurité
Si HASHTYPE n'est pas égal à NONE, les demandes client doivent passer les paramètres suivants avec URL Query
ss - chaîne aléatoire générée par le client à min. 10 char, p. Ex. Dans les moulins. Entier, représenté sous forme de chaîne
hh - HASH (ss + SALT + resource), valeur de hachage correspondante, en tant que chaîne hexadécimale
L'état de canal est un ensemble de valeurs associées à un objet de canal à un moment précis. La plupart des valeurs d'état du canal n'ont de sens que pendant l'appel.
La modification de certaines valeurs d'état entraînera des actions sur l'enregistreur. par exemple. Record = true, commence l'enregistrement sur un canal spécifique etc.
All supported and readable channel state values
States changeable via API requests
one or more extra parameters.
Result data:""
one or more extra parameters.
Result data:""
Result data:""
Recording object attributes, (Note: vslogger and adutante recording attributes may differ)
Adutante recording fields: refer to application/adutante/entitydef/entitymodel_recorders.xml , entity-name "recRecord"
VSLogger Recording DB record fields
..... for example to mute channel 5using System.Net;using System.Web;.. var request = (HttpWebRequest)WebRequest.Create(uri); string postData = "channel=5&mute=true";// optionally set note field at the same timepostData += "¬e= + Uri.EscapeDataString("Note value can be Non ASCII"); var data = Encoding.ASCII.GetBytes(postData); request.Method = "POST"; request.ContentType = "application/x-www-form-urlencoded; charset=UTF-8"; request.ContentLength = data.Length; using (var stream = request.GetRequestStream()) { stream.Write(data, 0, data.Length); } var response = (HttpWebResponse)request.GetResponse(); result = new StreamReader(response.GetResponseStream()).ReadToEnd();
..... for example to mute channel 5 Dim request As WebRequest = WebRequest.Create(uri) ' Set the Method property of the request to POST. request.Method = "POST" Dim postData As String = ""' Create urlencoded form parameters ' for example to mute channel 5 ' postData = "channel=5&mute=true"; ' Create POST data and convert it to a byte array. Dim byteArray As Byte() = Encoding.ASCII.GetBytes(postData) ' Set the ContentType property of the WebRequest. request.ContentType = "application/x-www-form-urlencoded; charset=UTF-8" ' Set the ContentLength property of the WebRequest. request.ContentLength = byteArray.Length ' Get the request stream. Dim dataStream As Stream = request.GetRequestStream() ' Write the data to the request stream. dataStream.Write(byteArray, 0, byteArray.Length) ' Close the Stream object. dataStream.Close() ' Get the response. Dim response As WebResponse = request.GetResponse() ' Display the status. ' MessageBox.Show(CType(response, HttpWebResponse).StatusDescription) ' Get the stream containing content returned by the server. dataStream = response.GetResponseStream() ' Open the stream using a StreamReader for easy access. Dim reader As New StreamReader(dataStream) ' Read the content. Dim responseFromServer As String = reader.ReadToEnd() ' Return the content. result = responseFromServer ' Clean up the streams. reader.Close() dataStream.Close() response.Close()