ملی پیامک یک وب سرویس کامل برای ارسال و دریافت پیامک و پیامک صوتی و مدیریت کامل خدمات دیگر است که براحتی میتوانید از آن استفاده کنید.
قبل از نصب نیاز به ثبت نام در سایت ملی پیامک دارید.
ثبت نام به همراه دریافت 200 پیامک هدیه جهت تست وبسرویس
پس از ثبت نام، وب سرویسهای ملی پیامک را از طریق آدرسهای زیر به عنوان Service Reference به پروژه خود اضافه کنید.
شما می توانید از طریق Nuget نیز وب سرویس ملی پیامک را به پروزه خود اضافه نمایید :
Install-Package Melipayamak.RestClient -Version 1.0.0
نمونه کد سی شارپ برای ارسال پیامک به صورت زیر است که شما می توانید در پیکرۀ Controller های برنامه خود از آنها استفاده کنید شما می توانید به طور دلخواه از فرم Asynchron این متدها هرکجا لازم شد استفاده کنید
const string username = "username";
const string password = "password";
const string from = "5000...";
const string to = "09123456789";
const string text = "تست وب سرویس ملی پیامک";
const bool isFlash = false;
SendSoapClient soapClient = new SendSoapClient();
soapClient.SendSimpleSMS2(username, password, to, from, text, isFlash);
//یا برای ارسال به مجموعه ای از مخاطبین
soapClient.SendSimpleSMS(username, password, new string[] { to }, from, text, isFlash);از آنجا که وب سرویس ملی پیامک تنها محدود به ارسال پیامک نیست شما از طریق زیر میتوانید به وب سرویس ها دسترسی کامل داشته باشید:
// وب سرویس پیامک
RestClient restClient = new RestClient(username, password);
SendSoapClient soapClient = new SendSoapClient();
// وب سرویس تیکت پشتیبانی
TicketsSoapClient ticketSoapClient = new TicketsSoapClient();
// وب سرویس برای مدیریت کامل ارسال انبوه پیامک
ActionsSoapClient actionSoapClient = new ActionsSoapClient();
//وب سرویس کاربران
UsersSoapClient usersSoapClient = new UsersSoapClient();
//وب سرویس دفترچه تلفن
ContactsSoapClient contactSoapClient = new ContactsSoapClient();
//وب سرویس زمان بندی
ScheduleSoapClient scheduleSoapClient = new ScheduleSoapClient();
//وب سرویس پیام صوتی
VoiceSoapClient voiceSoapClient = new VoiceSoapClient();
//وب سرویس دریافت
ReceiveSoapClient receiveSoapClient = new ReceiveSoapClient();از آنجا که ملی پیامک وب سرویس کاملی رو در اختیار توسعه دهندگان میگزارد برای راحتی کار با وب سرویس پیامک علاوه بر وب سرویس اصلی soap وب سرویس rest رو هم در اختیار توسعه دهندگان گزاشته شده تا راحتتر بتوانند با وب سرویس کار کنند. تفاوت اصلی این دو در تعداد متد هاییست که میتوانید با آن کار کنید. برای کار های پایه میتوان از وب سرویس rest استفاده کرد برای دسترسی بیشتر و استفاده پیشرفته تر نیز باید از وب سرویس باید از وب سرویس soap استفاده کرد. جهت مطالعه بیشتر وب سرویس ها به قسمت وب سرویس پنل خود مراجعه کنید.
برای مطالعه بیشتر و دریافت راهنمای وب سرویس ها و آشنایی با پارامتر های ورودی و خروجی وب سرویس به صفحه معرفی وب سرویس ملی پیامک مراجعه نمایید .
متد های وب سرویس:
restClient.Send(to, from, text, isFlash);
soapClient.SendSimpleSMS(username, password, new string[] { to }, from, text, isFlash);restClient.SendByBaseNumber(text, to, bodyId);
soapClient.SendByBaseNumber2(username, password, text, to, bodyId);restClient.GetDelivery(recId);
soapClient.GetDelivery(recId);
soapClient.GetDeliveries(recIds[], username, password);restClient.GetMessages(location, index, count, from);
soapClient.getMessages(username, password, location, from, index, count);
// جهت دریافت به صورت رشته ای
receiveSoapClient.GetMessagesByDate(username, password, location, from, index, count, dateFrom, dateTo);
//جهت دریافت بر اساس تاریخ
receiveSoapClient.GetUsersMessagesByDate(username, password, location, from, index, count, dateFrom, dateTo);
// جهت دریافت پیام های کاربران بر اساس تاریخ restClient.GetCredit();
soapClient.GetCredit(username, password);restClient.GetBasePrice();
soapClient.GetSmsPrice(username, password, irancellCount, mtnCount, from, text);usersSoapClient.GetUserNumbers(username, password);soapClient.GetInboxCount(username, password, isRead);
//پیش فرض خوانده نشده soapClient.SendSms(username, password, to[], from, text, isflash, udh, recId[], status[]);receiveSoapClient.GetMessagesReceptions(username, password, msgId, fromRows);receiveSoapClient.RemoveMessages2(username, password, location, msgIds);scheduleSoapClient.AddSchedule(username, password, to, from, text, isflash, scheduleDateTime, period);scheduleSoapClient.AddMultipleSchedule(username, password, to[], from, text[], isflash, scheduleDateTime[], period);scheduleSoapClient.AddNewUsance(username, password, to, from, text, isflash, scheduleStartDateTime, countRepeat, scheduleEndDateTime, periodType);scheduleSoapClient.GetScheduleStatus(username, password, schId);scheduleSoapClient.RemoveSchedule(username, password, schId);voiceSoapClient.SendSMSWithSpeechText(username, password, smsBody, speechBody, from, to);voiceSoapClient.SendSMSWithSpeechTextBySchduleDate(username, password, smsBody, speechBody, from, to, scheduleDate);voiceSoapClient.GetSendSMSWithSpeechTextStatus(username, password, recId);voiceSoapClient.SendBulkSpeechText(username, password, title, body, receivers, DateToSend, repeatCount);voiceSoapClient.SendBulkVoiceSMS(username, password, title, fileId, receivers, DateToSend, repeatCount);voiceSoapClient.UploadVoiceFile(username, password, title, file);actionSoapClient.GetBranchs(username, password, owner);actionSoapClient.AddBranch(username, password, branchName, owner);actionSoapClient.AddNumber(username, password, branchId, mobileNumbers[]);actionSoapClient.RemoveBranch(username, password, branchId);actionSoapClient.AddBulk(username, password, from, branch, bulkType, title, message, rangeFrom, rangeTo, DateToSend, requestCount, rowFrom);actionSoapClient.GetBulkCount(username, password, branch, rangeFrom, rangeTo);actionSoapClient.GetBulkReceptions(username, password, bulkId, fromRows);actionSoapClient.GetBulkStatus(username, password, bulkId, sent, failed, status);actionSoapClient.GetTodaySent(username, password);actionSoapClient.GetTotalSent(username, password);actionSoapClient.RemoveBulk(username, password, bulkId);actionSoapClient.SendMultipleSMS(username, password, to[], from, text[], isflash, udh, recId[], status);actionSoapClient.UpdateBulkDelivery(username, password, bulkId);ticketSoapClient.AddTicket(username, password, title, content, aletWithSms);ticketSoapClient.GetReceivedTickets(username, password, ticketOwner, ticketType, keyword);ticketSoapClient.GetReceivedTicketsCount(username, password, ticketType);ticketSoapClient.GetSentTickets(username, password, ticketOwner, ticketType, keyword);ticketSoapClient.GetSentTicketsCount(username, password, ticketType);ticketSoapClient.ResponseTicket(username, password, ticketId, type, content, alertWithSms);contactsSoapClient.AddGroup(username, password, groupName, Descriptions, showToChilds);contactsSoapClient.AddContact(username, password, options);contactsSoapClient.CheckMobileExistInContact(username, password, mobileNumber);contactsSoapClient.GetContacts(username, password, groupId, keyword, count);contactsSoapClient.GetGroups(username, password);contactsSoapClient.ChangeContact(username, password, options);contactsSoapClient.RemoveContact(username, password, mobilenumber);contactsSoapClient.GetContactEvents(username, password, contactId);usersSoapClient.AddPayment(username, password, options);usersSoapClient.AddUser(username, password, options);usersSoapClient.AddUserComplete(username, password, options);usersSoapClient.AddUserWithLocation(username, password, options);usersSoapClient.AuthenticateUser(username, password);usersSoapClient.ChangeUserCredit(username, password, amount, description, targetUsername, GetTax);usersSoapClient.ForgotPassword(username, password, mobileNumber, emailAddress, targetUsername);usersSoapClient.GetUserBasePrice(username, password, targetUsername);usersSoapClient.GetUserCredit(username, password, targetUsername);usersSoapClient.GetUserDetails(username, password, targetUsername);usersSoapClient.GetUserNumbers(username, password);usersSoapClient.GetUserTransactions(username, password, targetUsername, creditType, dateFrom, dateTo, keyword);usersSoapClient.GetUsers(username, password);usersSoapClient.HasFilter(username, password, text);usersSoapClient.RemoveUser(username, password, targetUsername);usersSoapClient.GetProvinces(username, password);usersSoapClient.GetCities(username, password, provinceId);usersSoapClient.GetExpireDate(username, password);