Skip to content

Blazingly fast CiNEXT proxy decoder/encoder

Notifications You must be signed in to change notification settings

DvKirbo/CiNEXT-server

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CiNEXT server

Server for the CiNEXT emulator program.

Endpoints

GET /

Responde con el estado de la API (o nunca responde).

{
    "status": "OK",
    "code": 200,
    "error": null
}

GET /cines/all

Duelve la lista completa de cines disponibles.

Detalles

Respuesta exitosa:

{
    "cinemas": [
        {
            "cinema_id": "2705",
            "name": "CiNEXT Gamarra",
            "city": "Lima"
        },
        {
            "cinema_id": "2702",
            "name": "CiNEXT Huancayo",
            "city": "Huancayo"
        },
        // ...
    ],
    "code": 200,
    "error": null
}

GET /cines/cercanos

Devuelve la lista de los cines disponibles en la ciudad del usuario.

Detalles

Si existe, lista de cinemas estará ordenada por cercanía al usuario. El primer cine siempre será el más cercano.

Para determinar la ciudad y las coordenadas aproximadas del usuario, se hace uso de la librería geoip-lite.

Respuesta exitosa:

{
    "city": "Lima",
    "cinemas": [
        {
            "cinema_id": "2705",
            "name": "CiNEXT Gamarra",
            "city": "Lima"
        },
        // ...
    ],
    "nearest_id": "2705",
    "code": 200,
    "error": null
}

Cuando no hay cines disponibles en la ciudad del usuario, devuelve:

{
    "city": "<nombre_de_la_ciudad_muy_muy_lejana>",
    "cinemas": [],
    "nearest_id": null,
    "code": 404,
    "error": "No hay cines disponibles en tu ciudad"
}

Cuando no se puede determinar la ubicación del usuario, devuelve:

{
    "city": null,
    "cinemas": [],
    "nearest_id": null,
    "code": 500,
    "error": "No se pudo determinar la ubicación"
}

En caso de errores internos, devuelve:

{
    "city": null,
    "cinemas": [],
    "nearest_id": null,
    "code": 503,
    "error": "Error al cargar los cines"
}

En cualquiera de estos casos, se recomienda usar el endpoint /cines para obtener la lista completa de cines disponibles.

GET /cines/{cinema_id}/confiteria

Devuelve los productos en la confitería de un cine.

Detalles

Respuesta exitosa:

{
    "confiteria": [
        {
            "item_id": "528",
            "name": "*COMBO TRIO CMK SAL",
            "description": "3 Canchitas medianas saladas + 3 Gaseosas medianas",
            "priceInCents": 7100
        },
        {
            "item_id": "529",
            "name": "*COMBO DUO CMK SAL",
            "description": "2 Canchitas grandes saladas + 2 Gaseosas grandes",
            "priceInCents": 5600
        },
    ],
    "code": 200,
    "error": null
}

Si el cinema_id proporcionado no pertenece a ningún cine, devuelve:

{
    "confiteria": [],
    "code": 404,
    "error": "Cine no encontrado"
}

Sobre la API

HTTP API desarrollada con Express para CiNEXT.

About

Blazingly fast CiNEXT proxy decoder/encoder

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 100.0%