Sending SMS from the webpage



Introduction

In this article we will see an example of sending sms through the way2sms account. There are two pages in the demo

1. login.aspx 
2. Sms.aspx

This is the login.aspx where you have to provide your way2sms username and password

NOTE: If you don't have account in way2sms, before using this demo you have to create account in way2sms.com

1.gif

protected
void btnconnect_Click(object sender, EventArgs e)
{
    Session["id"] = txtmobileno.Text;
    Session["pw"] = txtpw.Text;
    Response.Redirect("send.aspx");
}

Send.aspx

In this page two functions are created

1. Connect() this function will connect and authenticate your id and password
2. Sendsms(): If you are successfully connected they you will get the following page and you can send sms now

2.gif
Send.aspx.cs

using
System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.IO;
using System.Net;
using System.Text;
using System.Text.RegularExpressions;

public
partial class send : System.Web.UI.Page
{
    string mbno, mseg, ckuser, ckpass;
    private HttpWebRequest req;
    private CookieContainer cookieCntr;
    private string strNewValue;
    public static string responseee;
    private HttpWebResponse response; 

    protected void Page_Load(object sender, EventArgs e)

    {

        if (Session["id"] == null && Session["pw"] == null)

        {

            Server.Transfer("login.aspx");

        }

        connect();

 

        try

        {

            lblError.Text = "";

            lblError.Visible = false;

            if (!(IsPostBack))

            {

                btnSend.Attributes.Add("onclick", "return Validate('" + txtTo.ClientID + "','" + txtMessage.ClientID + "');");

                txtMessage.Attributes.Add("onchange", "TextChange('" + txtMessage.ClientID + "','" + lblLeft.ClientID + "');");

                txtMessage.Attributes.Add("onkeyup", "TextChange('" + txtMessage.ClientID + "','" + lblLeft.ClientID + "');");

            }

        }

        catch (Exception ex)

        {

            lblError.Text = ex.Message;

            lblError.Visible = true;

        }

       

    }

    protected void btnSend_Click(object sender, EventArgs e)

    {

        try

        {

            mbno = txtTo.Text;

            mseg = txtMessage.Text;

 

            sendSms(mbno, mseg);

            txtTo.Text = "";

            txtMessage.Text = "";

        }

        catch (Exception ex)

        {

            lblError.Text = ex.Message;

            lblError.Visible = true;

        }

    }

    public void connect()

    {

        ckuser = Session["id"].ToString();

        ckpass = Session["pw"].ToString();

 

        try

        {

            this.req = (HttpWebRequest)WebRequest.Create("http://wwwd.way2sms.com/auth.cl");

 

            this.req.CookieContainer = new CookieContainer();

            this.req.AllowAutoRedirect = false;

            this.req.Method = "POST";

            this.req.ContentType = "application/x-www-form-urlencoded";

            this.strNewValue = "username=" + ckuser + "&password=" + ckpass;

            this.req.ContentLength = this.strNewValue.Length;

            StreamWriter writer = new StreamWriter(this.req.GetRequestStream(), Encoding.ASCII);

            writer.Write(this.strNewValue);

            writer.Close();

            this.response = (HttpWebResponse)this.req.GetResponse();

            this.cookieCntr = this.req.CookieContainer;

            this.response.Close();

            this.req = (HttpWebRequest)WebRequest.Create("http://wwwd.way2sms.com//jsp/InstantSMS.jsp?val=0");

            this.req.CookieContainer = this.cookieCntr;

            this.req.Method = "GET";

            this.response = (HttpWebResponse)this.req.GetResponse();

            responseee = new StreamReader(this.response.GetResponseStream()).ReadToEnd();

            int index = Regex.Match(responseee, "custf").Index;

            responseee = responseee.Substring(index, 0x12);

            responseee = responseee.Replace("\"", "").Replace(">", "").Trim();

            this.response.Close();

 

            pnlsend.Visible = true;

            lblErrormsg.Text = "connected";

        }

        catch (Exception)

        {

            lblErrormsg.Text = "Error connecting to the server...";

            Session["error"] = "Error connecting to the server...";

            Server.Transfer("login.aspx"); 

        }

    }

    public void sendSms(string mbno, string mseg)

    {

        if ((mbno != "") && (mseg != ""))

        {

            try

            {

                this.req = (HttpWebRequest)WebRequest.Create("http://wwwd.way2sms.com//FirstServletsms?custid=");

                this.req.AllowAutoRedirect = false;

                this.req.CookieContainer = this.cookieCntr;

                this.req.Method = "POST";

                this.req.ContentType = "application/x-www-form-urlencoded";

                this.strNewValue = "custid=undefined&HiddenAction=instantsms&Action=" + responseee + "&login=&pass=&MobNo=" + this.mbno + "&textArea=" + this.mseg;

 

                string msg = this.mseg;

                string mbeno = this.mbno;

 

                this.req.ContentLength = this.strNewValue.Length;

                StreamWriter writer = new StreamWriter(this.req.GetRequestStream(), Encoding.ASCII);

                writer.Write(this.strNewValue);

                writer.Close();

                this.response = (HttpWebResponse)this.req.GetResponse(); 

                this.response.Close();

                lblErrormsg.Text = "Message Sent..... " + mbeno + ": " + msg;

            }

            catch (Exception)

            {

                lblErrormsg.Text = "Error Sending msg....check your connection...";

            }

        }

        else

        {

            lblErrormsg.Text = "Mob no or msg missing";

        }

    }

 

    protected void logout_Click(object sender, EventArgs e)

    {

        //logout

        Session["id"] = null;

        Session["pw"] = null;

        Session["error"] = null;

        Server.Transfer("login.aspx");

    }

}