menu
Пример работы с SMS шлюзом на языке C#
Отправка смс:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Net; using System.IO; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { try { var XML = "XML=<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" + "<SMS>\n" + "<operations>\n" + "<operation>SEND</operation>\n" + "</operations>\n" + "<authentification>\n" + "<username></username>\n" + "<password></password>\n" + "</authentification>\n" + "<message>\n" + "<sender>SMS</sender>\n" + "<text>Test message [UTF-8]</text>\n" + "</message>\n" + "<numbers>\n" + "<number messageID=\"msg11\">380972920000</number>\n" + "</numbers>\n" + "</SMS>\n"; HttpWebRequest request = WebRequest.Create("http://api.atompark.com/members/sms/xml.php") as HttpWebRequest; request.Method = "Post"; request.ContentType = "application/x-www-form-urlencoded"; ASCIIEncoding encoding = new ASCIIEncoding(); byte[] data = encoding.GetBytes(XML); request.ContentLength = data.Length; Stream dataStream = request.GetRequestStream(); dataStream.Write(data, 0, data.Length); using (HttpWebResponse response = request.GetResponse() as HttpWebResponse) { if (response.StatusCode != HttpStatusCode.OK) throw new Exception(String.Format( "Server error (HTTP {0}: {1}).", response.StatusCode, response.StatusDescription)); StreamReader reader = new StreamReader(response.GetResponseStream()); Console.WriteLine(reader.ReadToEnd()); Console.ReadKey(); } } catch (Exception e) { Console.WriteLine(e.Message); Console.ReadKey(); } } } }
Получения статуса отправленной смс*:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Net; using System.IO; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { try { var XML = "XML=<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" + "<SMS>\n" + "<operations>\n" + "<operation>GETPRICE</operation>\n" + "</operations>\n" + "<authentification>\n" + "<username></username>\n" + "<password></password>\n" + "</authentification>\n" + "<statistics>\n" + "<messageid>msg11</messageid>\n" + "</statistics>\n" + "</SMS>\n"; HttpWebRequest request = WebRequest.Create("http://api.atompark.com/members/sms/xml.php") as HttpWebRequest; request.Method = "Post"; request.ContentType = "application/x-www-form-urlencoded"; ASCIIEncoding encoding = new ASCIIEncoding(); byte[] data = encoding.GetBytes(XML); request.ContentLength = data.Length; Stream dataStream = request.GetRequestStream(); dataStream.Write(data, 0, data.Length); using (HttpWebResponse response = request.GetResponse() as HttpWebResponse) { if (response.StatusCode != HttpStatusCode.OK) throw new Exception(String.Format( "Server error (HTTP {0}: {1}).", response.StatusCode, response.StatusDescription)); StreamReader reader = new StreamReader(response.GetResponseStream()); Console.WriteLine(reader.ReadToEnd()); Console.ReadKey(); } } catch (Exception e) { Console.WriteLine(e.Message); Console.ReadKey(); } } } }
* Информация о статусе смс будет доступна спустя несколько минут после отправки
Получение цены отправки:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Net; using System.IO; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { try { var XML = "XML=<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" + "<SMS>\n" + "<operations>\n" + "<operation>GETPRICE</operation>\n" + "</operations>\n" + "<authentification>\n" + "<username></username>\n" + "<password></password>\n" + "</authentification>\n" + "<message>\n" + "<sender>SMS</sender>\n" + "<text>Test message [UTF-8]</text>\n" + "</message>\n" + "<numbers>\n" + "<number messageID=\"msg11\">380972920000</number>\n" + "</numbers>\n" + "</SMS>\n"; HttpWebRequest request = WebRequest.Create("http://api.atompark.com/members/sms/xml.php") as HttpWebRequest; request.Method = "Post"; request.ContentType = "application/x-www-form-urlencoded"; ASCIIEncoding encoding = new ASCIIEncoding(); byte[] data = encoding.GetBytes(XML); request.ContentLength = data.Length; Stream dataStream = request.GetRequestStream(); dataStream.Write(data, 0, data.Length); using (HttpWebResponse response = request.GetResponse() as HttpWebResponse) { if (response.StatusCode != HttpStatusCode.OK) throw new Exception(String.Format( "Server error (HTTP {0}: {1}).", response.StatusCode, response.StatusDescription)); StreamReader reader = new StreamReader(response.GetResponseStream()); Console.WriteLine(reader.ReadToEnd()); Console.ReadKey(); } } catch (Exception e) { Console.WriteLine(e.Message); Console.ReadKey(); } } } }
Получение баланса
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Net; using System.IO; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { try { var XML = "XML=<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" + "<SMS>\n" + "<operations>\n" + "<operation>BALANCE</operation>\n" + "</operations>\n" + "<authentification>\n" + "<username></username>\n" + "<password></password>\n" + "</authentification>\n" + "</SMS>\n"; HttpWebRequest request = WebRequest.Create("http://api.atompark.com/members/sms/xml.php") as HttpWebRequest; request.Method = "Post"; request.ContentType = "application/x-www-form-urlencoded"; ASCIIEncoding encoding = new ASCIIEncoding(); byte[] data = encoding.GetBytes(XML); request.ContentLength = data.Length; Stream dataStream = request.GetRequestStream(); dataStream.Write(data, 0, data.Length); using (HttpWebResponse response = request.GetResponse() as HttpWebResponse) { if (response.StatusCode != HttpStatusCode.OK) throw new Exception(String.Format( "Server error (HTTP {0}: {1}).", response.StatusCode, response.StatusDescription)); StreamReader reader = new StreamReader(response.GetResponseStream()); Console.WriteLine(reader.ReadToEnd()); Console.ReadKey(); } } catch (Exception e) { Console.WriteLine(e.Message); Console.ReadKey(); } } } }Другие примеры:
Пример работы с SMS шлюзом на языке Java
Пример подключения к шлюзу ePochta SMS 3.0 на PHP
Пример работы с SMS шлюзом на языке Perl