Code Monkey home page Code Monkey logo

phonegap-estimotebeacons's People

Contributors

anulman avatar charlotteip avatar cmenscher-hyatt avatar cupojoe avatar fredrikeldh avatar hypermurea avatar johanneslagos avatar kdzwinel avatar ryanblakeley avatar ttcremers avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

phonegap-estimotebeacons's Issues

Crash on iPhone 5s / iOS 7.1

Hello,

Thanks for all your work. We've been following your progress on the development. I've added this plugin to my project, and ran it via xcode. I'm getting the error displayed in the screenshot.
Is this an XCODE error due to the latest version?

screen shot 2014-03-20 at 10 05 35 am

I am using:
iPhone 5s IOS 7.1
Xcode 5.1
Current plugin - march 20 (from repo)

I am successfully adding the plugin to phonegap, and building for IOS. Not build errors in xcode until i run it on the device. The app crashes at this point (see screenshot).

I'm not an expert at xcode, so please be patient. :)

Thank you!

PhoneGap:Build support

I would love to be able to use this with an app on PhoneGap:Build. I hate building locally.

It sounds like plugman is working for you, so maybe it's as simple as submitting it? If you need help, let me know. I'll do my best!

Unable to retrieve RSSI and Distance while connected

Hi,

I successfully manage to connect to my Estimotes using your library,
But when I use the method getConnectedBeacon, I successfully get the informations about the beacon, but the value of the RSSI field is always 0, while the distance field stays at -1.
I tried this with 3 different estimotes, moving back and forward from them, but nothing change.
However, when i'm not connected, I get a correct RSSI value while RangingBeaconsInRegion..

Thank you for your help,

Vincent.

cant run example app

awesome ideia to make this plugin, i use phonegap a lot to make apps, and now i bought Estimote Beacons and tried to run the example app with xcode, but after doing all the steps that are on the readMe file on the examples folder it always say:

"CDVPlugin class EstimoteBeacons (pluginName: estimotebeacons) does not exist"

any ideia? thanks in advance

Monitoring doesn't display all information

Hi,
I'm trying the beacon-finder example.
In the monitoring section I see the beacon and those are the information displayed:
State: inside
Major: undefined
Minor: undefined
Identifier: EstimoteSampleRegion
UUID: myUUID
(the UUID is well displayed, this is an example)

Why can't I see the Major/Minor number?
I've test the app on Android 4.4.4 (Nexus5) and iOS 7.0.3 (Ipad Mini) but this issue remains.

Will this work with other iBeacons?

It seems a lot of these libraries are for Estimote beacons only, what technical differences are there that stop it working with other iBeacons, I presumed they all used the same BTLE protocols?

Virtual beacon support

Hey, is there any way to use create a virtual beacon using this plugin? The startVirtualBeacon function is commented out, but I can't find any explanation what that means. I've naively removed the comments for it from the in EstimoteBeacons.js as well as EstimoteBeacons.h, but I guess it's not enough.

I'm happy to contribute with a little guidance to make it work or at least to get a HELL NO from one of the devs. Thanks!

Terminating app: Range Beacons and Monitor Regions

I'm running the example on my iPhone from terminal. The "Scan Beacons" button is working. The "Range Nearables" button takes me to a blank screen, but the app does not terminate.

Pressing "Range Beacons" or "Monitor Regions" is terminating the app.

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[CLBeaconRegion inMotion]: unrecognized selector sent to instance 0x1610fa00'

What's this all about?

Phonegap Version and Virtual Estimote

Does this have a dependancy on specific phonegap versions?

I have been unable to get the example app to detect a virtual estimote, should virtual estimotes work?

Adding support for Estimote Secure UUID

We are using your plugin and are very pleased by it, but we would like to use more security for our App. When do you plan on supporting the new Secure UUID mode and the latest SDK ?? https://community.estimote.com/hc/en-us/articles/204233603-What-is-Secure-UUID-and-how-does-it-work-

Based on what we see, implementing Secure UUID should be rather straightforward: update the SDK, add support for setting App ID and Tokens, and finally, a "secure" flag on beacon regions.

Any thoughts ? Also, we would be more than happy to help testing it !

Thank you

Android: notify when Bluetooth is not enabled

When running one of the plugin's functions on Android while the device's Bluetooth is turned off, there is no notification about that Bluetooth needs to be turned on.

In Estimote's Android-SDK Demo application there will be a dialogue asking whether the user wants to turn on Bluetooth, when a function requiring this is run, e.g. when running its "Distance Demo" activity, which shows that this functionality is available in the SDK.

Update major/minor

Hi kdzwinel,

is it possible to update major/minor through the plugin?

In general, are there plans for keep supporting the plugin and adding new methods?

Thank you

How to keep plugin from loading on non iOS 7 devices?

Thanks for the great plugin. I've got it working in Cordova 3.3 in 7.0 and 7.1.

However, the app I'm building is targeted for iOS 5.1 and above (iBeacons are not central to the overall app). Any attempt to run the app on anything less than 7 results in a fatal error on startup:

dyld: Symbol not found: OBJC_CLASS$_CLBeaconRegion

Obviously, iBeacons aren't supported in anything less than 7.0, but do you know of a way to conditionally load the plugin? I have code in onDeviceReady handlers to detect iOS version and not execute any of the iBeacon code, but it fails before it even gets to any of my code.

kdzwinel

Hi kdzwinel,

First of all thank you for your work,
Unfortunately I didn't manage to use your library successfully, and this after many trials.
I don't think I have installation problems since I succesfully use others BLE libraries.
However, when I put, for example, "EstimoteBeacons.startRangingBeaconsInRegion(app.display("hello")); " in the app structure of my file index.js ; it does compile well but nothing happens with this call and the following ones.

Do you have any idea ?

Thank you.
Vincent.

Android +Example Project Error

Hi,
I have been trying to use this plugin with Estimote beacons,android device and cordova/phonegap. There are not errors in the download process and I have followed all the troubleshooting steps.

However when I run the example project provided. Nothing is displayed other than "Connecting to Device","Device Ready","Searching for Beacons".
The demo app provided in the PlayStore works fine and I am able to see the detected beacons.

I have not changed the code in the examples project.

Is this plugin compatible with android? Had anyone used it with an android device?

If no are the other plugins which would work with an android device??

I would really appreciate any advice, help

Issue with update to ios 7.1

Hi kdzwinel,

I'm currently using your library to display infos about estimote beacons.
Everything worked fine before but since I did the update to ios 7.1 it doesn't work anymore.
The problem comes when I call the function EstimoteBeacons.getBeacons, the calling is successful but the function doesn't find no beacons, althought there are..
I tried to print both newBeacons.length and beacons.length, they stay at the value 0.

Have you heard about a similar issue ?

Thanks.

Sample app doesn't find beacons

I followed the instructions to build the beacon-finder example for Android. After the build we're supposed to enter the command

adb install -r platforms/android/ant-build/BeaconFinder-debug.apk

However, this file does not exist after building. Instead I tried using the file that was listed in the build output:

[echo] Debug Package: /home/sam/phonegap-estimotebeacons/examples/beacon-finder/platforms/android/ant-build/CordovaApp-debug.apk

This produces the message below, and sits there until I kill it manually.

error: device not found
- waiting for device -

I've also tried omitting this step altogether. When I skip this and proceed with cordova emulate android, the app runs, but my beacons don't show up when I click Scan. The beacons show up in the BLE scanner that I downloaded on my android phone.

Does this have anything to do with not being able to install the debug package? If not, what else might be behind this?

beacon.distance fluctuating

Are there any good techniques for determining a reasonably reliable and consistent distance? I'm seeing a lot of random fluctuations from meters away to cm away. I've tried averaging out the 10 most recent distances returned for a specific beacon but even that fluctuates over time...

Despite the effect on the battery, would increasing the power of the beacon (setPowerOfConnectedBeacon) improve distance accuracy?

startMonitoringForRegion causes App to crash on new SDK

Hi, I've recently updated the plugin version on my project from 0.4~ to 0.6.0. With this I have had to update to support the new estimote.beacon calls which makes sense with the nearable additions.

Upon testing I have discovered that if you try to start monitoring for a region whilst bluetooth is turned OFF, the App will completely crash out.

Xcode log:
-[CLBeaconRegion inMotion]: unrecognized selector sent to instance 0x1536be00
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[CLBeaconRegion inMotion]: unrecognized selector sent to instance 0x1536be00'
*** First throw call stack:
(0x23e7949f 0x31633c8b 0x23e7e8b9 0x23e7c7d7 0x23dae058 0x25d6a5 0x256963 0x194d0b 0x195747 0x25afe3 0x245390d5 0x24533c2b 0x2452d9a1 0x23e3fd7d 0x23e3f041 0x23e3db7b 0x23d8b3c1 0x23d8b1d3 0x2b1890a9 0x273997b1 0xfda07 0x31bb3aaf)
libc++abi.dylib: terminating with uncaught exception of type NSException

Any ideas?

UPDATE

This also happens when updating to version 0.7.0

estimote.beacons.authorizationStatus asks the user to turn on Bluetooth

