-
Notifications
You must be signed in to change notification settings - Fork 30
Expand file tree
/
Copy pathMessagingClient.cs
More file actions
72 lines (64 loc) · 2.58 KB
/
MessagingClient.cs
File metadata and controls
72 lines (64 loc) · 2.58 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
using System.Collections.Generic;
using System.Net;
namespace Telesign
{
/// <summary>
/// TeleSign's Messaging API allows you to easily send SMS messages. You can send alerts, reminders, and notifications,
/// or you can send verification messages containing one-time passcodes(OTP).
/// </summary>
public class MessagingClient : RestClient
{
private const string MESSAGING_RESOURCE = "/v1/messaging";
private const string MESSAGING_STATUS_RESOURCE = "/v1/messaging/{0}";
public MessagingClient(string customerId,
string apiKey)
: base(customerId,
apiKey)
{ }
public MessagingClient(string customerId,
string apiKey,
string restEndPoint)
: base(customerId,
apiKey,
restEndPoint)
{ }
public MessagingClient(string customerId,
string apiKey,
string restEndPoint,
int timeout,
WebProxy proxy,
string proxyUsername,
string proxyPassword)
: base(customerId,
apiKey,
restEndPoint,
timeout,
proxy,
proxyUsername,
proxyPassword)
{ }
/// <summary>
/// Send a message to the target phone_number.
///
/// See https://developer.telesign.com/docs/messaging-api for detailed API documentation.
/// </summary>
public TelesignResponse Message(string phoneNumber, string message, string messageType, Dictionary<string, string> parameters = null)
{
if (null == parameters)
parameters = new Dictionary<string, string>();
parameters["phone_number"] = phoneNumber;
parameters["message"] = message;
parameters["message_type"] = messageType;
return Post(MESSAGING_RESOURCE, parameters);
}
/// <summary>
/// Retrieves the current status of the message.
///
/// See https://developer.telesign.com/docs/messaging-api for detailed API documentation.
/// </summary>
public TelesignResponse Status(string referenceId, Dictionary<string, string> parameters = null)
{
return Get(string.Format(MESSAGING_STATUS_RESOURCE, referenceId), parameters);
}
}
}