How to programmatically get IMEI number in j2me - java-me

I am working on the project where I have to make one login page where user enters IMEI number. Now I have to anagrammatically check whether such kind of IMEI exist or not.

Related

How to gather user information like name and mobile number before Chatbot starts conversation in Dialogflow?

I need to gather the name and mob number of the user before he starts interacting with the Chatbot. How can I do that?
You will need to create 2 parameters - name and phoneNumber to capture name and phone numbers.
Using the #sys.phone-number you can capture phone numbers from the user.
Using the #sys.given-name or #sys.last-name you can capture user's name.
Please note: currently only US English names are supported by the system entities in Dialogflow. So there may be some cases where you may not be able to capture all the names.
gather user information like name and mobile number before Chatbot
In your case, you need to use events
Step 1. trigger an event when your app initialize like from nodejs server and angular
Events are another way to trigger the intent without user interaction
when you intent trigger you can ask information

How to retrieve user phone number in Action for the Assistant

How do i get the phone number of a user, who uses my Dialogflow?
I see email, name and so on in these docs, but I don't see phone number. Is it even possible?
You may need to capture it from the user itself by creating a parameter/entity. Once captured, validate it via webhook if needed for the number of digits.
This is how I am doing:

Dialogflow v2 user input and fulfillment

I am writing a Dialogflow v2 chatbot with Actions on Google.
I am asking for users to create a list and then have the option for ordering them.
I need to get a few pieces of information from the user. Her name, phone number and address.
Then I need the name of the vendor and their mobile number where the order will be forwarded.
If they have already given their name, I want to show it to them and have them confirm it.
The problem is that everything is an intent.
As an example they say Order from my list. I have to ask them for a store name e.g. Walmart. Now the problem is that I may not have all the vendors in an entity list. And if they just say Walmart, how do I know if it's a vendor name. I know I could have a follow up intent but not sure what happens when they don't say the right thing.
Basically, this is how I want the conversation to go.
They create a list which I have working.
Then they say order from list
Chatbot ask for the name of the store and mobile number to order from
Chatbot checks the name in the database and if doesn't exist adds it.
Asks for name, number address of the user
Shows the order, the vendor and the user's name and address
Passes this information to the server fulfillment hook.
Next time it needs to sense that it knows the user name, address and number and ask the user to confirm.
In simple terms, you would need to rely on contexts and webhook for validating the store name.
If the store is not valid, reset the context (same as input) and politely ask the user to provide the right store name.
Maintain a counter in parameters to keep track of the number of wrong attempts.
Increment that counter when wrong, reset when correct.
If the counter reaches 3 or 4, politely reply back that you could not serve them this that vendor and ask them to try the app later.
If this assistant app is US based you may need to add Transaction API as well to show the final order and confirm back to the user. Transaction API is available in the US as of now so keep that in mind.

Generating unique id in J2ME

I want to generate universally unique id for registration process of my j2me application. i came across following approaches for that
IMEI no of device Getting IMEI and IMSI in Java ME this approach doesn't work on most of devices. Problem with IMEI is is not that easy to get it from Midlet for most of models.
Bluetooth device address Getting Bluetooth Address
Problem Needs support for Bluetooth API and will limit no of devices app can run on.
UUID class
Problem Need Bluetooth API as it is in javax.bluetooth package same prob
The registration process used by my company for their android app is as follows
customer mobile will send IMEI no and Token provided by company to server using SMS
Server will send licence key to customer mobile which will be stored in customer mobile
And i have to follow the same approach for j2me application
One solution can be getting unique id from server through SMS. but company uses above registration process.
Is there any other approch that i can use for registraing my application or is there any way to overcome above problems.
I agree with #funkybro that a Jad key with a unique ID provided by the server would solve the issue. But if its not possible I would create an id based on mobile time and a hash code.
long time = System.currentTimeMillis();
StringBuffer id = new StringBuffer(Long.toString(time, 16).toUpperCase());
id.append(Integer.toHexString(new Object().hashCode()).toUpperCase());
If this id is duplicated the registration process fails and the application is asked for a new id.
You can put a server generated unique ID in the jad at deploy time.

iPhone application – reading SMS

I need to develop an iPhone application which needs to read the incoming SMS received by the user, manipulate the text, and then display it in the application.
Could someone clarify whether it is possible to read the SMS received within our application development?
Thanks!
Intercepting/reading incoming SMS is not possible on iOS (for privacy reasons).
It is only possible when the phone is Jailbreaked.
There are many tools to jailbreak your phone.
Once Jailbreaked, an application cal open the SQLite database at
/var/mobile/Library/SMS/sms.db
and read the message table.
It contains, the date/time at which the message was received, the sender/recipient phone number and even the clear text of the message.
UPDATE
From iOS 12 Apple will allow the support to read One Time Code(OTP - One Time Password) which you will get in the iPhone device.
iOS supports Password AutoFill on UITextField, UITextView, and any custom view that adopts the UITextInput protocol. System keyboard set the textContentType on it to .oneTimeCode
1) Using Code
singleFactorCodeTextField.textContentType = .oneTimeCode
2) Using Storyboard/XIB
Select UITextField/UITextView in storyboard/XIB click Click on Attribute
inspector. Go to text input trait, click to Content type and select
one time code and done.
The operating system will detect verification codes from Messages automatically with this UITextContentType set.
Warning
If you use a custom input view for a security code input text field,
iOS cannot display the necessary AutoFill UI.
For more information, you can check it on the Apple developer oneTimeCode
And also review WWDC 2018 Session 204 - Automatic Strong Passwords and Security Code AutoFill and jump to 24:28 for automatic pre-fill the OTP.

Resources