14 votes

Est-il possible de faire en sorte que mon MacBook devienne un iBeacon ?

Est-il possible de faire en sorte que mon MacBook devienne un iBeacon ?

Je voudrais qu'il se diffuse aux appareils iOS qui prennent en charge les iBeacons. Si cela est possible, quelles sont les exigences matérielles de l'ordinateur (par exemple, Bluetooth 4.0 est-il suffisant ?) et comment dois-je procéder ?

Mise à jour : Je cherche principalement un moyen de faire cela sans matériel supplémentaire (puisque mon MacBook a déjà le Bluetooth intégré).

6voto

mttrb Points 231

Si vous êtes un programmeur, j'ai publié des instructions sur la façon d'utiliser un MacBook avec Mavericks comme iBeacon. Vous pouvez trouver ces instructions sur mon blog à l'adresse suivante http://www.blendedcocoa.com/blog/2013/11/02/mavericks-as-an-ibeacon/

Si/Quand j'en ai l'occasion, je créerai peut-être une application que vous pourrez utiliser pour faire la publicité d'un iBeacon.

Voici la réponse que j'ai donnée à une question similaire sur Stack Overflow


Mavericks ne dispose pas de la prise en charge iBeacon dans Core Location qui a été ajoutée à iOS 7. Cependant, Mavericks a maintenant la capacité d'agir comme un périphérique BLE. Étant donné qu'un iBeacon est fondamentalement un périphérique, il devrait être (et il l'est effectivement) possible d'utiliser Mavericks comme un iBeacon.

Afin de créer un iBeacon sur iOS, vous devez d'abord créer un CLBeaconRegion puis utiliser l'objet peripheralDataWithMeasuredPower: pour obtenir un NSDictionary contenant les données publicitaires nécessaires à la diffusion. Si vous prenez le contenu de ce NSDictionary à partir d'un appareil iOS et l'utiliser sur Mavericks alors vous obtenez un iBeacon.

J'ai créé une classe pour vous faciliter la tâche et vous permettre de générer le dictionnaire de données de l'annonce directement sur Mavericks. Le code source est disponible à l'adresse suivante https://github.com/mttrb/BeaconOSX

El BLCBeaconAdvertisementData la classe prend le proximityUUID , major , minor et les valeurs de puissance calibrées et crée un dictionnaire NSDictionary qui peut être transmis à l'outil de gestion de l'énergie. startAdvertising: méthode de CBPeripheralManager sur les Mavericks.

El BLCBeaconAdvertisementData est assez simple. Le travail principal est effectué par la méthode suivante :

- (NSDictionary *)beaconAdvertisement {
    NSString *beaconKey = @"kCBAdvDataAppleBeaconKey";

    unsigned char advertisementBytes[21] = {0};

    [self.proximityUUID getUUIDBytes:(unsigned char *)&advertisementBytes];

    advertisementBytes[16] = (unsigned char)(self.major >> 8);
    advertisementBytes[17] = (unsigned char)(self.major & 255);

    advertisementBytes[18] = (unsigned char)(self.minor >> 8);
    advertisementBytes[19] = (unsigned char)(self.minor & 255);

    advertisementBytes[20] = self.measuredPower;

    NSMutableData *advertisement = [NSMutableData dataWithBytes:advertisementBytes length:21];

    return [NSDictionary dictionaryWithObject:advertisement forKey:beaconKey];
}

J'ai publié un article de blog plus détaillé à ce sujet à l'adresse suivante http://www.blendedcocoa.com/blog/2013/11/02/mavericks-as-an-ibeacon/

4voto

leanne Points 486

1) Vous devez vous procurer un émetteur/récepteur Bluetooth 4.0 BLE (Bluetooth Low Energy) à fixer/installer dans votre MacBook.

Cela vous permettrait de transmettre le signal de la balise.

2) Il vous faudrait créer ou acheter un logiciel capable d'utiliser le chipset de manière appropriée.

Cela vous permettrait de reconnaître la présence d'appareils équipés de balises à proximité, comme les nouveaux iPhones, et d'interagir avec eux de manière appropriée.

Voici un site qui donne plus d'informations sur les iBeacons et le BLE, avec de bons exemples de vidéos (en fait, le lien se trouve dans la rubrique "iBeacon" de la question initiale) :

Les iBeacons d'Apple expliqués - Ce que c'est et pourquoi c'est important - Pocket-lint

Voici un lien vers une société qui vend des émetteurs/récepteurs BLE à usage commercial (mentionnés dans l'article ci-dessus). Ce site donne également un aperçu du fonctionnement de cette technologie :

Balises Estimote - le contexte réel pour vos applications

Ce site donne des détails sur la BLE :

Site web sur la technologie Bluetooth à basse énergie

Alors je dirais, mettez votre chapeau d'ingénieur et commencez à chercher des chipsets et des solutions logicielles !

Amusez-vous bien !

Edit :

Un autre nom pour BLE est Bluetooth Smart. Recherchez du matériel et/ou des logiciels qui sont Bluetooth Smart (uniquement BLE) ou Bluetooth Smart Ready (à la fois Bluetooth traditionnel et BLE). Certaines listes se trouvent sur le site Site web de la technologie Bluetooth (comme ci-dessus), et une recherche sur Google fait apparaître quelques applications déjà créées.

Une autre recherche fait apparaître un document destiné aux développeurs Apple :

Directives de conception Bluetooth d'Apple (depuis leur centre de développement)

et un outil de développement rapide pour les développeurs Apple (de bluetooth.org) :

Apple Developers | Portail de développement Bluetooth

2voto

cuomo456 Points 21

J'ai utilisé un petit outil appelé MactsAsBeacon. Tout ce que vous avez à faire est de télécharger le fichier .app et de l'ouvrir. Il vous permet ensuite de définir les valeurs UUID, Major, Minor et Power.

https://github.com/timd/MactsAsBeacon

0voto

leo Points 11

Créez une VM qui fonctionnera comme un iBeacon.

http://developer.radiusnetworks.com/ibeacon/virtual.html

)

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X