Una baliza, miles de apps

Nuestras balizas son reutilizables por otras apps que necesiten un check-in verificado

OBManager

class

Es la clase principal del SDK. Inicializa los subsistemas y conecta con el servidor de Outbarriers SDK.
Si la inicialización es correcta, se llama al método delegado didIsReady.

Propiedades

  • id<OBManagerDelegate> delegate

    Delegado para el protocolo OBManagerDelegate.
    Debe asignarse antes de empezar a trabajar con OBManager.

  • bool enabledGPS

    Habilita si es true la detección de balizas GPS.
    Valor por defecto: true
    Si hay un escaneado en marcha y se cambia su valor, no se aplicará hasta que se reinicie el escaneado

  • CLLocationManager* locationManager

    Instancia de CLLocationManager usada por el SDK

Métodos

  • - (OBManager*) initWithDelegate:(id<OBManagerDelegate>) delegate

    Inicializa el SDK.

    Obtiene el API Key y API Secret desde Info.plist definidos respectivamante por OutbarriersAPIKey y OutbarriersAPISecret

    Si ha habido algún problema, se llama al método del delegado didErrorFound:error indicando el error ocurrido.

    Parámetros:
    • delegate: Objeto que implementa el protocolo OBManagerDelegate

  • - (OBManager*) initWithDelegate:(id<OBManagerDelegate>)delegate andAPIKey:(NSString*)apiKey andAPISecret:(NSString*)apiSecret

    Inicializa el SDK.

    Se especifican los credenciales de acceso API Key y API Secret como parámetros.

    Si ha habido algún problema, se llama al método del delegado didErrorFound:error indicando el error ocurrido.

    Parámetros:
    • delegate: Objeto que implementa el protocolo OBManagerDelegate
    • apiKey: Outbarriers API App Key
    • apiSecret: Outbarriers API App Secret

  • - (bool) startDetection

    Inicia la detección de balizas Outbarriers.

    Si la propiedad enabledGPS es true buscará también balizas virtuales (GPS)
    NOTA: la detección de balizas con GPS consume mucha batería.

    Cuando detecte una baliza Outbarriers, llamará al método delegado didOBMatch:match con la información sobre la baliza y el local al que pertenece.

    Devuelve false si no puede empezar la detección por algún motivo.

    Si ha habido algún problema durante la llamada o mientras la detección está en marcha, se llama al método del delegado didErrorFound:error indicando el error ocurrido.

  • - (bool) stopDetection

    Termina la detección de balizas Outbarriers.

    Devuelve false si no puede terminar la detección por algún motivo.

    Si ha habido algún problema, se llama al método del delegado didErrorFound:error indicando el error ocurrido.

  • - (bool) setPayload:(NSDictionary*)data forOutbeacon:(OBOutbeacon*) obo

    Asocia un objeto JSON a la baliza

    Permite almacenar información de contexto sobre la baliza para usarla en algún momento futuro. Útil para almacenar información básica sin tener que desarrollar un backend propio

    Si ha habido algún problema, se llama al método del delegado didErrorFound:error indicando el error ocurrido.

    Parámetros:
    • data: Diccionario que se almacenará como objeto JSON
    • obo: Outbeacon asociado al diccionario data

  • - (bool) getNearestAtLat:(double)lat andLng:(double)lng insideRadius:(NSInteger) radius;

    Obtiene las balizas Outbarriers en un radio menor a radius metros para la localización (lat,lng).

    Cuando se obtiene el listado de locales se llama al método delegado didNearestOutbeacons:beacons

    Si ha habido algún problema, se llama al método del delegado didErrorFound:error indicando el error ocurrido.

    Parámetros:
    • lat: Latitud en formato GPS
    • lng: Longitud en formato GPS
    • radius: Radio máximo de alcance en metros (Máximo 30000 metros).

  • - (bool) isScanning

    Devuelve true si actualmente se está detectando balizas Outbarriers.

    Si ha habido algún problema, se llama al método del delegado didErrorFound:error indicando el error ocurrido.

OBManagerDelegate

protocol

Delegado de OBManager.

Métodos

  • - (void) didIsReady

    Se llama cuando la inicialización de OBManager:initWithDelegate ha sido satisfactorio

  • - (void) didErrorFound:(OBError*)error

    Se llama cuando se produce un error

    Parámetros:
    • error: Mensaje y código de error

  • - (void) didOBMatch:(OBOutbeaconMatch *) match

    Se llama cuando se detecta una baliza Outbarriers

    Parámetros:
    • match: Información sobre la baliza y el local dónde se encuentra instalada
  • - (void) didNearestOutbeacons:(NSArray<OBOutbeaconDistance*>*) beacons

    Se llama cuando se obtiene la lista de balizas Outbarriers como respuesta asíncrona a una petición OBManager:getNearestAtLat:andLng:insideRadius

    Parámetros:
    • beacons: Lista de balizas Outbarriers junto a la distancia respecto a la posición (lat,lng) solicitada. Ordenada por distancia ascedente.

OBOutbeaconMatch

class

Información sobre la baliza detectada, local donde se encuentra instalada y contexto del match

Propiedades

  • OBOutbeacon* outbeacon

    Baliza outbarriers detectada

  • int rssi

    Valor de señal RSSI recibido (expresado en dbm)

  • NSString* proximity

    Proximidad relativa del dispositivo respecto a la baliza. Los valores posibles son: "unknown", "far", "near" y "verynear"

  • NSString* uuid

    UUID128 que identifica unívocamente el match

OBOutbeacon

class

Información sobre la baliza y el local donde se encuentra instalada

Propiedades

  • NSString* uuid: UUID128 que identifica la baliza Outbarriers

  • NSString* name: nombre de la baliza

  • double latitude: latitud GPS dónde se encuentra instalada la baliza

  • double longitude: longitud GPS dónde se encuentra instalada la baliza

  • NSString* location: Ubicación donde se encuentra la baliza (Ej: puerta)

  • NSString* accesibility: información sobre la accesibilidad del local

  • NSString* url: dirección web del local

  • NSDictionary* payload: objeto JSON asociado a la baliza y proporcionado por la App del cliente

OBOutbeaconDistance

class

Representa la información de un local y la distancia relativa a una posición GPS

Propiedades

  • int distance: Distancia en metros del local respecto a la posición GPS de búsqueda

  • OBLocal* local: Información del local

OBLocal

class

Información sobre un local con baliza Outbarriers

Propiedades

  • NSString* uuid: Identificador UUID128 del local

  • NSString* name: Nombre del local

  • NSString* address: Dirección del local

  • NSString* category: Tipo de local

  • NSString* city: Ciudad

  • NSString* phone: Teléfono

  • NSString* web: Web

  • int zip: Código Postal

OBError

class

Información sobre errores ocurridos durante inicialización y ejecución

Propiedades

  • OBErrorCode errorCode: Código de error

  • NSString* errorString: Mensaje explicativo del error