public static void Execute() { Console.WriteLine("Alert Solutions API Client SimpleDemo\n"); var attachments = new List<Attachment>(); attachments.Add(Attachment.FromFile("Files\\Attachment.txt")); var proofs = new List<string>(); proofs.Add("*****@*****.**"); // create an email broadcast and give it the desired values var eb = new EmailBroadcast(); eb.BillCode = "APIClient Demo"; eb.ProjectCode = "APIClient Demo"; eb.DisplayName = "AlertSolutions"; eb.EmailSubject = "Alert Solutions API Client Demo"; eb.EmailFrom = "*****@*****.**"; eb.EmailReplyTo = "*****@*****.**"; eb.TextBody = TextBody.FromFile("Files\\Email.txt"); // be sure to modify the ContactList.csv file so the email goes to your intended destinations eb.List = ContactList.FromFile("Files\\ContactList.csv"); eb.EmailHeader = "email"; eb.Attachments = attachments; eb.Proofs = proofs; // change these values to your API login var user = ""; var password = ""; var url = "http://weblaunch.blifax.com/postapi"; // create the client var client = new ApiClient(url, user, password); Console.WriteLine("\nPress any key to launch broadcast."); Console.ReadLine(); // launch the broadcast var response = client.LaunchBroadcast(eb); // test the response status (in case it could not connect or something went wrong while submitting) Console.WriteLine("Response Status: " + response.RequestResult); if (response.RequestResult == RequestResultType.Error) Console.WriteLine("Error: " + response.RequestErrorMessage); else Console.WriteLine("OrderID: " + response.OrderID); Console.WriteLine("\nPress any key to retrieve report... (best to wait a few seconds)"); Console.ReadLine(); // get more information about the order by asking for a report var report = client.GetOrderReport(response, ReportReturnType.XML); Console.WriteLine("Report: " + report.ReportData); Console.WriteLine("\nPress any key to exit..."); Console.ReadLine(); }
public static void Execute() { Console.WriteLine("Alert Solutions API Client SimpleDemo\n"); var attachments = new List<Attachment>(); attachments.Add(Attachment.FromFile("Files\\Attachment.txt")); var proofs = new List<string>(); proofs.Add("*****@*****.**"); // create an email broadcast and give it the desired values var eb = new EmailBroadcast(); eb.BillCode = "APIClient Demo"; eb.ProjectCode = "APIClient Demo"; eb.DisplayName = "AlertSolutions"; eb.EmailSubject = "Alert Solutions API Client Demo"; eb.EmailFrom = "*****@*****.**"; eb.EmailReplyTo = "*****@*****.**"; eb.TextBody = TextBody.FromFile("Files\\Email.txt"); // be sure to modify the ContactList.csv file so the email goes to your intended destinations eb.List = ContactList.FromFile("Files\\ContactList.csv"); eb.EmailHeader = "email"; eb.Attachments = attachments; eb.Proofs = proofs; // change these values to your API login var user = "******"; var password = "******"; var url = "http://weblaunch.blifax.com/postapi"; // create the client var client = new ApiClient(url, user, password); Console.WriteLine("\nPress any key to launch broadcast."); Console.ReadLine(); // launch the broadcast var response = client.LaunchBroadcast(eb); Console.WriteLine("Response Status: " + response.RequestResult); if (response.RequestResult == RequestResultType.Error) Console.WriteLine("Error: " + response.RequestErrorMessage); else Console.WriteLine("OrderID: " + response.OrderID); Console.WriteLine("\nPress any key to cancel broadcast."); Console.ReadLine(); var cancelResponse = client.CancelOrder(response); Console.WriteLine("\n\n"+ cancelResponse); }
public static void Execute() { Console.WriteLine("Alert Solutions API Client TemplateDemo\n"); Template template = Template.FromFile("Location\\Of\\Wav\\File.wav"); // change these values to your API login // change your login details in the app config file var user = ""; var password = ""; var url = "http://weblaunch.blifax.com/postapi"; var templateClient = new ApiClient(url, user, password); Console.WriteLine("\nPress any key to submit template."); Console.ReadLine(); TemplateResponse response = templateClient.SendTemplates(template); var orderClient = new ApiClient(url, user, password); var vb = new VoiceBroadcast(); vb.BillCode = "APIClient Demo"; vb.ProjectCode = "APIClient Demo"; vb.CallerID = "5555555555"; vb.List = ContactList.FromFile("Files\\ContactList.csv"); vb.VoiceHeader = "phone"; vb.ThrottleType = VoiceBroadcast.VoiceThrottleType.MaximumCalls; vb.ThrottleNumber = 2; vb.Documents = new List<Document>() { //VoiceDocument.FromFile("Files\\VoiceMessage.txt", VoiceDocumentType.Live), VoiceDocument.FromFile("Files\\VoiceMessage.txt", VoiceDocumentType.Message), }; OrderResponse broadcastResponse = orderClient.LaunchBroadcast(vb); Console.WriteLine(broadcastResponse.RequestErrorMessage); }
public static void Execute() { Console.WriteLine("Alert Solutions API Client FullDemo\n"); // =========================================== // BROADCASTS // =========================================== List<IBroadcast> broadcasts = new List<IBroadcast>(); // EMAIL BROADCAST var eb = new EmailBroadcast(); eb.BillCode = "APIClient Demo"; eb.ProjectCode = "APIClient Demo"; eb.DisplayName = "AlertSolutions"; eb.EmailSubject = "Alert Solutions API Client Demo"; eb.EmailFrom = "*****@*****.**"; eb.EmailReplyTo = "*****@*****.**"; eb.Attachments = new List<Attachment>() { Attachment.FromFile("Files\\Attachment.txt") }; eb.List = ContactList.FromFile("Files\\ContactList.csv"); eb.EmailHeader = "email"; eb.Proofs = new List<string>() { "*****@*****.**" }; // can use either Text or HTML eb.HtmlBody = HtmlBody.FromFile("Files\\Email.html"); eb.TextBody = TextBody.FromFile("Files\\Email.txt"); broadcasts.Add(eb); // SMS BROADCAST var sb = new SMSBroadcast(); sb.BillCode = "APIClient Demo"; sb.ProjectCode = "APIClient Demo"; sb.ShortCode = "77811"; sb.TextMessage = TextMessage.FromFile("Files\\TextMessage.txt"); sb.List = ContactList.FromFile("Files\\ContactList.csv"); sb.SMSHeader = "phone"; sb.Proofs = new List<string>() { "5555555555" }; broadcasts.Add(sb); // VOICE BROADCAST var vb = new VoiceBroadcast(); vb.BillCode = "APIClient Demo"; vb.ProjectCode = "APIClient Demo"; vb.CallerID = "5555555555"; vb.List = ContactList.FromFile("Files\\ContactList.csv"); vb.VoiceHeader = "phone"; vb.ThrottleType = VoiceBroadcast.VoiceThrottleType.MaximumCalls; vb.ThrottleNumber = 2; // can be told to load an xml file, or be given the xml as text //vt.CallScript = CallScript.FromString(""); //vt.CallScript = CallScript.FromFile(""); vb.Documents = new List<Document>() { //VoiceDocument.FromFile("Files\\VoiceMessage.txt", VoiceDocumentType.Live), VoiceDocument.FromFile("Files\\VoiceMessage.txt", VoiceDocumentType.Message), }; broadcasts.Add(vb); // FAX BROADCAST var fb = new FaxBroadcast(); fb.BillCode = "APIClient Demo"; fb.ProjectCode = "APIClient Demo"; fb.FaxFrom = "john doe"; fb.List = ContactList.FromFile("Files\\FaxList.csv"); fb.FaxHeader = "faxnumber"; fb.Dedup = true; fb.DocumentStyle = "Letter"; fb.Documents = new List<Document>() { Document.FromFile("Files\\FaxText.txt"), }; broadcasts.Add(fb); // =========================================== // MESSAGES // =========================================== List<IMessage> messages = new List<IMessage>(); // EMAIL MESSAGE var em = new EmailMessage(); em.EmailTo = "*****@*****.**"; em.DisplayName = "AlertSolutions"; em.EmailSubject = "Alert Solutions API Client Demo"; em.EmailFrom = "*****@*****.**"; em.EmailReplyTo = "*****@*****.**"; em.Attachments = new List<Attachment>() { Attachment.FromFile("Files\\Attachment.txt") }; // can use either Text or HTML em.TextBody = TextBody.FromFile("Files\\Email.txt"); //em.EmailBody = HtmlBody.FromFile("Files\\Email.html"); messages.Add(em); // SMS MESSAGE var sm = new SMSMessage(); sm.Number = "5555555555"; sm.ShortCode = "77811"; // shared Alert Solutions Shortcode sm.TextMessage = TextMessage.FromFile("Files\\TextMessage.txt"); messages.Add(sm); // VOICE MESSAGE var vm = new VoiceMessage(); //vt.CallScript = CallScript.FromString(""); //vt.CallScript = CallScript.FromFile(""); vm.Phone = "5555555555"; vm.CallerID = "5555555555"; vm.Documents = new List<Document>() { VoiceDocument.FromFile("Files\\VoiceMessage.txt", VoiceDocumentType.Live), VoiceDocument.FromFile("Files\\VoiceMessage.txt", VoiceDocumentType.Message), }; messages.Add(vm); // FAX MESSAGE var fm = new FaxMessage(); fm.FaxFrom = "john doe"; fm.FaxNumber = "4014271405"; fm.DocumentStyle = "Letter"; fm.Documents = new List<Document>() { Document.FromFile("Files\\FaxText.txt"), }; messages.Add(fm); // =========================================== // LAUNCH // =========================================== // change these values to your API login var user = "******"; var password = "******"; var url = "http://weblaunch.blifax.com/postapi"; // create the client var client = new ApiClient(url, user, password); Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine("There is a pause of about 10 seconds before getting a report."); Console.ForegroundColor = ConsoleColor.Gray; // launch the broadcasts foreach (var broadcast in broadcasts) { Console.Write("\n\nSending " + broadcast.TypeOfOrder + ": "); var response = client.LaunchBroadcast(broadcast); Console.Write("** " + response.RequestResult + " **"); Console.Write(response.RequestResult != RequestResultType.Error ? " OrderID: " + response.OrderID : "Error: " + response.RequestErrorMessage); // wait for broadcast before request report System.Threading.Thread.Sleep(12000); var report = client.GetOrderReport(response, ReportReturnType.XML); Console.Write("\nReport:\n" + report.ReportData); } // launch the messages foreach (var message in messages) { Console.Write("\n\nSending " + message.TypeOfOrder + ": "); var response = client.LaunchMessage(message); Console.Write("** " + response.RequestResult + " **"); Console.Write(response.RequestResult != RequestResultType.Error ? " OrderID: " + response.OrderID + " TransID: " + response.Unqid : "Error: " + response.RequestErrorMessage); // wait for message before request report System.Threading.Thread.Sleep(10000); var report = client.GetOrderReport(response, ReportReturnType.XML); Console.Write("\nReport:\n" + report.ReportData); } Console.WriteLine("Press any key to exit..."); Console.ReadLine(); }
public void LaunchBroadcastTest() { var mockWebClientProxy = new Mock<IWebClientProxy>(); mockWebClientProxy.Setup(x => x.UploadString(It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>())) .Returns( () => { return "<PostAPIResponse><SaveTransactionalOrderResult><OrderID>12345</OrderID></SaveTransactionalOrderResult></PostAPIResponse>"; }); ApiClientResolver.Instance.Container.Register(mockWebClientProxy.Object); var mockBroadcast = new Mock<IBroadcast>(); mockBroadcast.Setup(x => x.ToXml()).Returns("<Orders><Order Type='EB'></Order></Orders>"); ApiClient apiClient = new ApiClient("url", "user", "password"); OrderResponse response = apiClient.LaunchBroadcast(mockBroadcast.Object); Assert.AreEqual(RequestResultType.Success, response.RequestResult); Assert.AreEqual(OrderType.EmailBroadcast, response.OrderType); Assert.AreEqual(12345, response.OrderID); }