# IBeacon

iBeacon é um aparelho com um Sistema de Proximidade em Ambientes Fechados (do inglês: Indoor Proximity System) baseado no Bluetooth Low Energy, que envia notificações sem fio para dispositivos móveis, desenvolvido pela empresa Apple, lançado em 2013 na Apple Worldwide Developers Conference.
O iBeacon está para ambientes fechados como o GPS está para ambientes externos, pois quando os usuários estão em ambientes fechados que possuem estrutura metálica interferem no sinal de GPS do dispositivo móvel.
O serviço permite que aplicativos em dispositivos móveis como iOS e Android possam captar sinais dos beacons e reagir a esses sinais. Para que isso aconteça utiliza módulos semelhantes a antenas que emitem ondas de rádio baseadas numa tecnologia recém lançada e baseada no Bluetooth low energy (BLE) que visa baixo custo de energia, baixo custo de comunicação sem fio dentro de curtos e médios alcances.
A tecnologia utilizada deriva de uma nova classe de pequenos transmissoresde baixa potência e de baixo custo que podem notificar o usuário sem a necessidade do uso de Wifi ou GPS. De uma forma simplificada, o iBeacon usa um sensor de proximidade Bluetooth de baixa energia para transmitir um identificador universalmente exclusivo, que é captado pela aplicação compatível ou sistema operacional. O identificador e vários bytes enviados junto com ele são usados para determinar a localização física do dispositivo e a partir daí, disparar uma ação baseada em localização como um checkin em alguma Rede social ou uma notificação push. Vários fornecedores fizeram desde transmissores de hardware compatível com o iBeacon a aplicações que se comunicam com esses transmissores.
Com o iBeacon é possível permitir a passagem em determinados locais definidos para aquele utilizador, como também passar em determinados locais e receber alertas sobre determinado serviço.
Por exemplo, com vários iBeacons espalhados em locais estratégicos por um shopping, qualquer loja, plataforma ou app será capaz de saber o local exato onde o cliente está dentro do shopping. O que traz a tona a possibilidade de enviar mensagens de anúncios aos clientes baseados na sua localização e monitorar a conversão efetiva dessa ação em tempo real. As possibilidades de uso são ilimitadas podendo ser usado também em shows, museus, parques temáticos, aeroportos, zoológicos e outros.
Os beacons trazem uma mudança na forma como marcas se relacionam com seus clientes.

## História e Evolução

Em 2013 a Apple apresentou os Beacons ao mundo e especialistas escreviam como isso ajudaria a indústria mundial de varejo, ajudando em ofertas personalizadas e também no pagamento de seus produtos. Ao final de 2013 a Apple já havia instalado e programado Beacons em todas as suas lojas de varejo dos Estados Unidos. O McDonals, acompanhando os avanços, também tem usado os dispositivos para oferecer ofertas especiais para os consumidores em sua rede de fast food.
No ano seguinte, iBeacons e dispositivos semelhantes de outras marcas eram comercializados por cerca de $5 a $30 cada. Cada iBeacon diferente possuía configurações e frequências Bluetooh diferentes. Alguns possuíam uma frequência tão lenta quanto 1Hz, enquanto outros podiam ser tão rápidos quanto 10Hz.
Atualmente a tecnologia batizada pela Apple como iBeacon ainda está em fase de aprimoramento.

## Ações

Os beacons usam Bluetooh Low Energy para detectar a aproximação de outros dispositivos e transmitem um número identificador único que é recebido pelo sistema operacional do dispositivo com o qual ele se comunica.
Após estabelecer a comunicação existem duas ações que podem ser tomadas pelo sistema: uma ação ativa e uma ação passiva.
* Ação Ativa
A ação ativa ocorre quando a comunicação desencadeia uma atividade no dispositivo do usuário. Essas ações podem ser o envio de uma notificação, fazer check-in em alguma rede social, mudar o estado do sistema, iniciar uma ação dentro de um aplicativo, entre outras. um exemplo seria o usuário receber uma mensagem que informa promoções da loja onde ele se encontra no momento em que recebe a mensagem.
* Ação Passiva
A ação passiva visa simplesmente armazenar, seja em memória local ou num banco de dados, que houve uma conexão. Um exemplo seria que com a chegada de uma pessoa portando um smartphone, seria possivel armazenar e saber que tal smartphone se aproximou de tal beacon e armazenar essa informação. De uma forma mais prática, seria possivel saber que tal cliente sempre que vai a determinado supermercado visita a sessão de beleza, por exemplo.

