Iam building a survey application. I need a way to validate the Phone number one inputs into the contact number inputfield.
I have been trying to use firebase to do the same . but the documents available online are not clear and there isn’t any help/tutorails available as well.
Any kind of help is appreciated. Thanks.
Update: I found a solution. I am using Textlocal my OTP services. Here’s the tutorial I followed: How to Generate and Send OTP SMS For Free using C#.NET?[With Source Code] - YouTube
So the code is in C# but not meant for UNity I have edited the code to fit Unity.
Here is my code:
using System;
using System.Collections.Generic;
using System.Net;
using System.Collections.Specialized;
using System.IO;
using System.Text;
using UnityEngine;
using System.Collections.Generic;
using System.Net;
using System.Collections.Specialized;
using System.Threading.Tasks;
using System.Linq;
using Random = System.Random;
using UnityEngine.UI;
public class OTPSMS : MonoBehaviour
{
// public string txtPhone;
// public string txtName;
string randomNumber;
public GameObject MessageBox;
public GameObject MessageBox2;
public GameObject MessageBox3;
public GameObject MessageBox4;
public InputField txtPhone;
public InputField txtName;
public InputField txtVerOTP;
// Start is called before the first frame update
void Start()
{
MessageBox.SetActive(false);
MessageBox2.SetActive(false);
MessageBox3.SetActive(false);
MessageBox4.SetActive(false);
}
// Update is called once per frame
void Update()
{
}
public void login()
{
String result;
string apiKey = "YOUR API key"; //the one which you will register on textlocal
string numbers = txtPhone.text; // in a comma seperated list
string sender = "TXTLCL";
string name = txtName.text;
var rnd = new Random();
randomNumber = (rnd.Next(100000, 999999)).ToString();
string message = "Hey " +name+ " Your OTP is " +randomNumber ;
String url = "https://api.textlocal.in/send/?apikey=" + apiKey + "&numbers=" + numbers + "&message=" + message + "&sender=" + sender;
//refer to parameters to complete correct url string
StreamWriter myWriter = null;
HttpWebRequest objRequest = (HttpWebRequest)WebRequest.Create(url);
objRequest.Method = "POST";
objRequest.ContentLength = Encoding.UTF8.GetByteCount(url);
objRequest.ContentType = "application/x-www-form-urlencoded";
try
{
myWriter = new StreamWriter(objRequest.GetRequestStream());
myWriter.Write(url);
}
catch (Exception e)
{
MessageBox.SetActive(true);
}
finally
{
myWriter.Close();
}
HttpWebResponse objResponse = (HttpWebResponse)objRequest.GetResponse();
using (StreamReader sr = new StreamReader(objResponse.GetResponseStream()))
{
result = sr.ReadToEnd();
// Close and clean up the StreamReader
sr.Close();
}
MessageBox2.SetActive(true);
}
public void Verify()
{
if(txtVerOTP.text ==randomNumber)
{
MessageBox3.SetActive(true);
}
else
{
MessageBox4.SetActive(true);
}
}
}
And this is what the project lloks like
: