نمایش نتایج 1 تا 7 از 7

نام تاپیک: اتصال به تلگرام با api-id , api-hash از طریق سی شارپ

  1. #1

    Question اتصال به تلگرام با api-id , api-hash از طریق سی شارپ

    به عرض سلام خدمت دوستان عزیز من با استفاده از کتابخانه tlsharp قصد دارم چک کنم که یک شماره در تلگرام قبلا ثبت شده یا نه
    برای این کار قطعه کد زیر را ثبت کردم ( برای انجام مراحل بعدی مشکلی ندارم ) ولی وقتی برنامه را اجرا می کنم با خطا مواجه می شم کسی هست که بدونه دلیل این خطا چیه ؟
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using TLSharp.Core;

    namespace ConsoleApplication4
    {
    class Program
    {
    private static int apiID = ------;
    private static string apiHash = "**********************";
    static void Main(string[] args)
    {
    Task.Run(()=>TestUserInTelegramRegister());
    Console.ReadLine();
    }

    static async Task TestUserInTelegramRegister()
    {
    var store = new FileSessionStore();
    try
    {
    var client = new TelegramClient(apiID, apiHash, store, "session", null);
    await client.ConnectAsync();
    }
    catch (Exception e)
    {
    Console.WriteLine(e);

    }


    }
    }
    }



    کد HTML:
    <p style="color:red">
    
    error:
    &nbsp;
    A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond 149.154.175.100:443
    </p>
    

    Screenshot (34).png

  2. #2
    مدیر بخش آواتار محمد رضا فاتحی
    تاریخ عضویت
    مهر 1387
    محل زندگی
    کهنسالترین موجود زنده در شهر منه
    پست
    1,181

    نقل قول: اتصال به تلگرام با api-id , api-hash از طریق سی شارپ

    فیلترشکنتون رو روشن کنید ببینید باز هم این خطا میاد؟
    یک نقطه بیشتر فرق بین رحیم و رجیم نیست...از نقطه ای بترس که شیطانیت می کند

    ________________________

  3. #3

    نقل قول: اتصال به تلگرام با api-id , api-hash از طریق سی شارپ

    آره فری گیت رو نصب کردم روشن می کنم بازم همین خطا رو میده

  4. #4

    نقل قول: اتصال به تلگرام با api-id , api-hash از طریق سی شارپ

    سلام
    من هم دقیقا همین مشکل رو دارم
    قبل از این که تلگرام فیلتر بشه برنامه کار میکرد ولی الان با فیلتر شکن هم کار نمیکنه.
    فکر کنم برای اتصال باید از پروکسی استفاده کرد.
    کسی نحوه اتصال با پروکسی رو تو tlsharp میدونه؟

  5. #5

    نقل قول: اتصال به تلگرام با api-id , api-hash از طریق سی شارپ

    سلام دوستان ی راه حل براش پیدا کردم
    با استفاده از قطعه که زیر مشکل حل خواهد شد .



    TcpClient tcp = conectarProxy(httpProxyHost, httpProxyPort);
    client = new TelegramClient(appId, appHash, null, null, new TcpClientConnectionHandler(tcp);

    private static TcpClient conectarProxy(string httpProxyHost, int httpProxyPort)
    {
    var url = "http://" + httpProxyHost + ":" + httpProxyPort;
    var proxyUrl = WebRequest.DefaultWebProxy.GetProxy(new Uri(url));
    WebResponse response = null;
    var tentativas = 10;

    while (tentativas >= 0)
    {
    var request = (HttpWebRequest)WebRequest.Create(url);
    request.KeepAlive = true;
    var webProxy = new WebProxy(proxyUrl);
    request.Proxy = webProxy;
    request.Method = "CONNECT";
    request.Timeout = 3000;

    tentativas--;
    try
    {
    response = request.GetResponse();
    break;
    }
    catch (Exception ex)
    {
    if (tentativas >= 0 && ex.Message.Equals("The operation has timed out", StringComparison.InvariantCultureIgnoreCase))
    {
    Console.WriteLine("Ocorreu timeout ao tentar se conectar pelo proxy.");
    }
    else
    {
    throw new Exception("Algo deu errado", ex);
    }
    }
    }
    var responseStream = response.GetResponseStream();
    Debug.Assert(responseStream != null);

    const BindingFlags Flags = BindingFlags.NonPublic | BindingFlags.Instance;

    var rsType = responseStream.GetType();
    var connectionProperty = rsType.GetProperty("Connection", Flags);

    var connection = connectionProperty.GetValue(responseStream, null);
    var connectionType = connection.GetType();
    var networkStreamProperty = connectionType.GetProperty("NetworkStream", Flags);

    var networkStream = networkStreamProperty.GetValue(connection, null);
    var nsType = networkStream.GetType();
    var socketProperty = nsType.GetProperty("Socket", Flags);
    var socket = (Socket)socketProperty.GetValue(networkStream, null);

    return new TcpClient { Client = socket };
    }





    client = new TelegramClient(appId, appHash, null, null, new TcpClientConnectionHandler(tcp));

  6. #6

    Question نقل قول: اتصال به تلگرام با api-id , api-hash از طریق سی شارپ

    نقل قول نوشته شده توسط vahidjafarzadeh مشاهده تاپیک
    سلام دوستان ی راه حل براش پیدا کردم
    با استفاده از قطعه که زیر مشکل حل خواهد شد .



    TcpClient tcp = conectarProxy(httpProxyHost, httpProxyPort);
    client = new TelegramClient(appId, appHash, null, null, new TcpClientConnectionHandler(tcp);

    private static TcpClient conectarProxy(string httpProxyHost, int httpProxyPort)
    {
    var url = "http://" + httpProxyHost + ":" + httpProxyPort;
    var proxyUrl = WebRequest.DefaultWebProxy.GetProxy(new Uri(url));
    WebResponse response = null;
    var tentativas = 10;

    while (tentativas >= 0)
    {
    var request = (HttpWebRequest)WebRequest.Create(url);
    request.KeepAlive = true;
    var webProxy = new WebProxy(proxyUrl);
    request.Proxy = webProxy;
    request.Method = "CONNECT";
    request.Timeout = 3000;

    tentativas--;
    try
    {
    response = request.GetResponse();
    break;
    }
    catch (Exception ex)
    {
    if (tentativas >= 0 && ex.Message.Equals("The operation has timed out", StringComparison.InvariantCultureIgnoreCase))
    {
    Console.WriteLine("Ocorreu timeout ao tentar se conectar pelo proxy.");
    }
    else
    {
    throw new Exception("Algo deu errado", ex);
    }
    }
    }
    var responseStream = response.GetResponseStream();
    Debug.Assert(responseStream != null);

    const BindingFlags Flags = BindingFlags.NonPublic | BindingFlags.Instance;

    var rsType = responseStream.GetType();
    var connectionProperty = rsType.GetProperty("Connection", Flags);

    var connection = connectionProperty.GetValue(responseStream, null);
    var connectionType = connection.GetType();
    var networkStreamProperty = connectionType.GetProperty("NetworkStream", Flags);

    var networkStream = networkStreamProperty.GetValue(connection, null);
    var nsType = networkStream.GetType();
    var socketProperty = nsType.GetProperty("Socket", Flags);
    var socket = (Socket)socketProperty.GetValue(networkStream, null);

    return new TcpClient { Client = socket };
    }





    client = new TelegramClient(appId, appHash, null, null, new TcpClientConnectionHandler(tcp));
    این تابع خروجی اش از نوع TcpClient هست ولی ورودی TelegramClient از نوع TcpClientConnectionHandler هست و خطا میده در این خط روی شی tcp
    client = new TelegramClient(appId, appHash, null, null, new TcpClientConnectionHandler(tcp));[/QUOTE]

  7. #7

    نقل قول: اتصال به تلگرام با api-id , api-hash از طریق سی شارپ

    ممنون از انجمن عالی تون.مطالبش بسیار کامل و جامع هست.موفق باشید.




    اگر علاقه مند به مباحث مربوط به طراحی و بهینه سازی وب سایت هستید از پیج های ما بازدید کنید:
    طراحی سایت در تبریز
    طراحی اپلیکیشن در تبریز
    طراحی لوگو در تبریز
    سئو در تبریز

تاپیک های مشابه

  1. سوال: اتصال به تلگرام با php و ارسال پیام ، موزیک ، عکس و ...
    نوشته شده توسط samsami در بخش PHP
    پاسخ: 1
    آخرین پست: پنج شنبه 11 آبان 1396, 14:57 عصر
  2. پاسخ: 0
    آخرین پست: سه شنبه 28 مرداد 1393, 00:02 صبح
  3. سوال: اتصال از طریق سی شارپ به SqlُServer2000
    نوشته شده توسط Mohammad6767 در بخش C#‎‎
    پاسخ: 10
    آخرین پست: سه شنبه 16 تیر 1388, 16:47 عصر
  4. اتصال از طریق سی شارپ به SqlُServer2000
    نوشته شده توسط Mohammad6767 در بخش C#‎‎
    پاسخ: 1
    آخرین پست: جمعه 01 خرداد 1388, 17:03 عصر
  5. راهنمایی در مورد اتصال به بانک با ADO و جلو گیری از قفل کردن سرور
    نوشته شده توسط saied7468 در بخش توسعه نرم افزارهای تحت شبکه
    پاسخ: 6
    آخرین پست: یک شنبه 11 اسفند 1387, 00:33 صبح

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •