- Brindar un punto de acceso para el registro de solicitudes de revisiones “rápidas” sobre la seguridad de un inmueble (API, Web App)
- Permitir la captura de revisiones sobre las solicitudes y documentar la evidencia
- Emitir una recomendación rápida y enlazarte a otras herramientas / Organismos
- Generar un repositorio de imágenes, cuestionarios y revisiones para usarlo para entrenar un sistema de Machine Learning para en base a resultados evaluar su uso posterior como un sistema de reacción rápida
- Google App Engine
- Google Datastore
- Google Storage
- Google Cloud Endpoints
- Java 7
- OpenApi
Compila el proyecto y cargalo de manera local:
mvn clean package
mvn endpoints-framework:openApiDocs
gcloud service-management deploy target/openapi-docs/openapi.json
Crear variable de sistema indicando el servidor de endpoints:
En Linux or MacOS:
export ENDPOINTS_SERVICE_NAME=[YOUR_PROJECT_ID].appspot.com
En Windows:
$Env:ENDPOINTS_SERVICE_NAME="[YOUR_PROJECT_ID].appspot.com"
Autenticar
gcloud auth application-default login
Correr de manera local:
mvn appengine:run
Compila el proyecto y cargalo a Google App Engine:
mvn clean package
mvn endpoints-framework:openApiDocs
gcloud service-management deploy target/openapi-docs/openapi.json
mvn appengine:deploy
Solo tres endpoints solicitan token de autenticación:
- Insertar Grietas
- Insertar Revisión de Grietas
Draft de objeto JSON de grieta con revisiones
{
"id": "5671831268753408",
"files": [
"70b462c6-04f9-49a0-a7b8-2c2d5a6703d0-1506493156941.JPG",
"b6d304f4-6764-42d2-b3fd-c271a1d2f8d3-1506493158467.JPG"
],
"geolocalizacion": {
"latitude": 32.1,
"longitude": 2.3
},
"tipo": "INTERNA",
"ubicacion": "LOSA",
"revisada": true,
"createdOn": "2017-09-27T06:05:21.598Z",
"comentario": "comentario",
"diagonalesLosa": false,
"diagonalesPiso": false,
"paralelasPiso": false,
"userId": "idusuario",
"estadoDeObra": {
"hundimientos": false,
"desplomes": false,
"golpeteo": false,
"desprendimiento": false,
"vibraciones": false,
"pisosHuecos": false,
"mas20porciento": false
},
"revisiones": [
{
"diagonalesLosa": false,
"paralelasPiso": true,
"diagonalesPiso": false,
"peligroInminente": true,
"comentarios": "Comentario 1",
"revisadaPor": "idusuario",
"createdOn": "2017-09-27T06:07:05.985Z"
},
{
"diagonalesLosa": false,
"paralelasPiso": true,
"diagonalesPiso": false,
"peligroInminente": true,
"comentarios": "Comentario 2",
"revisadaPor": "idusuario",
"createdOn": "2017-09-27T06:07:35.210Z"
}
]
}
Pasos para insertar imagenes:
- Obtener token de autenticación via firebase o via solicitud al equipo.
- Una solicitud insertada no va a ser valida hasta que se cuente con imagenes sobre ella.
- Al registrar una grieta se obtiene el ID del elemento como respuesta del servidor.
- Ese ID se requiere para la subida de archivos.
curl -X POST \
https://revisamigrieta.appspot.com/upload/ID-GRIETA \
-H 'authorization: Bearer JWT-TOKEN-FIREBASE' \
-H 'cache-control: no-cache' \
-H 'content-type: multipart/form-data; \
-F [email protected] \
-F [email protected]
Revisa los issues y manda Pull Request.