SMSService.cs 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Net.Http;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. using System.Web;
  8. namespace EVCB_OCPP.WSServer.Service
  9. {
  10. public class SMSService
  11. {
  12. public int SendMessage(string phoneNumber, string message, out string errorMsg)
  13. {
  14. int result = 0;
  15. try
  16. {
  17. errorMsg = string.Empty;
  18. HttpClient client = new HttpClient();
  19. StringBuilder url = new StringBuilder("http://smexpress.mitake.com.tw:7002/SpSendUtf?");
  20. url.Append("username=").Append(HttpUtility.UrlEncode("30435973",
  21. Encoding.UTF8));
  22. url.Append("&password=").Append(HttpUtility.UrlEncode("PH3275300",
  23. Encoding.UTF8));
  24. url.Append("&encoding=UTF8");
  25. url.Append("&dstaddr=").Append(phoneNumber);
  26. url.Append("&smbody=").Append(HttpUtility.UrlEncode(message,
  27. Encoding.UTF8).Replace("+", "%20"));
  28. url.Append("&CharsetURL=").Append("utf-8");
  29. var id = client.GetStringAsync(url.ToString()).Result;
  30. if (!SendResult(id))
  31. {
  32. result = -1;
  33. errorMsg = id;
  34. }
  35. }
  36. catch (Exception ex)
  37. {
  38. result = -1;
  39. errorMsg = ex.Message;
  40. }
  41. return result;
  42. }
  43. private bool SendResult(string response)
  44. {
  45. bool result = false;
  46. if (response.Contains("msgid="))
  47. {
  48. result = true;
  49. }
  50. return result;
  51. }
  52. }
  53. }