Cadastrar Múltiplos Usuários (V2)
Por meio da chamada abaixo é realizado o cadastro de uma lista de usuários. Sendo possível realizar o cadastro de até 10 usuários na mesma chamada.
Observação: Para o cadastro de um usuário a mesma chamada pode ser utilizada, passando apenas um usuário na lista.
Requisição - POST
http://192.168.1.201/cgi-bin/AccessUser.cgi?action=insertMulti
Body - application/json
{
"UserList": [
{
"UserID": "5",
"UserName": "test",
"UserType": 0,
"Authority": 1,
"Password": "234",
"Doors": [
0
],
"TimeSections": [
255
],
"ValidFrom": "2019-01-02 00:00:00",
"ValidTo": "2037-01-02 01:00:00"
},
{
"UserID": "6",
"UserName": "test",
"UserType": 0,
"Password": "234",
"Doors": [
0
],
"TimeSections": [
255
],
"SpecialDaysSchedule": [
255
],
"ValidFrom": "2019-01-02 00:00:00",
"ValidTo": "2037-01-02 01:00:00"
},
{
"UserID": "7",
"UserName": "test",
"UserType": 0,
"UserStatus": 0,
"Password": "234",
"Doors": [
0
],
"TimeSections": [
255
],
"ValidFrom": "2019-01-02 00:00:00",
"ValidTo": "2037-01-02 01:00:00"
},
{
"UserID": "8",
"UserName": "test",
"UserType": 0,
"UserStatus": 0,
"Password": "234",
"Doors": [
0
],
"TimeSections": [
255
],
"ValidFrom": "2019-01-02 00:00:00",
"ValidTo": "2037-01-02 01:00:00"
}
]
}
param | type | description |
---|---|---|
UserID * | String | ID do Usuário, exemplo: 16 . É recomendado a utilização de valores em decimal de até 30 digitos |
UserName * | String | Nome do Usuário, exemplo: Alexandre |
UserType * | Number | Tipo de usuário, sendo 0: General user , 2: Guest user |
UseTime * | Number | Limite de acessos válidos, necessário ser um usuário do tipo visitante ( 2: Guest user ) |
Password | Number | Senha de Acesso do Usuário, exemplo: 878485 |
Authority | Number | Define se o usuário será administrador ou não, sendo 1 administrador e 2 usuário normal |
Doors | Number | Portas que o usuário irá possuir acesso, sendo necessário quando cadastrado um TimeSections ao usuário. |
TimeSections | Number | Zona de tempo de acesso do usuário, padrão: 255 |
ValidFrom * | String | Data de Inicio de Validade, Exemplo: 2019-01-02 00:00:00 |
ValidTo * | String | Data de Final de Validade, Exemplo: 2037-01-02 01:00:00 |
Exemplo de Retorno - text/plain
OK
Exemplos
import requests
url = "http://192.168.1.201/cgi-bin/AccessUser.cgi?action=insertMulti"
json_data = {
"UserList": [
{
"UserID": "5",
"UserName": "test",
"UserType": 0,
"Authority": 1,
"Password": "234",
"Doors": [0],
"TimeSections": [255],
"ValidFrom": "2019-01-02 00:00:00",
"ValidTo": "2037-01-02 01:00:00"
},
{
"UserID": "6",
"UserName": "test",
"UserType": 0,
"Password": "234",
"Doors": [0],
"TimeSections": [255],
"SpecialDaysSchedule": [255],
"ValidFrom": "2019-01-02 00:00:00",
"ValidTo": "2037-01-02 01:00:00"
},
{
"UserID": "7",
"UserName": "test",
"UserType": 0,
"UserStatus": 0,
"Password": "234",
"Doors": [0],
"TimeSections": [255],
"ValidFrom": "2019-01-02 00:00:00",
"ValidTo": "2037-01-02 01:00:00"
},
{
"UserID": "8",
"UserName": "test",
"UserType": 0,
"UserStatus": 0,
"Password": "234",
"Doors": [0],
"TimeSections": [255],
"ValidFrom": "2019-01-02 00:00:00",
"ValidTo": "2037-01-02 01:00:00"
}
]
}
username = "admin"
password = "acesso1234"
def send_user(url, json_data, username, password):
# Realiza a requisição HTTP POST com autenticação digest
response = requests.post(url, auth=requests.auth.HTTPDigestAuth(username, password), json=json_data)
# Retorna o status code e o conteúdo da resposta
return response.status_code, response.content
status_code, response_content = send_user(url, json_data, username, password)
print("Status Code:", status_code)
print("Response Content:", response_content)
Atualizar Múltiplos Usuários (V2)
Por meio da chamada abaixo é realizar o atualização de múltiplos e único usuário em uma chamada. Sendo possível realizar o cadastro de até 10 usuários na mesma chamada.
Requisição - POST
http://192.168.1.201/cgi-bin/AccessUser.cgi?action=updateMulti
Body - application/json
{
"UserList": [
{
"UserID": "5",
"UserName": "test",
"UserType": 0,
"Authority": 1,
"Password": "234",
"Doors": [
0
],
"TimeSections": [
255
],
"ValidFrom": "2019-01-02 00:00:00",
"ValidTo": "2037-01-02 01:00:00"
},
{
"UserID": "6",
"UserName": "test",
"UserType": 0,
"Password": "234",
"Doors": [
0
],
"TimeSections": [
255
],
"SpecialDaysSchedule": [
255
],
"ValidFrom": "2019-01-02 00:00:00",
"ValidTo": "2037-01-02 01:00:00"
},
{
"UserID": "7",
"UserName": "test",
"UserType": 0,
"UserStatus": 0,
"Password": "234",
"Doors": [
0
],
"TimeSections": [
255
],
"ValidFrom": "2019-01-02 00:00:00",
"ValidTo": "2037-01-02 01:00:00"
},
{
"UserID": "8",
"UserName": "test",
"UserType": 0,
"UserStatus": 0,
"Password": "234",
"Doors": [
0
],
"TimeSections": [
255
],
"ValidFrom": "2019-01-02 00:00:00",
"ValidTo": "2037-01-02 01:00:00"
}
]
}
param | type | description |
---|---|---|
UserID * | String | ID do Usuário, exemplo: 16 . É possível também realizar o cadastro de um valor em Hexadecimal |
UserName * | String | Nome do Usuário, exemplo: Alexandre |
UserType * | Number | Tipo de usuário, sendo 0: General user , 2: Guest user |
Password | Number | Senha de Acesso do Usuário, exemplo: 878485 |
Authority | Number | Define se o usuário será administrador ou não, sendo 1 administrador e 2 usuário normal |
Doors | Number | Portas que o usuário irá possuir acesso, sendo necessário quando cadastrado um TimeSections ao usuário. |
TimeSections | Number | Zona de tempo de acesso do usuário, padrão: 255 |
ValidFrom * | String | Data de Inicio de Validade, Exemplo: 2019-01-02 00:00:00 |
ValidTo * | String | Data de Final de Validade, Exemplo: 2037-01-02 01:00:00 |
Exemplo de Retorno - text/plain
OK
Exemplos
import requests
url = "http://192.168.1.201/cgi-bin/AccessUser.cgi?action=insertMulti"
json_data = {
"UserList": [
{
"UserID": "5",
"UserName": "test",
"UserType": 0,
"Authority": 1,
"Password": "234",
"Doors": [0],
"TimeSections": [255],
"ValidFrom": "2019-01-02 00:00:00",
"ValidTo": "2037-01-02 01:00:00"
},
{
"UserID": "6",
"UserName": "test",
"UserType": 0,
"Password": "234",
"Doors": [0],
"TimeSections": [255],
"SpecialDaysSchedule": [255],
"ValidFrom": "2019-01-02 00:00:00",
"ValidTo": "2037-01-02 01:00:00"
},
{
"UserID": "7",
"UserName": "test",
"UserType": 0,
"UserStatus": 0,
"Password": "234",
"Doors": [0],
"TimeSections": [255],
"ValidFrom": "2019-01-02 00:00:00",
"ValidTo": "2037-01-02 01:00:00"
},
{
"UserID": "8",
"UserName": "test",
"UserType": 0,
"UserStatus": 0,
"Password": "234",
"Doors": [0],
"TimeSections": [255],
"ValidFrom": "2019-01-02 00:00:00",
"ValidTo": "2037-01-02 01:00:00"
}
]
}
username = "admin"
password = "acesso1234"
def send_user(url, json_data, username, password):
# Realiza a requisição HTTP POST com autenticação digest
response = requests.post(url, auth=requests.auth.HTTPDigestAuth(username, password), json=json_data)
# Retorna o status code e o conteúdo da resposta
return response.status_code, response.content
status_code, response_content = send_user(url, json_data, username, password)
print("Status Code:", status_code)
print("Response Content:", response_content)
Cadastrar Usuário (V1) (SS 7520/SS 7530)
Por meio da chamada abaixo é realizar o cadastro de um usuário no sistema de controle de acesso.
Para o dispositivo SS 7520 e SS 7530 é necessário realizar o cadastro do CardNo (Numero do cartão em Hexadecimal) para o cadastro do usuário corretamente.
Requisição - GET
http://192.168.1.201/cgi-bin/recordUpdater.cgi?action=insert&name=AccessControlCard&CardNo=AF79FCC0&CardStatus=0&CardName=AlexandreAlves&UserID=16&Password=112233&ValidDateStart=20151022%20093811&ValidDateEnd=20151222%20093811
param | type | description |
---|---|---|
insert * | String | Comando de inserção de usuário |
CardNo * | String | Código do Cartão em Hexadecimal, exemplo: AF79FCC0 |
CardStatus * | Number | Status do Cartão sendo: 0: Normal , 1: Cancelado , 2: Congelado |
CardName * | String | Nome do Usuário, exemplo: Alexandre Alves |
UserID * | Number | ID do Usuário, exemplo: 16 . É possível também realizar o cadastro de um valor em Hexadecimal |
Password | Number | Senha de Acesso do Usuário, exemplo: 878485 |
ValidDateStart * | String | Data de Inicio de validade. Formato: yyyy-MM-dd HH:mm:ss, exemplo: 20151022%20093811 |
ValidDateEnd * | String | Data de Final de validade. Formato: yyyy-MM-dd HH:mm:ss, exemplo: 20151022%20093811 |
Exemplo de Retorno - text/plain
RecNo=1
Exemplos
import requests
device_ip = '192.168.3.87'
username = 'admin'
password = 'acesso1234'
url = "http://{}/cgi-bin/recordUpdater.cgi?action=insert&name=AccessControlCard&CardNo=AF79FCC0&CardStatus=0&CardName=AlexandreAlves&UserID=16&Password=112233&ValidDateStart=20151022%20093811&ValidDateEnd=20151222%20093811".format(
str(device_ip),
)
digest_auth = requests.auth.HTTPDigestAuth(username, password)
rval = requests.get(url, auth=digest_auth, stream=True, timeout=20, verify=False)
print(rval.text)