How Did GroupMe verify my number? - iphone

I am working on an iPhone application where I need the user's phone number. From what I've read (here for instance - Programmatically get own phone number in iOS), the device's phone number is not available within your application's container. I've always had the user enter his or her own number. But when I joined GroupMe the other day, after clicking the Get Started button, my phone opened up a drafted text message to some US area code number "Send this text to verify your phone number(b2bd308eb7)" After I sent the text, the app knew my number....how does one implement a system like this?

What GroupMe does is use the MessageUI Framework ( http://developer.apple.com/library/ios/#DOCUMENTATION/MessageUI/Reference/MessageUI_Framework_Reference/_index.html) to send a text message to their servers.
Basically it works like this:
The app is turned on and calls the server.
The server responds with a code b2bd308eb7.
The app sends that code via SMS to the server.
The server gets the code and your phone number (from SMS) and confirms them.
Your phone number and app are connected!

They send a text message to some service that they can query with their server. So by sending the code to the server, they can verify the number,

Related

AWS Lambda & Cognito - Updating user phone number attribute without sending an SMS

I am working on an iOS app using Amazon Web Services and I am setting up a user data base using the Cognito Userpool. During the sign up process, if a user enters the wrong phone number by mistake and in result isn't receiving a verification code, I am trying to allow them to then enter a new phone number, and update their phone number user attribute. Right now I am using a Lambda function which uses the AdminUpdateUserAttribute function, which is then connected to a APIGateway which allows me to run it from XCode. The function itself works and it successfully updates the phone number attribute.
Problem
The problem that I am running into though, is that after the phone number attribute has been updated with the Lambda function, a verification code is automatically sent to the newly updated phone number via SMS. The verification code is weird though because when I use that code to confirm the user, it doesn't work. Meaning that code is invalid for confirmation purposes. But if I use the Resend Confirmation Code function it will then send a valid confirmation code to the newly updated phone number.
Question
So I guess the questions I have are:
How can I prevent the automatic SMS from sending after I update the user's phone number attribute?
Or, is there a way I can use the verification code that is automatically sent as a confirmation code?
Thank you in advanced.

send an SMS to a specific mobile number automatically after recieving an e-mail from a specific sender and subject

Using O365, i want to be able to send an SMS to a specific mobile number automatically after recieving an e-mail from a specific sender with a specific subject.
What is the best way to do this?
First, you need to set up the mobile number as so:
Open Outlook Web Access in your browser. The standard address is usually: https://mail.yourcompanydomain.com/owa. It’s important to note that you need to go to Outlook Web Access.
Log in using your Office 365 username and password.
Select Options – located in the top-right of the window – followed by See All Options.
Click Phone from the list on the left side of the window and then Text Messaging.
Pressing Turn on Notifications, selecting your Locale: and finally your Mobile Operator.
Press Next and enter your phone number with the area code, and without the country code.
Click Next again and check your phone. You should get a pass code in a text message that you will need to enter. After you receive this, press Finish.
Now you are ready to set up email notifications using an Inbox rule Those rules are based on your criteria, whether based on sender or content :)

iOS ABPersonViewController: Returning to app after phone call/message/email

I'm using an ABPersonViewController and I was wondering if it is possible to return to my application after making a phone call or sending an email/message instead of exiting to the respective native apps.
On the iPhone Contacts app, you can make a phone call by pressing the phone number field. Ending the call automatically takes you back to the contact screen. You can also send an email and message by clicking on the respective fields (though ending the email/message action does not take you back to the Contacts).
To be more specific, tapping on "mobile 1 (555) 555-5559" should make a phone call to that number (my app already does that). However, when I end the call, I would like to be directed back to my app and not the native iOS Phone app. I would like similar actions for sending an email and message too.
If this is possible, it would be great if someone could share the solution! Thanks for any help.
it is possible to return to my application after making a phone call or sending an email/message instead of exiting to the respective native apps.
AND
Ending the call automatically takes you back to the contact screen
In SHORT : It is not possible because Apple/iOS Does not Provide this type of Feature.

How to determine if phone number has changed?

Currently I am developing an authentication module for my application. The user provides his phone number and a SMS with some pin code is send to him.
The user enters the code and if it is valid his phone number is authenticated. Maybe you know WhatsApp, it does quite the same when you run the app first time.
However if the user puts a new sim card in his phone he should authenticate it again.
I want to know how to determine if phone number has changed. I read in some other question that it is not possible to determine the phone number itself. But e.g. WhatsApp recognizes that there is another phone number.
Any ideas?
Update 2
One (not the best) way it's detecting carrier changing. Here you can see how to get carrier's name. Save it at first launch and do compare on next launches.
Update 3
I'd recommend to you look at Core Telephony Network reference and especially at CTTelephonyNetworkInfo reference
subscriberCellularProviderDidUpdateNotifier allow you respond on events such like:
... when the user’s cellular provider information changes. This occurs, for example, if a user
swaps the device’s SIM card with one
from another provider, while your
application is running

Use Address Book for search firstname when receive notification on iphone app

I spend some days to search solution about this trouble :
I have an app wich receive notificaiton from other user. The single data, I have under server side is the number phone. So I want, when the notification is receive on the iphone, to link the number phone of sender to the addressbook of receiver for display, if the number phone is foud, the firstname of the sender to the notification.
This feature is like sms reception on the iphone, where is just the number phone used finally, and is linked to the address book.
The notification system on my app is enabled and run without trouble, but this feature is not resolved, and i found the response nowhere on the net.
Ok, i search more, and i think, this feature could be possible if the app can write under the Localize.string. In fact, it could be possible to write key value, like ("93019320"="Carla") and in the notification text the phone number "93019320" is replace by the string "Carla". But the second question is
Is it possible to write in Localiza.string under app?