In older versions of the plugin, you can determine the location permission status and then act with ranging/monitoring which would cause a bluetooth dialog to display if not enabled. In the latest version of the plugin when you try to determine the location permission status it asks the user to turn on their bluetooth which can get very annoying (I check this in a backgroundFetch so the App is asking the user to turn on their bluetooth every 10 minutes or so even when not using the App!).

App not running (command line) "phonegap serve"

Don't know if it's possible, but I'm trying to run a "estimotetest" using the "phonegap serve" command.

This is supposed to work or will work just if I use Xcode?

Thanks a lot and congratz on the plugin.

working in the background?

I am new to estimote beacons and phone gap. My question is:
Can we use this to open an application (working in the background) when the phone realizes a beacon? I mean something as in the estimote advertisement videos where some guys go to restaurant and gets notification from an application.

startRangingBeaconsInRegion returns error "Invalid action"

Hello,

Help is appreciated!

I have the problem, that the plugin does not work at all - it keeps returning Invalid action when called like this:

EstimoteBeacons.startRangingBeaconsInRegion(
{}, // region - hier könnte man die zu empfangenden Beacons einschränken
startRangingBeaconsInRegionCallback,
onError
);

I also built the beacon-finder to verify, whether it is my code that is making problems, but this also doesn't work..

Any hints?

Kind regards
Christoph

Support for latest SDK

I followed the instructions and getting these errors. Can someone guide me in the right direction?

image

Background notifications

You played with this PhoneGap plugin and heard that searching for beacons works when your app is in the background? Read on.

What is possible?

It is possible to show a push message (or do something else) whenever someone enters or leaves a region. If your app requests startMonitoringForRegion it will receive didEnterRegion and didExitRegion events even when working in the background.

What is not possible?

  • Only startMonitoringForRegion will work in the background. startEstimoteBeaconsDiscoveryForRegion or startRangingBeaconsInRegion won't.
  • Your app won't receive didEnterRegion/didExitRegion if it was killed, closed or never opened by the user.
  • You can't set how far from the beacon user should be for didEnterRegion/didExitRegion events to fire. You can however change power of the beacons.

So, is that possible with this PhoneGap plugin?

