SOC Webservices
Biblioteca para auxiliar a utilizar os webservices disponíveis do sistema SOC.
Instalação
$ pip install socws
Desenvolvimento
Clonar o repositório:
$ git clone https://github.com/qualitaocupacional/socws.git
Instalar a lib em modo desenvolvimento:
(virtualenv) user@host:~/socws$ pip install -e .
Usando
import socws
# Ver documentação do SOC para obter as credenciais de autenticação
credentials = {
'username': 'usuário',
'password': 'senha',
'user_id': 'código do usuário',
'user_incharge_id': 'código do usuário responsável'
}
company = socws.client.Company(**credentials)
# Ver na documentação do SOC os campos que podem ser passados para cada serviço
response = company.add(
{
'dadosEmpresaWsVo': {
'nomeAbreviado': 'nome da empresa',
# ... demais campos
}
}
)
# Dependendo do serviço, response vai ter uma estrutura diferente. Ver na documentação
Verifique na documentação do SOC os parâmetros aceitos para cada serviço. Entretanto, para todos os serviços, a estrutura "identificacaoWsVo" é baseada nas credenciais passadas, então a biblioteca socws já cria essa estrutura automáticamente para cada requisição, não precisando passar novamente.
Para todas as requisições o parâmetro passado é um dicionário contento os campos de acordo com o serviço. Por exemplo, a classe DataExport implementa a chamada ao serviço Exporta dados, que após configurado no perfil do usuário no SOC, pode ser invocado da seguinte maneira:
import socws
data = socws.client.DataExport(**credentials**)
response = data.request(
{
'empresa': 'código da empres',
'codigo': 'código do tipo de exporta dados',
'chave': 'chave do tipo de exporta dados',
'tipoSaida': 'json',
# ... demais campos do "exporta dados"
}
)
Cada tipo de exporta dados vai requerer parâmetros adicionais e tipos de saídas diferenciados. Consultar a documentação de cada exporta dados disponível no sistema SOC para a correta parametrização.
E novamente, dependendo do exporta dados, response vai ter uma estrutura de acordo com o tipo de saída escolhida disponível.
Serviços implementados
- Empresa: socws.client.Company
Métodos: add, update
- Unidade: socws.client.Unit
Métodos: get, add, update
- Funcionário: socws.client.Employee
Métodos: import_employee
- Exporta dados: socws.client.DataExport
Métodos: request
Licença
O socws é um projeto de código aberto, desenvolvido pelo departamento de Pesquisa e Desenvolvimento e Tecnologia da Informação da Qualitá Segurança e Saúde Ocupacional e está licenciada pela Apache License 2.0.
Metadata
Release files for socws 0.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| socws-0.0.1.tar.gz | 8.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| socws-0.0.1-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details |
Total release size: 17.7 kB
Release files / socws-0.0.1.tar.gz
| Download URL | socws-0.0.1.tar.gz |
|---|---|
| Size | 8.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5296accc7c1fadfd0c9a0b20c8f7c5504e4d63075696feb77912673a064ebcee
|
|
BLAKE2b-256 checksum How to use checksums |
67d4c2e095523bf454b6471c49dfd08e7bdd427e7439adfa54a81ffb83ecd15c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.2
|
Release files / socws-0.0.1-py2.py3-none-any.whl
| Download URL | socws-0.0.1-py2.py3-none-any.whl |
|---|---|
| Size | 8.9 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
28176c6401fd079e564204789e2f7969f9ef6fc0e549f5c4b9c1db70b8e97af4
|
|
BLAKE2b-256 checksum How to use checksums |
21ae43a634b3af37fa48f44c2b314c03a106136f939fb1a462f9b0272527a986
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.2
|