Introducción

Si desea utilizar BioStar 2 New Local API como una API RESTful para su propia personalización u otros fines, simplemente puede consultar este artículo. Este artículo cubrirá el uso más básico de la aplicación de consola BioStar 2 New Local API by C#.

 

Esta es solo una aplicación de muestra hecha para aquellos que podrían necesitar usar la Nueva API Local de BioStar 2. Es una aplicación de consola de Visual C#.

 

Funciones

Este artículo cubrirá las siguientes funciones:

  1. Iniciar sesión
  2. Buscar usuarios
  3. Crear usuarios
  4. Crear usuarios con access group
  5. Recuperar datos de registro
  6. Recuperar datos de registro con el pedido por

 

A través de este artículo, puede aprender a llamar a una función api para crear usuarios en su servidor BioStar 2. Hay bastantes parámetros, pero puede crear usuarios simplemente teniendo valores para los campos obligatorios. Si desea agregar otros campos opcionales a su usuario, simplemente puede insertar los valores de una manera adecuada. Los valores obligatorios pueden parecer diferentes de la fanfarronería, pero funciona.

 

Asegúrese de echar un buen vistazo al código de ejemplo del programa de C# creado para llamadas a la API. Simplemente puede copiar y pegar el código fuente para usar la misma función en su propia integración.

 

También puede ver cómo llamar a las funciones de la API a través de Postman, que es un programa utilizado para las llamadas a la API RESTful.

 

Parte 1. Llamada a la API y parámetros

 

[POST]: /usuarios

[Parámetros]

Grupo

Nombre

Subgrupo

Tipo

*M/O

Explicación

Valor

Usuario

nombre

 

cuerda

M

Nombre de usuario

 

 

Correo electrónico

 

cuerda

O

Correo electrónico

[email protected]

 

Foto

 

cuerda

O

Foto de usuario

 

 

Teléfono

 

cuerda

O

Teléfono

 

 

User_id

 

cuerda

M

ID de usuario

 

 

User_group_id

identificación

Entero

M

ID de grupo de usuarios

 

 

Deshabilitado

 

Booleano

M

Estado del usuario

Ex) falso

 

Start_datetime

 

cuerda

M

Fecha de inicio

2001-01-01T00:00:00.00Z

 

Expiry_datetime

 

cuerda

M

Fecha de caducidad

2030-12-31T23:59:00.00Z

 

Permiso

Identificación

cuerda

O

ID de permiso

ID de permiso (Get_/api/permissions)

1(Administrador)

2 (Operador de usuario)

3 (Operador de monitoreo)

.. (CustomId)

253(Vídeo)

254 (TA)

255(Usuario)

100000(Visitante)

 

 

Nombre

cuerda

O

Prueba

 

 

 

Descripción

cuerda

O

Descripción

 

 

 

Operador – nombre

cuerda

O

Nombre de usuario

 

 

 

Operador[] – owner_id

cuerda

O

ID de permiso

ID de permiso (Get_/api/permissions)

1(Administrador)

2 (Operador de usuario)

3 (Operador de monitoreo)

.. (CustomId)

253(Video)(Get_/api/permissions)

1(Administrador)

2 (Operador de usuario)

3 (Operador de monitoreo)

.. (CustomId)

253(Vídeo)

254 (TA)

255(Usuario)

100000(Visitante)

254 (TA)

255(Usuario)

100000(Visitante)

 

 

Operador[] – user_id

cuerda

O

ID de usuario

 

 

Access_groups

Nombre

cuerda

O

Nombre del grupo de acceso

Ya existía

 

 

Identificación

Entero

O

ID de grupo de acceso

Ya existía

 

Contraseña

 

cuerda

O

Contraseña

 

 

Anclar

 

cuerda

O

ANCLAR

 

 

Login_id

 

cuerda

O

ID de inicio de sesión

 

 

User_ip

 

cuerda

O

IP del usuario

 

 

Fingerprint_templates[]

Plantilla0

cuerda

O

Datos binarios de huellas dactilares

Cadena Base64 codificada

 

 

Plantilla1

cuerda

O

Datos binarios de huellas dactilares

Cadena Base64 codificada

 

 

Finger_mask

Booleano

O

Máscara para los dedos

 

 

 

esNuevo

booleano

O

Nueva huella digital

 

 

Credenciales

Caras[] – raw_image

cuerda

O

Datos de imagen facial

 

 

 

Caras[] – plantillas – plantilla

cuerda

O

Datos de credenciales de Face : datos binarios de Face

 

 

 

Caras[] – Bandera

cuerda

O

Bandera de la cara

 

 

 

Caras[] – useProfile

Booleano

O

Perfil de uso de datos faciales

 

 

 

Caras[] – Índice

Entero

O

Índice facial

 

 

Tarjetas[]

Card_type – id

cuerda

O

ID de tipo de tarjeta

(0:CSN, 1:WIEGAND, 2:SECURE, 3:ACCESS, 4:CSN_MOBILE, 5:WIEGAND_MOBILE, 6:QR/barcode, 7:BioStar 2 QR)

 

 

Card_type – nombre

cuerda

O

Nombre del tipo de tarjeta

 

 

 

Card_type – tipo

cuerda

O

Tipo de tarjeta

(1:CSN, 2:SECURE, 3:ACCESS, 10:CSN_WIEGAND, 4:CSN_MOBILE, 5:WIEGAND_MOBILE, 6:QR/Barcode, 7:BioStar 2 QR)

 

 

