public async Task <string> OoredooSendSmsAsync(string mobile, string message) { if (OoredooMessageService == null) { throw new NotImplementedException("MessageService has not been implemented."); } var ooredooMessage = new OoredooMessage { Body = message, Destination = mobile }; var result = await OoredooMessageService.SendAsync(ooredooMessage); return(result); }
public async Task <string> SendAsync(OoredooMessage message) { var customerID = Convert.ToInt32(ConfigurationManager.AppSettings["SmsCustomerID"]); var username = ConfigurationManager.AppSettings["SmsUsername"]; var password = ConfigurationManager.AppSettings["SmsPassword"]; // if you want to delay your message to a certain time // uncomment this and modify this based on your requirements and add to SendSmsAsync as an argument //string defDate = DateTime.UtcNow.AddHours(3).ToString("yyyyMMddhhmmss"); MessengerSoapClient messenger = new MessengerSoapClient("MessengerSoap"); SoapUser user = new SoapUser { CustomerID = customerID, Name = username, Password = password }; AuthResult authData = messenger.Authenticate(user); if (authData.Result == "OK") { var sendResult = await messenger.SendSmsAsync( user, authData.Originators[0], message.Body, message.Destination, MessageType.Latin, null, false, false, false); SmsStatus smsStatus = await messenger.GetSmsStatusAsync(user, sendResult.TransactionID, true); return(smsStatus.Result); } return(authData.Result); }