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

نام تاپیک: ارسال پیام به کاربران سایت با تلگرام

  1. #1
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    ایران
    پست
    487

    ارسال پیام به کاربران سایت با تلگرام

    سلام
    میخوام به کاربران سایت با تلگرام پیام بفرستم.از Telegram.bot استفاده میکنم.

    TelegramBotClient botClient = new TelegramBotClient("Token");
    Task<Message> ddd = botClient.SendTextMessageAsync(324822242, "من روبات تلگرام هستم");

    این کد باchatId دقیقا درست کار میکنه. اما با uaserNAme نه !!!!!
    حالا مشکل اینجاست که شما باید chatId کاربر رو بدونین که خوب نمیدونین. حالا اگر به روشی بشه از طریق شماره موبایل کاربر chatId رو پیدا کرد مشکل حل میشه. البته این روشی هست که به ذهنم رسیده. دوستان اگر راهکار دیگری هم سراغ دارید لطفا راهنمایی کنید
    با تشکر
    آخرین ویرایش به وسیله hmahdavi921 : پنج شنبه 15 تیر 1396 در 12:50 عصر

  2. #2
    کاربر دائمی آواتار parvizwpf
    تاریخ عضویت
    بهمن 1390
    محل زندگی
    TEH
    پست
    2,919

    نقل قول: ارسال پیام به کاربران سایت با تلگرام

    تا جایی که من میدونم نمیشه . مگر اینکه اول کاربران بیان و contact message برای شما بفرستند یعنی یه جورایی عضو بشن سپس شما میتونید chat id هر کاربر رو گرفته و به راحتی پیام بفرستید برای گرفتن اطلاعات contact:
    SendContactAsync استفاده کنید.
    در واقع تا کسی با شما توی بات درخواستی نداده باشه شما نمیتونید آی چتش رو بفهمید . یعنی شما باید به محض ورودش بهش درخواست بدید که شماره بفرسته در غیر اینصورت اون باید پیامی بفرسته تا چت آیدیش معلوم بشه

  3. #3

    نقل قول: ارسال پیام به کاربران سایت با تلگرام

    2 روش برای بدرست آوردن Chat ID بدون عضو شدن کاربر در بات و بدون اطلاع و درگیری اون کاربر وجود داره :
    1- Import کردن شماره اون کاربر به لیست Contact هاتون که در Respond این عملیات تلگرام به شما یک Json برمیگردونه که شامل User ID اون کاربر هست .
    2- استفاده از Send Contact در BOT API به این صورت که شما به یک کاربر اون شماره رو ارسال میکنید و Json Result اون شامل User ID هستش .

    این لینک به تلگرام رو در نظر بگیرید :

    https://api.telegram.org/bot{BOTTOKEN}/sendContact?chat_id=YOUROWNCHATID&phone_number=USE RPHONENUMBER&first_name=MoienTajik


    جای USERPHONENUMBER شماره شخصی که میخواید User ID اش رو بگیرید بزارید و جای YOUROWNCHATID هم Chat ID خودتون رو قرار بدید و جای BOTTOKEN هم بات توکن خودتون رو قرار بدید .
    دقت کنید که از Delay استفاده کنید چون اگر پشت هم این درخواست رو به تلگرام بفرستید بلاک میشید .

  4. #4
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    ایران
    پست
    487

    نقل قول: ارسال پیام به کاربران سایت با تلگرام

    نقل قول نوشته شده توسط Moien Tajik مشاهده تاپیک
    2 روش برای بدرست آوردن Chat ID بدون عضو شدن کاربر در بات و بدون اطلاع و درگیری اون کاربر وجود داره :
    1- Import کردن شماره اون کاربر به لیست Contact هاتون که در Respond این عملیات تلگرام به شما یک Json برمیگردونه که شامل User ID اون کاربر هست .
    2- استفاده از Send Contact در BOT API به این صورت که شما به یک کاربر اون شماره رو ارسال میکنید و Json Result اون شامل User ID هستش .

    این لینک به تلگرام رو در نظر بگیرید :

    https://api.telegram.org/bot{BOTTOKEN}/sendContact?chat_id=YOUROWNCHATID&phone_number=USE RPHONENUMBER&first_name=MoienTajik


    جای USERPHONENUMBER شماره شخصی که میخواید User ID اش رو بگیرید بزارید و جای YOUROWNCHATID هم Chat ID خودتون رو قرار بدید و جای BOTTOKEN هم بات توکن خودتون رو قرار بدید .
    دقت کنید که از Delay استفاده کنید چون اگر پشت هم این درخواست رو به تلگرام بفرستید بلاک میشید .
    مرسی Moien Tajik
    من با روش اول متن ، لینک و فایل فرستادم فقط برای گرفتن chatId کاربر هر بار حتما باید اول از SendContactAsync استفاده کنم تا در نتیجه chatId رو بهم برگردونه بعد ازش استفاده کنم . چطوری میتونم لیست تمام contact ها رو بدست بیارم تا در دفعات بعد لازم نباشه کاربر رو add نکنم ؟

  5. #5

    نقل قول: ارسال پیام به کاربران سایت با تلگرام

    نیازی نیست هربار این کار رو کنید ، یکبار ChatID رو بگیرید ، Response رو تبدیل به JSON کنید و ChatID رو جدا کنید و داخل دیتابیس ذخیرش کنید ، به این شکل ChatID رو داخل دیتابیس دارید و دیگه نیاز ندارید به تلگرام Request بفرستید .
    روش دوم بهتر از روش اول هست ، چون روش اول Limitation زمانی بیشتری از سمت تلگرام داره و حداقل 10 ثانیه باید بین هر Request برای افزودن Contact صبر کنید و این روش محدودیت هم داره چون Contact های شما نمیتونن بیشتر از 250 باشن و کتابخونه TLSharp هم متاسفانه TLDeleteContact رو بدرستی ایجاد نشده و نمیشه ازش استفاده کرد .

    در هر صورت اگر نیاز داشتید تمام Contact هاتون رو بگیرید ، به این شکل عمل کنید :

    await client.ConnectAsync();
    var result = await client.GetContactsAsync();


    //find recipient in contacts
    var user = result.users.lists
    .Where(x => x.GetType() == typeof (TLUser))
    .Cast<TLUser>();

  6. #6
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    ایران
    پست
    487

    نقل قول: ارسال پیام به کاربران سایت با تلگرام

    نقل قول نوشته شده توسط Moien Tajik مشاهده تاپیک
    نیازی نیست هربار این کار رو کنید ، یکبار ChatID رو بگیرید ، Response رو تبدیل به JSON کنید و ChatID رو جدا کنید و داخل دیتابیس ذخیرش کنید ، به این شکل ChatID رو داخل دیتابیس دارید و دیگه نیاز ندارید به تلگرام Request بفرستید .
    روش دوم بهتر از روش اول هست ، چون روش اول Limitation زمانی بیشتری از سمت تلگرام داره و حداقل 10 ثانیه باید بین هر Request برای افزودن Contact صبر کنید و این روش محدودیت هم داره چون Contact های شما نمیتونن بیشتر از 250 باشن و کتابخونه TLSharp هم متاسفانه TLDeleteContact رو بدرستی ایجاد نشده و نمیشه ازش استفاده کرد .

    در هر صورت اگر نیاز داشتید تمام Contact هاتون رو بگیرید ، به این شکل عمل کنید :

    await client.ConnectAsync();
    var result = await client.GetContactsAsync();


    //find recipient in contacts
    var user = result.users.lists
    .Where(x => x.GetType() == typeof (TLUser))
    .Cast<TLUser>();


    من از telgram.bot استفاده میکنم و چنین متدی نداره !

  7. #7

    نقل قول: ارسال پیام به کاربران سایت با تلگرام

    از TLSharp استفاده کنید ، داخل Nuget هم موجود هستش .
    https://github.com/sochix/TLSharp

  8. #8
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    ایران
    پست
    487

    نقل قول: ارسال پیام به کاربران سایت با تلگرام

    نقل قول نوشته شده توسط Moien Tajik مشاهده تاپیک
    از TLSharp استفاده کنید ، داخل Nuget هم موجود هستش .
    https://github.com/sochix/TLSharp
    نمونه کد دارید برام بفرستید؟
    آخرین ویرایش به وسیله hmahdavi921 : یک شنبه 18 تیر 1396 در 14:47 عصر

  9. #9

    نقل قول: ارسال پیام به کاربران سایت با تلگرام

    خیر نمونه کد ندارم ، Documentation داخل Github کامل هستش و میتونید راحت باهاش کار کنید .
    برای ارسال پیام به کسانی که تو بات شما عضو نیستن تنها راه استفاده از TLSharp و ایجاد Session از اکانتتون هست و با Telegram.bot نمیتونید این کار رو انجام بدید .

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

  1. پاسخ: 8
    آخرین پست: شنبه 10 مهر 1389, 19:27 عصر
  2. سوال: فرستادن ایمیل به کاربران سایت با استفاده از outlook
    نوشته شده توسط bahar_engineer در بخش ASP.NET Web Forms
    پاسخ: 4
    آخرین پست: چهارشنبه 25 فروردین 1389, 16:15 عصر
  3. ارسال پیام به کاربران Online
    نوشته شده توسط Mahdavi در بخش ASP.NET Web Forms
    پاسخ: 6
    آخرین پست: جمعه 06 فروردین 1389, 00:36 صبح
  4. پاسخ: 0
    آخرین پست: شنبه 21 مرداد 1385, 10:37 صبح

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

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