Card_type – modo

cuerda

O

Modo de tarjeta

(C:CSN, S:SECURE, A:ACCESS, M:CSN_MOBILE)

 

 

Card_id

cuerda

O

Identificación de la tarjeta

 

 

 

Display_card-id

cuerda

O

ID de tarjeta de visualización

 

 

 

Identificación

cuerda

O

IDENTIFICACIÓN

* Identificación de tarjetas en BioStar 2 (generalmente se realiza por orden de inscripción)

 

 

cardId

cuerda

O

Identificación de la tarjeta Wiegand

(Usa Wiegand)

 

 

Wiegand_format_id – id

cuerda

O

ID de formato Wiegand

 

 

 

Wiegand_format__name

cuerda

O

Nombre de formato Wiegand

(Usa Wiegand)

* M – Obligatorio, O – Opcional

 

Parte 2. Cuerpo de solicitud y modelo de respuesta

[Ejemplo de entrada con valores mínimos]

{

"Usuario": {

"nombre": "API2",

"user_id": "108",

"user_group_id": {

"id": 1,

"nombre": "Todos los usuarios"

},

"deshabilitado": "falso",

"start_datetime": "2001-01-01T00:00:00.00Z",

"expiry_datetime": "2030-12-31T23:59:00.00Z",

"login_id": "api23",

"contraseña": "PassWord@"

}

}

 

[Respuesta: Fallo]

{

"Respuesta": {

"código": "202",

"link": "https://support.supremainc.com/en/support/home",

"message": "El usuario que tiene el mismo ID ya existe"

}

}

[Respuesta: Exitosa]

{

"UserCollection": {

"total": "1",

"filas": [

{

"user_id": "108",

"nombre": "API2"

}

]

},

"Respuesta": {

"código": "0",

"link": "https://support.supremainc.com/en/support/home",

"message": "Éxito"

}

}

 

Parte 3. Ejemplo de creación de usuario de la consola

 

[Código fuente del método Create Users]

static async void CreateUserTask()

{

if (sessionID ==  null)

{

Console.WriteLine("¡Primero debe iniciar sesión!" );

volver;

}

CookieContainer cookieContainer = nuevo  CookieContainer();

 

Controlador HttpClientHandler = nuevo  HttpClientHandler();

Controlador. CookieContainer = cookieContainer;

 

HttpClient httpClient = nuevo  HttpClient(controlador);

 

Cliente HttpClient = nuevo  HttpClient(controlador);

httpClient.DefaultRequestHeaders.Add("bs-session-id", sessionID);

cookieContainer.Add(new  Uri("https://127.0.0.1"),  new  Cookie("bs-session-id",sessionID));

 

string resourceAddress =  "https://127.0.0.1/api/users";

 

JavaScriptSerializer serializer = nuevo  JavaScriptSerializer();

Console.WriteLine("Introduzca el NOMBRE DE USUARIO:");

string UserName = Console.ReadLine();

Console.WriteLine("Introduzca el ID de usuario:");

string UserID = Console.ReadLine();

Console.WriteLine("Introduzca el ID de inicio de sesión del usuario: ");

cadena User_login_id = Console.ReadLine();

Console.WriteLine("Introduzca la CONTRASEÑA DE INICIO DE SESIÓN DEL USUARIO:");

cadena User_login_pw = Console.ReadLine();

 

string payload2 =  "{ \"Usuario\": ";

payload2 = payload2 + "{\"name\": \""  + UserName +  "\", ";

payload2 = payload2 + "\"user_id\": \""  + UserID +  "\",";

payload2 = payload2 + "\"user_group_id\": { \"id\": 1, \"name\": \"Todos los usuarios\" },\"disabled\": \"false\",\"start_datetime\": \"2001-01-01T00:00:00.00Z\", \"expiry_datetime\": \"2030-12-31T23:59:00.00Z\", ";

payload2 = payload2 + "\"login_id\": \""+ User_login_id +"\", ";

payload2 = payload2 + "\"password\": \""  + User_login_pw +  "\"}}";

Console.WriteLine(payload2);

StringContent sc = new  StringContent(payload2, Encoding.UTF8,  "application/json");

            

HttpResponseMessage httpResponse = httpClient.PostAsync(resourceAddress, sc). Resultado;

 

 

if (httpResponse.IsSuccessStatusCode ==  true)

{

Console.WriteLine("Se ha creado el usuario");

string httpResponseBody =  await  httpResponse.Content.ReadAsStringAsync();

Console.WriteLine(httpResponseBody);

}

más

{

Console.WriteLine("Error de creación del usuario");

Console.WriteLine(httpResponse.ToString());

}

}

 

[Después de crear el usuario correctamente]

 

 

 

Parte 4. Crear usuario a través de Postman

 

[Ejemplo de solicitud: Encabezados]

*Debe usar el valor 'be-session-id' del encabezado de respuesta de la llamada a la API de inicio de sesión para autenticar el uso de la API para otras llamadas a la API.

텍스트, 스크린샷, 모니터, 실내이(가) 표시된 사진

자동 생성된 설명

 

[Ejemplo de solicitud]

Interfaz gráfica de usuario, aplicación

Descripción generada automáticamente

 

[Ejemplo de respuesta: cuerpo]

Una imagen que contiene una interfaz gráfica de usuario

Descripción generada automáticamente