## Funcionamento

Apple padronizou a forma de publicidade do iBeacon. Um iBeacon é composto por 3 componentes.
* Identificador Universal Exclusivo (UUID): O UUID vem em uma sequencia de caracteres de 16 bytes e essa sequência distingue os beacons de uma marca para outras marcas. Por exemplo, se a Macy's tem uma rede de beacons distribuída em todas as suas lojas, todos esses beacons compartilham do mesmo UUID. Isso permite que um app saiba a qual marca pertence os anúncios.
* Major value: Valor principal composto por uma sequência de 2 bytes e é usado para especificar um beacon detro de um grupo de beacons. Se uma marca usa 15 beacons em uma loja específica, todos esses beacons tem o mesmo major value. Sua principal funcionalidade é saber que e quais clientes estão nessa loja.
* Minor Value: Valor composto por uma sequência de 2 bytes e é usado para identificar sinais específicos. Por exemplo, o UUID value indicaria a marca do beacon, o major value indicaria a loja onde ele está localizado, e o minor value indicaria a sessão da loja em que ele está localizado.
Quando se programa qualquer aplicativo que se comunique com um beacon deve-se obrigatoriamente fornecer o UUID. Os valores de Major value e Minor value são opcionais. O dispositivo móvel não envia dados sobre o usuário para o Beacon sem prévia autorização, evitando problemas de privacidade e segurança.

## Funções

Uma instalção de um iBeacon é baseada em um ou mais dispositivos que transmitem seu próprio número de identificação exclusivo para aquela área onde ele foi colocado. A aplicação no dispositivo receptor pode, a partir disso, saber onde está o iBeacon e e executar várias funções , como notificar o usuário. iBeacons não mandam notificações que contenham nada além de sua própria identidade, porém as aplicações com as quais ele se comunica podem acionar suas próprias notificações.

### Região e monitoramento

A região de monitoramento é limitada a 20 regiões, com o iBeacon podendo funcionar como aparelho de escuta (em segundo plano) e ter diferentes encarregados para notificar o aplicativo (e usuário) receptor na entrada ou saída da região monitorada, mesmo o aplicativo estando em segundo plano ou o telefone estando bloqueado. A região de monitoramento também permite uma pequena janela na qual iOS dá a um aplicativo fechado a oportunidade de reagir a entrada em uma determinada região.

### Range

Ao invés do monitoramento que permite detectar se um usuário está ou não em um espaço monitorado pelo dispositivo, o range fornece uma lista dos iBeacons que estão presentes em uma determinada região, juntamente com sua distância estimada do usuário para cada dispositivo. O range funciona apenas em primeiro plano e retorna uma matriz de todos os iBeacons encontrados juntamente com suas propriedades.
A comunicação é feita a partir de uma determinada distância e essa distância é categorizada em três intervalos distintos:
* Imediata: em um curto espaço de poucos centímetros
* Perto: dentro de poucos metros
* Extremo: em distâncias maiores que 10 metros
A comunicação feita por um beacon tem capacidade de saber quando o usuário chegou, o tempo que demorou no local e quando ele saiu. Dependendo da distância, oa aplicativos são capazes de oferecer diferentes níveis de iteração com o usuario.
O intervalo máximo de uma transmissão dependerá do posicionamento, da localização, obstruções no ambiente onde o dispositivo receptor está (por exemplo, uma bolsa que possui um tecido muito espesso). Os iBeacons tem um intervalo aproximado de 70 metros, mas há alguns de longo alcance que podem chegar a até 450 metros.

### Configurações

