2015-07-20 95 views
0

有沒有人知道如何通過uBudu網狀網絡接收消息?uBudu網狀網絡接收消息

我正在使用uBudu信標進行應用程序的開發,一般想法是允許用戶通過這些信標向對方發送消息。我已經成功地連接了iOS-Mesh-SDK,如下所述:https://github.com/Ubudu/IOS-Mesh-SDK

有一個例子如何發送網狀信息到另一個信標,它的工作原理是完美的,但至於從信標檢索這些消息到用戶應用程序,我不知道。

有在MeshBeacon類方法:

- (void)abortMeshMessage; 
- (void)clearMeshMessageQueue; 

- (void)setMeshNotification:(BOOL)enable withCompletionBlock:(UMeshBeaconSuccessBlock)completionBlock; 

,但沒有有關檢索消息。

任何建議,非常感謝!

回答

0

我發現也許蠻力,但工作解決方案爲這個問題。

首先,我們需要爲自己的BeaconManager

UBUMeshBeaconManager.sharedInstance().delegate = self 

在實施委託方法的委託,連接到最近的信及其外圍委託重置自我。

func meshManager(meshManager: UBUMeshBeaconManager!, didUpdateVisibleAndConnectableNodes meshNodes: [AnyObject]!) { 
    UBUMeshBeaconManager.sharedInstance().connectToClosestBeacon({ (meshManager, meshBeacon, userInfo) -> Void in 
      meshBeacon.peripheral.delegate = self 
     }, progressBlock: { (meshManager, userInfo) -> Void in 

     }, failedBlock: { (meshManager, meshBeacon, userInfo, error) -> Void in 

     }) 
} 

並等待Peripheral Delegate方法中的特性更新。所有的服務和特色將由UbuduSDK在幕後設定。

func peripheral(peripheral: CBPeripheral!, 
       didUpdateValueForCharacteristic characteristic: CBCharacteristic!, 
       error: NSError!) { 
    var string = NSString(data: characteristic.value, encoding: NSASCIIStringEncoding) 
    println(string) 
} 
0

正如您正確指出的那樣,SDK還沒有接收消息的方法,但支持此功能的庫有更新。

+0

您是來自uBudu支持團隊還是您的想法? – Huralnyk

+0

在這種情況下,setMeshNotification:withCompletionBlock:do方法是什麼? – Huralnyk