Сложности в программировании мессенджера Telegram на C#

Я пытаюсь отправить код (TLRequestAuthSendCode), но он не приходит. В чем может быть проблема?

Часть кода:

TLContext tlContext = new TLApiContext();
TcpClient tcpClient = new TcpClient();
tcpClient.Connect(connections[0].getAddress(), (int)connections[0].getPort());
TLRequestAuthSendCode tlRequestAuthSendCode = new TLRequestAuthSendCode("PHONE_NUMBER",
0, 19114, "TOKEN", "en");
tlRequestAuthSendCode.serializeBody(new StreamWriter(tcpClient.GetStream()));

person Community    schedule 20.11.2014    source источник
comment
покажите нам код и попробуйте создать SSCCE.   -  person    schedule 20.11.2014


Ответы (3)


Вы можете начать с этого, но я написал его на vb.net, а не на C#.

Он поможет вам приступить к созданию собственного Telegram-API с нуля.

Также попробуйте ознакомиться с онлайн-документацией, это сложно, но пошаговое объяснение, которое я дал в этой ссылке выше при создании AuthKey.

Удачи

person Charles Okwuagwu    schedule 30.09.2015

можете ли вы отладить свой код и сказать, если

tcpClient.Connect(connections[0].getAddress(),

Connections[0] имеет значение?

Я предлагаю вам изменить код на следующий:

        public void run() {
        connections = new ConnectionInfo[]{
            new ConnectionInfo(1, 0, "149.154.167.40", 443)
        };

        apiState = new ApiState(connections);
        doReqCode(connections);

        private void doReqCode(connections){

        var args = new SocketAsyncEventArgs();

Я не вижу, где код может сломаться, возможно, было бы полезно более подробное описание вашей проблемы.

person Luca    schedule 03.03.2015

TcpClient tcpClient = new TcpClient();

Когда я попробовал код, мне в основном казалось, что порт либо заблокирован, либо уже используется. Может быть, у вас есть проблема с разрешением. По крайней мере, мне не удалось заставить Socket работать с таким кодом. Также я не углублялся в ваш код, но вы используете порт 443. Это зарезервированный порт с ограниченным доступом.

person sch4um4    schedule 03.03.2015