PDA

View Full Version : تشخیص عضو بودن شماره ها در تلگرام



samiasoft
یک شنبه 26 شهریور 1396, 22:21 عصر
سلام دوستان

کدام یک از کتابخانه های زیر این امکان رو به ما میده که بتونیم بررسی کنیم که شماره موردنظر در تلگرام ثبت نام شده یا نه.

NetTelegramBotApi.dll

Telegram.Bot.dll

Telegram.dll

TelegramBotSharp.dll

ir.telegramp.dll

و....

البته با api خود تلگرام رو هم بررسی کردم ولی چنین امکانی رو به ما نمیداد.

اگر بشود اینکارو انجام داد ایا محدودیتی در این باره وجود دارد ؟ برای مثال اجازه اینو داریم چندهزار شماره رو بررسی کنیم که ایا عضون یا خیر؟

همچنین ایا میتوان بدون ذخیره کردن این شماره ها به اونا پیام هم ارسال کرد؟

ممنون میشوم راهنمایی کنید

Moien Tajik
یک شنبه 26 شهریور 1396, 22:48 عصر
https://github.com/sochix/TLSharp#available-methods

samiasoft
دوشنبه 27 شهریور 1396, 16:42 عصر
تشکر از شما ولی متاسفانه خیلی مبهم هست کار باهاش

برای تشخیص شماره اینو نوشتم ولی نمیدونم کدوم قسمت شماره رو وارد کنم

TeleSharp.TL.Auth.TLCheckedPhone tl = new TeleSharp.TL.Auth.TLCheckedPhone();



textBox2.Text = tl.phone_registered.ToString();

ramtinak
چهارشنبه 29 شهریور 1396, 00:17 صبح
سلام، با TLSharp خیلی ساده است!
آخرین نسخه از این کتابخانه رو به پروژه ـتون از Nuget Package Manager اضافه کنید.
اینم کد مورد نظر:
// api id ke az telegram gereftid int apiId = 0;
// api hashi ke az telegram gereftid
string apiHash = "API HASH";


var client = new TLSharp.Core.TelegramClient(apiId, apiHash);
await client.ConnectAsync();
if (client.IsConnected)
{
var number = txtNumber.Text;
// check mikonim age + dasht bayad ouno hazf konim


// age dasht ke hazfesh mikonim, age nadasht ham bikhialesh mishim
var normalizedNumber = number.StartsWith("+") ? number.Substring(1) : number;


var result = await client.IsPhoneRegisteredAsync(normalizedNumber);


MessageBox.Show((result ? "این شماره در تلگرام موجود است."
: "این شماره در تلگرام موجود نمیباشد و میتوانید آنرا ثبت نمایید."));
}

برای گرفتن Api id و api hash باید یک برنامه در api telegram به آدرس زیر با شماره موبایلتان ایجاد کنید:
https://my.telegram.org

موفق باشید.

samiasoft
چهارشنبه 29 شهریور 1396, 00:59 صبح
سلام، با TLSharp خیلی ساده است!


ممنونم از راهنماییتون

فقط سوالی که پیش میاد این هستش که ایا محدودیتی در بررسی شماره داریم؟
یعنی اینکه به فرض 1000 تا شماره رو من چک کنم ایا اکانتم ریپورت نمیشه؟


و دو سوال دیگر :

- ایا بدون ذخیره شماره ای میشود بهش پیام داد با
TLSharp ؟

- ایا با TLSharp میشود لیست شماره هایی که داریم را در اکانت تلگرام ذخیره کنیم؟

دستور زیر رو نوشتم ولی وقتی مقادیر رو ارسال میکنم خطا میاد !
private async void ImportContact(string _phone, string _first_name, string _last_name)

{

var client = new TLSharp.Core.TelegramClient(apiId, apiHash);
await client.ConnectAsync();
if (client.IsConnected)
{
var phoneContact = new TLInputPhoneContact() { phone = _phone, first_name = _first_name, last_name = _last_name };
var contacts = new List<TLInputPhoneContact>() { phoneContact };
var req = new TeleSharp.TL.Contacts.TLRequestImportContacts() { contacts = new TLVector<TLInputPhoneContact>() { lists = contacts } };
var rrr = await client.SendRequestAsync<TeleSharp.TL.Contacts.TLImportedContacts>(req);
}
}

ramtinak
چهارشنبه 29 شهریور 1396, 06:26 صبح
سوال اول: به احتمال زیاد بلاک میشید. من دو سه روز پیش چند بار لاگین کردم(بدون ذخیره سازی Session)، برای 22 ساعت بلاکم کرد.