This plugin does have a partial, undocumented support for startMonitoringForRegion (https://github.com/kdzwinel/phonegap-estimotebeacons/blob/master/www/EstimoteBeacons.js#L80). I'm still working on this ( #2 ) and all help will be apreciated. However, the big issue is that native app receives didEnterRegion and didExitRegion events but it's not passing them to the PhoneGap / JavaScript app. I'm not sure what's the reason for this (maybe webview doesn't work in the background?), so again, all help that can help me fix that will be appreciated. In the POC app that my company made, we decided to bake notifications support into the plugin (you can add it to EstimoteBeacons.m > didEnterRegion).

plugin does not work in android < 4.3

I have installed the latest version but it does not work on android < 4.3, the app crashes during starting. Is it compatible with this versions? The iOS version works normally.

startMonitoringForRegion / background app

Hello,

First of all, thanks a lot for this great plugin.
I've been able to install it using phonegap CLI and I can get startRangingBeaconsInRegion working properly.
But It seems I can't find a way to have the startMonitoringForRegion working when the app is in background and therefore can not send push notifications when people enter a region. I set the app in Xcode to work on background and checked all bluetooth and notification related items.
I read the point 8 you mentioned, but I'm not sure I did understand every points, wether it is already doable or not.

I tried to find a way to use getBeacon within the setInterval and link an action when a specific beacon is in range, but the setInterval doesn't work when the app is in background.

Do you know if there's already a way to have this plugin running on background and what function I should use ?

Thanks a lot for your help

R.
JB

Build errors: ARC Semantic Issue

Hi,
We are trying to build a Cordova app using your plugin but at build time we get the following errors:

/projects/helloworld1/helloworld1/Plugins/EstimoteBeacons.m:248:35: error: no visible @interface for 'ESTBeacon' declares the selector 'writeBeaconFrequency:withCompletition:'
            [self.connectedBeacon writeBeaconFrequency:[frequency shortValue] withCompletition:^(unsigned int value, NSError *error) {
             ~~~~~~~~~~~~~~~~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/projects/helloworld1/helloworld1/Plugins/EstimoteBeacons.m:299:35: error: no visible @interface for 'ESTBeacon' declares the selector 'writeBeaconPower:withCompletition:'
            [self.connectedBeacon writeBeaconPower:powerLevel withCompletition:^(unsigned int value, NSError *error) {
             ~~~~~~~~~~~~~~~~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/projects/helloworld1/helloworld1/Plugins/EstimoteBeacons.m:319:31: error: no visible @interface for 'ESTBeacon' declares the selector 'updateBeaconFirmwareWithProgress:andCompletition:'
        [self.connectedBeacon updateBeaconFirmwareWithProgress:^(NSString *value, NSError *error) {
         ~~~~~~~~~~~~~~~~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Is there anything we are doing wrong? Or is it an issue?
Also, could you provide details on how is the plugin used?
Thanks for your help,
Jordi

Documentation incorrect

The actual object to be used for these calls is a lowercase "e" in "estimoteBeacons" and not the uppercase class/function name "EstimoteBeacons".

xCode 5 errors

I had to comment these sections out

xCode 5
iOS 7
cordova 3.2.0

xcode-error

iOS 8 Support

Hi
Not sure if you are working adding support for the new iOS 8 core location changes. I had to update my local version to make my app work. Be happy to provide you the code, although not tested (very much).
Let me know
Joe

crash on ios5

Hi there,
First of, thanks for the code :)
I grab the code two month ago, it works great on my ios7 device with the estimote virtual beacon, and my app can open on ios5 device as well (yes, i know ibeacon require ios 7).

However, when i download the latest version of estimote virtual beacon, it seems not working anymore, i suppose i need to update the app with the latest version 1.2

i redo the same procedure, the problem see is that app crash on ios5 device.

getBeacons does not find any beacons

Hi,

When I try this, getBeacons does not find any beacons when I use startRangingBeaconsInRegion. However if I specify my own beaconregion with the uuid of one of the beacons it does work.

static NSString * uuid = @"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"; <-- my beacon UUID is here
static NSString * beaconID = @"com.XXX.XXXX";
static NSString *resultMsg=@"Starting";

  • (void) testCall:(CDVInvokedUrlCommand*)command{
    NSLog(@"Looking for beacon");
    NSUUID * uid = [[NSUUID alloc] initWithUUIDString:uuid];
    self.beaconRegion = [[CLBeaconRegion alloc] initWithProximityUUID:uid identifier:beaconID];
    [self.beaconRegion setNotifyEntryStateOnDisplay:YES];
    [self.beaconRegion setNotifyOnEntry:YES];
    [self.beaconRegion setNotifyOnExit:YES];
    // Location manager.
    self.locationManager = [[CLLocationManager alloc] init];
    self.locationManager.delegate = self;
    [self.locationManager startRangingBeaconsInRegion:self.beaconRegion];

This part finds the beacon... but when I use your code getBeacons - does not return any beacons.

Any ideas?

Thanks

Mike

window.EstimoteBeacons.startRangingBeaconsInRegion - does nothing....

Hi, I've been trying to implement this for sometime now and have debug statement everywhere!

I've narrowed it down to when the initial window.EstimoteBeacons.startRangingBeaconsInRegion() function is called in BeaconManager. This seems to do nothing.

I've no errors in either console (browser / XCode).

Have bluetooth & Location services on.

The beacon is showing up on the estimote app.

Here is a screenshot of my app hierarchy
screen shot 2014-07-30 at 3 18 06 pm

Thanks

Trouble adding SDK to project

Hi! First of all, thanks for your work on the phonegap plugin.

I tried to use your plugin, but could not get it to work. I built the ios version, opened the xcodeproject and added the estimote sdk. When I try to build it, the linker gives me this error:

ld: symbol(s) not found for architecture i386

image

I'm totally clueless of how to solve this problem... Can you give me any pointers?

getBeaons doesn't return when beacons aren't in range

Hi Konrad,
first of all, thanks for the plugin .. it is working pretty well for me and I was able to get it working right out of the box.

I'm actually not sure if it's an issue or behaving correctly, but if I have setInterval polling for the beacons and I walk away from them, the plugin appears to hang and never recovers.

have you seen this behavior before?

tx, Chris

Installing issues?

Hi, i've installed as per instructions but have having errors:

For both of these lines: Error - Unused Entity Issue

NSString* regionid = [command.arguments objectAtIndex:0];
ESTBeaconRegion* regionFound = nil;

Can you advise? Thanks

Background notifications [was: Phonegap]

Hi,
Thank you all for your efforts in making this wonderful software. Is there an option available for push notifications even when the app is not running? This feature is available as 'enter' and 'exit' range option in the ios SDK.

Thanks

Not all beacons are discovered everytime

Hi,
I just got my beacons and i'm playing with this phonegap example. I saw that from time to time not all my beacons are discovered. Some times it only discover one or two. I would say its one per ten times. Beacons are placed next to each other (1-2 meters from my phone). Is it expected behaviour ? I have too old phone ? (iphone 4s). Is it connected with too frequent ranging ? Or maybe i should play with startEstimoteBeaconsDiscoveryForRegion method ?
Please advice !

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.