Using iBeacons for employees attendance - ibeacon

Is it possible to replace access cards and attendance checkin/out by installing iBeacons network? the main concern is how to know if the user is entering or existing the premise.

Yes, this is possible. I have worked with a number of folks who have tried this. But there are challenges:
It only works for employees with Android and iOS phones that support BLE, have a company app, and have Bluetooth turned on.
Phones that are turned off, in airplane mode, or have a dead battery will not detect.
You must either have full coverage of the office using BLE beacon signals (requiring lots of beacons) or rely on beacons at entry/exit points. If you rely on entry/exit points you never know for sure if employees are coming or going.
You need a web app to receive detections and show the attendance reports.
Employee phones must have data connectivity to send the detections to the server. If there is bad coverage on site, this will fail.

Related

Maintaining and organizing purchases on multiple platforms

I have an application for various platforms. Let them be iOS, Android and Windows. In order to use a app, a monthly fee needs to be paid, but it just needs to be paid once in order to use all platforms. It is the same as with Spotify, so by paying once, every platform can be used.
According to the guidelines of Google and Apple, I need to offer In-App Purchases for the monthly fee. The system is connected to user accounts, which are managed by a server, which is in my control. I am storing the subscription data of users, so if a user uses the In-App Purchases on iOS, the information is transmitted to the central server in order to unlock the Android-App as well (in case it has been paid on another platform already)
The problem is the following scenario:
A user has a valid subscription which has been payed via Google Play. The iOS and Windows apps are unlocked as well. Now the user uninstalls the Android app, goes to the Google Play website and cancels the subscription. In the current scenario, I am not able to detect this and the subscription will be valid for all other platforms.
The question is:
Is there any pattern to circumvent this problem? Spotify and co are solving this issue as well, so there must be a solution for this
Well, the server that handles the authorization of the user (that is, your server) should query the Google Subscription API, to check if the current subscription is still valid. Each SubscriptionPurchase Resource contains information about when the subscription expires.
(see https://developers.google.com/android-publisher/api-ref/purchases/subscriptions)
For Apple, the same stuff applies: You will get a receipt, and with that receipt, you can query the server at any time to check if that subscription is still valid.
There is a slide which summarizes these points and the pitfalls very well: https://speakerdeck.com/rosapolis/the-recurring-nightmare-cross-platform-in-app-subscription-purchases
Bottom line: You won't be able to make that happen without a server that does the communication between the two stores. It comes with issues, though, as the slide shows.
Bonus: The talk from which the slides are taken is also on Youtube

How to enable SMS to existing landline?

Looks like you can add sms to existing toll free phone numbers but keep voice with the existing carrier. Is this possible with a regular landline without porting to Twilio? How can other companies do this (zipwhip)?
They work through an inter-carrier vendor like TNS, Aicent, or iQuall. These vendors basically all do the same thing - which is to provision and store SMS routing instructions for all US-based phone #s... these are all aggregated in one big central repository.
Example: if you're on T-mobile, whenever someone texts your phone # (from any carrier or platform) it hits this routing network that tells the message to get posted to t-mobile. Companies like zipwhip do the same thing, they just tell the network to enable SMS for that landline number, and the instructions just tell the network to point any messages back to their cloud.
This is only possible because the overall telecom industry agreed to support intercarrier messaging back in 2001. (source: CTIA)
Twilio has a private beta for routing SMS from toll-free numbers. You can DIY, just a little more work.
Updated answer: it is now possible to SMS host an existing landline, toll-free, or in some cases an existing VoIP phone number via Twilio. The voice routing and voice provider will not change.
Note that you cannot "roll your own" functionality today to make this happen because you need permission to write to the NetNumber database. And you're not going to be able to get permission to do so as an individual.

WP7 send toast from one device to another

Just wondered if it was possible to send a toast from one WP7 phone to another.
Example of use:
User A presses a button on their phone to alert other users driving nearby with status "empty" that they are needed at the GPS location of User A
If anyone can provide some insight on if this is possible, and how it can be done, it would be great.
Thanks,
Can you?
No.
If I understand your question correctly, no it is not possible.
I understand your question to be "can I do this without having to implement something on a server somewhere?" And the answer to that is unfortunately "no".
What you will need to do as #softarn and #MrMDavidson alude to, you will need to implement something on the server.
But why not?
The reason for this is pretty simple. IF it was possible to do this, then it would open the door for abuse. Imagine if, without having to go through a Microsoft server, I could write a bit of code that would send push notifications constantly to all my users (who had downloaded my app of course). What happens if my users are on data plans that charge per bit? Well I've just screwed over a whole bunch of my users, and not only are they upset with me, they're upset with their stupid phone. Alternatively, what if Microsoft wants to give all windows phone users the option to get push notifications only every 15 minutes instead of immediately? Well, without operating as a go-between, Microsoft would be entirely unable to provide such functionality.
Here's how to fake it
So, in order to interact with toast notifications, it's a requirement that Microsoft gets to play middle man, so if needed, they can pull the plug on / monitor / regulate toast notifications on behalf of the user.
If you wanted to implement a bit of server code that emulated this behavior, that is certainly possible. As #MrMDavidson says, you'd basically need to take the following steps in the architecture of your app:
User's GPS location changes
WP7 app contacts a server that you own, notifying it that the user has moved
Your server code makes note of this, storing the data in a SQL database
After storing your new location, the server scans the SQL database for all other users of your app who are "nearby" and have their status set as "empty"
For each of the users in the database that match the criteria of being (a) nearby, and (b) having an empty status, the server code calls the user's "channel uri", sending the desired message
To your users, it's all the same
This would effectively accomplish your goal, and from the perspective of users, the experience would be seemless, and for all intents and purposes it will appear as if they got a notification directly from another user's phone.
Hope that clarifies things, I did assume you're familiar with the general workflow of sending Toast Notifications.
Happy coding!
Provided that User A's phone knows the push notification URI for User B's phone then, yes, you can send notifications from one phone to the other. However the question becomes; How do you distribute User B's notification URI to User A's phone? You'll either need an "offline" mechanism (email, for instance) or a server to act as a central repository. You're probably better off having a service layer over the top of the push notifications though to manage user-to-user relationships. Then User A's phone can say "Tell my friends that they're needed!". This can be an async-fire-and-forget call to your server. Your server can then implement retries and parallel execution to notify all User A's friends that they're needed at the location.
Yes of course it is possible. Read on to how push notifications work, though I don't think it will be as easy as you think. You'll need (I think) a server that the phones communicate through.

broadcasting data to mobile devices

I working on a project were mobile users can receive alerts based on diferent factors, the server side will be implemented using the MVC framework.
My question is regarding the client side; what would be the most efficient way to send the alerts to the clients? is there any way to broadcast the alerts to each device or do I have to set up some system where each device pulls the data from the server on an interval of mins/seconds? I am afraid pulling the data every X secs/mins would create an unnesesary overhead on the mobile devices.
One way would be using SMS but SMS gateway services are expensive and not on my budget right now.
I haven't personally tried it, but this service might work for you:
http://www.airgramapp.com/api
It is free for limited use. Downside is it appears to be a separate install on the mobile device. This might means less control of the content of the message or its look. Upside is it looks quick and easy if you just need a proof of concept at this point.

BULK SMS, Long Codes (VMN MSIDN), T-mobile?

Does any US wireless carrier offer individuals or companies with a direct connection to the SMSC?
The number is 747-772-3101 (repalce 7's with 6's)
This number is registered to t-mobile, also verified by t-mobile to be a valid subscriber sending 160,000+ text messages monthly and that all they have is an unlimited text messaging plan on top of the cheapest voice plan. This company of the number verified to me that they don't use gsm modems as they are too slow.
So I know it's possible but who would I contact, Sales or anyone else reachable through a 1-800 is ignorant to these services and developer.t-mobile is worthless and doesn't reply to emails.
Any info??
Most likely they are connected to an Aggregator (Sybase 365, Mblox, Netsize, Verisign, etc. Smaller guys like multimode and Clickatell are more open to this) that is connected to T-Mobile. As they have chosen to not use a shortcode they simply buy a regular T-Mobile SIM/MSISDN and use the full longcode as the origination address of the messages.
A lot of companies use aggregators to enable Oracle Applications Server to send SMS messages.
does anybody have more info on this????
i did a little investigation and here is what i have determined. the company that the long code is tied to is broadtexter.com. they offer a free service to people who want to follow bands/comedians/acts/ etc. you basically join their fan club.
when i text help to the phone number it immediately autoresponds from that same number. that means they are either using an agg with a dedicated vmn (totally possible) of they are using a mobile modem with a sim (totally possible as well, and probably cheaper), but basically all they are doing from this phone number is pushing traffic to their website.
once you go to their website and sign up to a fan club; ALL FUTURE COMMUNICATION is mo/mt thru the SMTP gateway. dead giveaway is that they ask for your carrier when you sign up. second dead givaway is the caller id is xxxxxxx#broadtexter.com every time.
so the simple answer is that they are only using the vmn (long code) to drive people to their website to sign up...then all future communication is over SMTP. so the 160K+ messages are occuring thru the SMTP gateway. since they appear to be non-commercial (no ads, no spamming, etc.) and they are somewhat of a peer to peer setup, they probably fly under the radar (or are accepted by) the carriers.
if anyone can offer more insight to this, i would love to read it!
I've got more info, and its kinda blowing my mind. I'm interested because I've got a social networking website and I'd like to set up an interactive SMS service without a shortcode. So I went to one of the profile pages on broadtexter.com and used their flash widget to join that bands club. I entered my mobile number and for provider I choose AT&T - option 1 (there were 3 options listed). Almost immediately I got a SMS asking me to reply with a Y to confirm. Here's the crazy thing: The number it was from was 1 (410) 000-001. At first I thought it was a regular cell number, then I realized it's missing a digit. Unless the area code is actually 141 and my iPhone is just formatting it weird. Except 141 isn't an area code?
Next, I replied with a Y and I got another text that asked me to reply with a photo for my profile (something that would be prefect for my site). This time the text from from 1 (410) 000-002.
So I sent back an MMS with a pic from my iPhone gallery, and I didn't get a reply yet. It's been about 15 minutes. It's kinda weird because to sign into their site, I need a username, which they never gave me. I haven't given them my email yet either. Anyway, I don't really care about that. I just wanna know what's going on with those numbers? How are they doing this?!

Resources