بقیه سوالهاتون رو نمیدونم و اینکه من زیاد با API تلگرام آشنایی ندارم،
اگه مشکلی دارید داخل Github این پروژه یک issue باز کنید.

موفق باشید.

ghamgin
چهارشنبه 29 شهریور 1396, 10:03 صبح
سلام
من در ویزوال 2013 توی قسمت نیوگت هرکار می کنم بات تلگرام نصب نمیشه و پیغام fail میده
چکار کنم؟
ممنون میشم بگید

Moien Tajik
چهارشنبه 29 شهریور 1396, 10:24 صبح
- ایا بدون ذخیره شماره ای میشود بهش پیام داد با TLSharp ؟
باید User_id کاربر رو داشته باشید ، راه هایی که میتونید این user_id رو بدست بیارید :
1- عضو شدن کاربر داخل یک بات و گرفتن update از bot که داخلش user_id کاربر ارسال شده .
2- استفاده از share contact در بات ها برای گرفتن user_id


- ایا با TLSharp میشود لیست شماره هایی که داریم را در اکانت تلگرام ذخیره کنیم؟
متد addContact داره اما فکر میکنم حداکثر تا 450 مخاطب میتونید اضافه کنید ؛ محدودیت داره .
طبق مثال های خود github اش جلو برید راحت کارتون راه میوفته .

shabgardetanha
چهارشنبه 29 شهریور 1396, 10:32 صبح
سلام
من میخوام سایت asp رو با ربات کنترل کنم
یعنی مطلب بزارم داخلش یا ربات اعضای جدید رو بگه و بهشون پیام بده
این امکان هست؟
و
چطور پیام های دریافتی رو در بانک ذخیره کنم؟
و
اموزشی برای برنامه نویسی ربات در سی شارپ سراغ دارید بهم معرفی کنید
ممنون میشم

samiasoft
چهارشنبه 29 شهریور 1396, 11:51 صبح
سلام
من در ویزوال 2013 توی قسمت نیوگت هرکار می کنم بات تلگرام نصب نمیشه و پیغام fail میده
چکار کنم؟
ممنون میشم بگید
2013 فکر نمیکنم از فریمورک 4.6 پشتیبانی کند...این کتابخانه هم برای اضافه شدن به این نسخه فریمورک دات نت نیاز دارد.

مورد بعدی اینکه ناگت مشکلات زیاد داره...سعی کنید خود dll رو از سایت ناگت دانلود کنید و از رفرنس اضافه کنید

shabgardetanha
چهارشنبه 29 شهریور 1396, 12:00 عصر
2013 فکر نمیکنم از فریمورک 4.6 پشتیبانی کند...این کتابخانه هم برای اضافه شدن به این نسخه فریمورک دات نت نیاز دارد.

مورد بعدی اینکه ناگت مشکلات زیاد داره...سعی کنید خود dll رو از سایت ناگت دانلود کنید و از رفرنس اضافه کنید

منم همین مشکل دارم
چطور dll بگیرم و add کنم؟

samiasoft
چهارشنبه 29 شهریور 1396, 12:11 عصر
متد addContact داره اما فکر میکنم حداکثر تا 450 مخاطب میتونید اضافه کنید ؛ محدودیت داره .


به نظرتون من بیام 450 تا مخاطب اضافه کنم...بعد پاکشون کنم دوباره اجازه اضافه کردن 450 مخاطب رو دارم؟

samiasoft
چهارشنبه 29 شهریور 1396, 12:17 عصر
منم همین مشکل دارم
چطور dll بگیرم و add کنم؟

dll های ضمیمه شده رو در رفرنس اد کنید همین !


همینا رو از سایت ناگت هم میتونستید دانلود کنید به سادگی!

نکته > فریمورک پروژه 4.6 باشد حداقل

Moien Tajik
پنج شنبه 30 شهریور 1396, 14:41 عصر
به نظرتون من بیام 450 تا مخاطب اضافه کنم...بعد پاکشون کنم دوباره اجازه اضافه کردن 450 مخاطب رو دارم؟
بله اگر پاک کنید ، میتونید اضافه کنید اما تلگرام محدودیت زمانی داره و اگر یک عملیات رو پشت هم تکرار کنید اکانت شما رو ریپورت میکنه و موقع انجام عملیات ها به Flood_Exception برمیخورید ، همچنین متد DeleteContact در TLSharp اون زمان که بنده باهاش کار میکردم بدرستی پیاده سازی نشده بود و کار نمیکرد .

aliramazani
سه شنبه 04 مهر 1396, 20:32 عصر
روی دات نت 4 به بالا جواب میده