Improved import contact method

This commit is contained in:
Ilya Pirozhneko 2016-02-01 23:06:15 +03:00
parent d2739ba9cf
commit e281f281dd
3 changed files with 7 additions and 8 deletions

View file

@ -16,7 +16,7 @@ namespace TLSharp.Core.Requests
public override void OnSend(BinaryWriter writer)
{
writer.Write(0x39620c41); // invokeWithLayer10#39620c41, invokeWithLayer11#a6b88fdf
writer.Write(0x1c900537); // invokeWithLayer18#1c900537
writer.Write(0x69796de9); // initConnection
writer.Write(_apiId); // api id
Serializers.String.write(writer, "WinPhone Emulator"); // device model

View file

@ -205,9 +205,9 @@ namespace TLSharp.Core
await _sender.Send(request);
await _sender.Recieve(request);
var importedUser = request.users.FirstOrDefault();
var importedUser = (ImportedContactConstructor)request.imported.FirstOrDefault();
return importedUser == null ? (int?)null : ((UserContactConstructor)importedUser).id;
return importedUser?.user_id;
}
public async Task SendMessage(int id, string message)

View file

@ -1,6 +1,5 @@
using System;
using System.Configuration;
using System.Threading;
using System.Threading.Tasks;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using TLSharp.Core;
@ -22,11 +21,11 @@ namespace TLSharp.Tests
// Setup your phone numbers in app.config
NumberToAuthenticate = ConfigurationManager.AppSettings["numberToAuthenticate"];
if (string.IsNullOrEmpty(NumberToAuthenticate))
throw new InvalidOperationException("NumberToAuthenticate is null");
throw new InvalidOperationException("NumberToAuthenticate is null. Specify number in app.config");
NumberToSendMessage = ConfigurationManager.AppSettings["numberToSendMessage"];
if (string.IsNullOrEmpty(NumberToSendMessage))
throw new InvalidOperationException("NumberToSendMessage is null");
throw new InvalidOperationException("NumberToSendMessage is null. Specify number in app.config");
}
[TestMethod]
@ -38,7 +37,7 @@ namespace TLSharp.Tests
await client.Connect();
var hash = await client.SendCodeRequest(NumberToAuthenticate);
var code = "123"; // you can change code in debugger
var code = "86474"; // you can change code in debugger
var user = await client.MakeAuth(NumberToAuthenticate, hash, code);
@ -49,7 +48,7 @@ namespace TLSharp.Tests
public async Task CheckPhones()
{
var store = new FileSessionStore();
var client = new Core.TelegramClient(store, "session");
var client = new TelegramClient(store, "session");
await client.Connect();
var result = await client.IsPhoneRegistered(NumberToAuthenticate);