A frequência da transmissão iBeacon depende da sua configuração. Tal configuração pode ser alterada dependendo de cada dispositivo em específico. As configurações podem ter efeito sobre a duração da bateria.
Os iBeacons vem com uma configuração predefinida e a maioria deles permite alterações feitas pelo desenvolvedor. Algumas das configurações que podem ser alteradas são a taxa e o poder de transmissão e os valores major e minor.
Os valores de major e minor são configurados e podem ser usados para se conectar a iBeacons específicos ou a mais de um deles ao mesmo tempo. Normalmente todos os iBeacons do mesmo local usam o mesmo UUID e usam os valores de major e minor para para segmentar e dividir subespaços dentro do local. Por exemplo, os valores principais de todos os iBeacons em uma loja específica podem ser definidos para o mesmo valor e o menor valor pode ser usado para identificar um iBeacon específico dentro da loja.

## Dispositivos compatíveis

* iOS dispositivos com Bluetooth 4.0 (IPhone 4s e superiores, IPad (3ª geração) e superiores, IPad mini (1ª geração) e superiores, IPod touch (5ª geração))
* Computadores Macintosh OS X Mavericks (10,9) e Bluetooth 4.0
* Android 4.3 + (por exemplo, Samsung Galaxy S3/S4, Samsung Galaxy Note 2/3, um HTC, LG/Google Nexus 2013 7 /Nexus 4/Nexus 5 Um OnePlus, LG G3)
* Dispositivos Windows Phone com Lumia Cyan e superiores. (relatórios sugerem que suporte não está incluído com o Windows Phone 8.1)

## Tecnologias Comparáveis

Em 2015 o Google lançou dispositivo semelhante para competir com o iBeacon. Tal dispositivo é conhecido como Eddystone. Eddystone também tem a capacidade de entregar um pacote de dados e um URI, potencialmente eliminando a necessidade de ter um aplicativo associado a ele e uma funcionalidade mais rica (um exemplo é o pacote de dados capaz de transportar informações do sensor).
Em 2010, uma empresa australiana chamado DKTOB, foi a primeira empresa a desenvolver a tecnologia Bluetooth para detecção de proximidade indoor.
Daelibs projetou e fabricou um beacon Bluetooth para uso em centros comerciais baseadas no chipset Bluegiga. Em 2012 Daelibs arquivou sua patente de beacon Bluetooth.
Laboratórios de pesquisa da Hewlett-Packard desenvolveram a tecnologia de "CoolTown" que combinava software usando a atual tecnologia e beacons. Uma ação comum era ter o beacon transmitindo uma URL em vez de um identificador exclusivo.
Embora o Near Field Communication (NFC) seja algo bastante diferente, ele ainda é comparado com os iBeacons.
* NFC pode ser passivo ou ativo. Quando usando o modo passivo, o poder está nas mãos do dispositivo leitor.
* O range do NFC é até 20 cm (7,87 polegadas) mas a gama óptima é < 4cm (1,57 polegadas). iBeacons têm uma escala significativamente maior.
* NFC pode ser passivo ou ativo. Quando usando o modo passivo, o poder é delegado ao dispositivo leitor. Considerando que, embora Passif (comprada pela Apple Inc.) tem trabalhado na redução do consumo de energia, um bloco da bateria ainda é necessária dentro de marcas de iBeacon neste momento.
* A maioria dos dispositivos Android com Bluetooth 4.0 LE tem suporte NFC.

## Mitos sobre os beacons

Beacons não conseguem detectar a localização geográfica do usuário, ele sabe apenas se o mesmo está longe ou perto do local onde o beacon foi instalado. Todo o restante das tarefas são executadas pelo aplicativo ou através de tecnologias complementares como GPS ou até redes Wifi.
Embora desenvolvidos e apresentados pela Apple, os beacons não funcionam somente no iPhone, mas também em dispositivos Android e Windows. De uma forma geral, os beacons funcionam em qualquer dispositivo que possua bluetooh 4.0 ou superior. Seja ele um relógio, computador, smartphone, um óculos ou qualquer outro.
Beacons não possuem inteligência para realizar tarefas. Como já mencionado, toda a inteligência precisa ser formentada pelo aplicativo que interagirá com o beacon.
Beacons não instalam aplicativos no dispositivo do usuário, o mesmo precisa ter instalado previamente o app para que consiga utilizar todas as funcionalidades e benefícios dessa tecnologia.