mirror of
https://github.com/sochix/TLSharp.git
synced 2025-12-06 08:02:00 +01:00
Add by userName
This commit is contained in:
parent
1dce594e43
commit
c77cfc064d
|
|
@ -7,6 +7,7 @@ namespace TLSharp.Core.Requests
|
|||
public class ImportByUserName : MTProtoRequest
|
||||
{
|
||||
private readonly string _userName;
|
||||
public int id { get; private set; }
|
||||
public ImportByUserName(string userName)
|
||||
{
|
||||
_userName = userName;
|
||||
|
|
@ -14,14 +15,14 @@ namespace TLSharp.Core.Requests
|
|||
|
||||
public override void OnSend(BinaryWriter writer)
|
||||
{
|
||||
writer.Write(0xf93ccba3);
|
||||
writer.Write(0xBF0131C);
|
||||
Serializers.String.write(writer, _userName);
|
||||
}
|
||||
|
||||
public override void OnResponse(BinaryReader reader)
|
||||
{
|
||||
var code = reader.ReadUInt32();
|
||||
var peer = TL.Parse<Peer>(reader);
|
||||
id = reader.ReadInt32();
|
||||
}
|
||||
|
||||
public override void OnException(Exception exception)
|
||||
|
|
@ -29,7 +30,7 @@ namespace TLSharp.Core.Requests
|
|||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override bool Confirmed { get; }
|
||||
public override bool Confirmed => true;
|
||||
public override bool Responded { get; }
|
||||
}
|
||||
}
|
||||
|
|
@ -216,7 +216,7 @@ namespace TLSharp.Core
|
|||
await _sender.Send(request);
|
||||
await _sender.Recieve(request);
|
||||
|
||||
return null;
|
||||
return request.id;
|
||||
}
|
||||
|
||||
public async Task SendMessage(int id, string message)
|
||||
|
|
|
|||
|
|
@ -15,6 +15,8 @@ namespace TLSharp.Tests
|
|||
|
||||
private string NumberToAuthenticate { get; set; }
|
||||
|
||||
private string UserNameToSendMessage { get; set; }
|
||||
|
||||
[TestInitialize]
|
||||
public void Init()
|
||||
{
|
||||
|
|
@ -26,6 +28,11 @@ namespace TLSharp.Tests
|
|||
NumberToSendMessage = ConfigurationManager.AppSettings["numberToSendMessage"];
|
||||
if (string.IsNullOrEmpty(NumberToSendMessage))
|
||||
throw new InvalidOperationException("NumberToSendMessage is null. Specify number in app.config");
|
||||
|
||||
UserNameToSendMessage = ConfigurationManager.AppSettings["userNameToSendMessage"];
|
||||
if (string.IsNullOrEmpty(UserNameToSendMessage))
|
||||
throw new InvalidOperationException("UserNameToSendMessage is null. Specify userName in app.config");
|
||||
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
|
|
@ -82,11 +89,28 @@ namespace TLSharp.Tests
|
|||
|
||||
Assert.IsTrue(client.IsUserAuthorized());
|
||||
|
||||
var res = await client.ImportByUserName(NumberToSendMessage);
|
||||
var res = await client.ImportByUserName(UserNameToSendMessage);
|
||||
|
||||
Assert.IsNotNull(res);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task ImportByUserNameAndSendMessage()
|
||||
{
|
||||
var store = new FileSessionStore();
|
||||
var client = new TelegramClient(store, "session");
|
||||
|
||||
await client.Connect();
|
||||
|
||||
Assert.IsTrue(client.IsUserAuthorized());
|
||||
|
||||
var res = await client.ImportByUserName(UserNameToSendMessage);
|
||||
|
||||
Assert.IsNotNull(res);
|
||||
|
||||
await client.SendMessage(res.Value, "Test message from TelegramClient");
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task SendMessage()
|
||||
{
|
||||
|
|
|
|||
|
|
@ -3,5 +3,6 @@
|
|||
<appSettings>
|
||||
<add key="numberToAuthenticate" value="" />
|
||||
<add key="numberToSendMessage" value=""/>
|
||||
<add key="userNameToSendMessage" value=""/>
|
||||
</appSettings>
|
||||
</configuration>
|
||||
|
|
|
|||
Loading…
Reference in a new issue