-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathSoapTextClient.cs
More file actions
64 lines (54 loc) · 2.17 KB
/
Copy pathSoapTextClient.cs
File metadata and controls
64 lines (54 loc) · 2.17 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
using CallFire_csharp_sdk.Common.DataManagement;
using CallFire_csharp_sdk.Common.Resource;
using CallFire_csharp_sdk.Common.Resource.Mappers;
using CallFire_csharp_sdk.Common.Result;
using CallFire_csharp_sdk.Common.Result.Mappers;
namespace CallFire_csharp_sdk.API.Soap
{
public class SoapTextClient : BaseSoapClient, ITextClient
{
internal ITextServicePortTypeClient TextService;
public SoapTextClient(string username, string password)
{
TextService = new TextServicePortTypeClient(GetCustomBinding(), GetEndpointAddress<Text>())
{
ClientCredentials = { UserName = { UserName = username, Password = password } }
};
}
internal SoapTextClient(ITextServicePortTypeClient client)
{
TextService = client;
}
public long SendText(CfSendText cfSendText)
{
return TextService.SendText(new SendText(cfSendText));
}
public CfTextQueryResult QueryTexts(CfActionQuery cfQueryText)
{
var textQueryResult = TextService.QueryTexts(new ActionQuery(cfQueryText));
return TextQueryResultMapper.FromSoapContactBatchQueryResult(textQueryResult);
}
public CfText GetText(long id)
{
var text = TextService.GetText(new IdRequest(id));
return TextMapper.FromText(text);
}
public long CreateAutoReply(CfCreateAutoReply cfCreateAutoReply)
{
return TextService.CreateAutoReply(new CreateAutoReply(cfCreateAutoReply));
}
public CfAutoReplyQueryResult QueryAutoReplies(CfQueryAutoReplies cfQueryAutoReplies)
{
var autoReplyQueryResult = TextService.QueryAutoReplies(new QueryAutoReplies(cfQueryAutoReplies));
return AutoReplyQueryResultMapper.FromAutoReplyQueryResult(autoReplyQueryResult);
}
public CfAutoReply GetAutoReply(long id)
{
return AutoReplyMapper.FromAutoReplay(TextService.GetAutoReply(new IdRequest(id)));
}
public void DeleteAutoReply(long id)
{
TextService.DeleteAutoReply(new IdRequest(id));
}
}
}