Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from cerberus import Validator
- request = {
- "postamatId": "1995-001",
- "request": [
- {
- "method" :"status",
- "id": "131366596070781250",
- "params": {
- "cells": [
- {
- "doorState":0,
- "errorState":-1,
- "ledState":-1,
- "id":"C1N1",
- "lockState":0
- },
- {
- "doorState":0,
- "errorState":-1,
- "ledState":-1,
- "id":"C1N10",
- "lockState":0
- },
- {
- "doorState":1,
- "errorState":-1,
- "ledState":-1,
- "id":"C1N11",
- "lockState":1
- },
- {
- "doorState":0,
- "errorState":-1,
- "ledState":-1,
- "id":"C1N12",
- "lockState":0
- },
- {
- "doorState":0,
- "errorState":-1,
- "ledState":-1,
- "id":"C1N2",
- "lockState":0
- },
- {
- "doorState":0,
- "errorState":-1,
- "ledState":-1,
- "id":"C1N3",
- "lockState":0
- },
- {
- "doorState":0,
- "errorState":-1,
- "ledState":-1,
- "id":"C1N4",
- "lockState":0
- },
- {
- "doorState":0,
- "errorState":-1,
- "ledState":-1,
- "id":"C1N6",
- "lockState":0
- },
- {
- "doorState":0,
- "errorState":-1,
- "ledState":-1,
- "id":"C1N7",
- "lockState":0
- },
- {
- "doorState":0,
- "errorState":-1,
- "ledState":-1,
- "id":"C1N8",
- "lockState":0
- },
- {
- "doorState":1,
- "errorState":-1,
- "ledState":-1,
- "id":"C1N9",
- "lockState":1
- },
- {
- "doorState":0,
- "errorState":-1,
- "ledState":-1,
- "id":"C2N1",
- "lockState":0
- },
- {
- "doorState":0,
- "errorState":-1,
- "ledState":-1,
- "id":"C2N10",
- "lockState":0
- },
- {
- "doorState":1,
- "errorState":-1,
- "ledState":-1,
- "id":"C2N11",
- "lockState":1
- },
- {
- "doorState":0,
- "errorState":-1,
- "ledState":-1,
- "id":"C2N12",
- "lockState":0
- },
- {
- "doorState":0,
- "errorState":-1,
- "ledState":-1,
- "id":"C2N2",
- "lockState":0
- },
- {
- "doorState":0,
- "errorState":-1,
- "ledState":-1,
- "id":"C2N3",
- "lockState":0
- },
- {
- "doorState":0,
- "errorState":-1,
- "ledState":-1,
- "id":"C2N4",
- "lockState":0
- },
- {
- "doorState":0,
- "errorState":-1,
- "ledState":-1,
- "id":"C2N5",
- "lockState":0
- },
- {
- "doorState":0,
- "errorState":-1,
- "ledState":-1,
- "id":"C2N6",
- "lockState":0
- },
- {
- "doorState":0,
- "errorState":-1,
- "ledState":-1,
- "id":"C2N7",
- "lockState":0
- },
- {
- "doorState":0,
- "errorState":-1,
- "ledState":-1,
- "id":"C2N8",
- "lockState":0
- },
- {
- "doorState":1,
- "errorState":-1,
- "ledState":-1,
- "id":"C2N9",
- "lockState":1
- }
- ],
- "reader":{
- "state": 1
- },
- "module":"1.1.0.26",
- "controllers":[
- {
- "commandNumber":0,
- "techSectionUpper":0,
- "id":1,
- "state":1,
- "techSectionLower":0
- },
- {
- "commandNumber":0,
- "techSectionUpper":0,
- "id":2,
- "state":1,
- "techSectionLower":0
- }
- ],
- "terminal":{
- "balanceTimestamp":"2017-04-14T23:06:47+07:00",
- "balance":"1221472.95",
- "time":"2017-04-14T23:06:47+07:00",
- "interface":1,
- "cash":1
- }
- }
- }
- ],
- "terminalId":"9890364"
- }
- schema = {
- 'terminalId': {
- 'type': 'string',
- 'required': True
- },
- 'postamatId': {
- 'type': 'string',
- 'required': True
- },
- 'request': {
- 'type': 'list',
- 'schema': {
- 'type': 'dict',
- 'allow_unknown': True,
- 'schema': {
- 'params': {
- 'type': 'dict',
- 'required': True,
- 'schema': {
- 'terminal': {
- 'type': 'dict',
- 'required': True,
- 'schema': {
- 'interface': {
- 'allowed': [1]
- },
- 'cash': {
- 'allowed': [1]
- }
- }
- },
- 'reader': {
- 'type': 'dict',
- 'schema': {
- 'state': {
- 'allowed': [1]
- }
- },
- 'required': True
- },
- 'controllers': {
- 'type': 'list',
- 'required': True
- },
- 'cells': {
- 'type': 'list',
- 'schema': {
- 'type': 'dict',
- 'schema': {
- 'errorState': {
- 'type': 'number',
- 'max': -1
- }
- },
- 'required': True
- }
- }
- }
- }
- }
- }
- }
- }
- v = Validator(schema)
- print(v.validate(request))
- print(v.errors)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement