بله | کانال BaleSharp || بـلـــِ شارپ
عکس پروفایل BaleSharp || بـلـــِ شارپB

BaleSharp || بـلـــِ شارپ

۴۸عضو
آپدیت ۱.۵.۴ :۱. اضافه شدن متود sendChatAction همراه با نوع اکشن ها در Enums.ChatAction۲. منتقل کردن شیء ها به Bale.Objects۳. اضافه شدن enum ها در Bale.Enums۴. اضافه شدن متود leaveChat۵. اضافه شدن متود Message.FullAdmin(USERID)هم اکنون در nuget!

۱۰:۳۹

۱. انواع آپدیت های پرداختی۲. میانبر های پیام و چت برای راحت تر شدن کار۳. اضافه شدن forwardMessage و copyMessageبه زودی...

۱۳:۵۲

آپدیت ۱.۵.۵ :۱. اضافه شدن متود های ForwardMessage و CopyMessage۲. اضافه شدن میانبر های مخصوص کپی و فوروارد۳. اضافه شدن شیء PreCheckoutQuery و SuccessfulPayment۴. اضافه شدن هندلر های OnSuccessfulPayment و OnPreCheckoutQuery۵. اضافه شدن میانبر PreCheckoutQuery.answer

۱۴:۴۴

اصلاحیه :مشکل استفاده از PreCheckoutQuery یافت شد و در آپدیت 1.5.5-Fix رفع شد

۱۵:۱۳

دوستان، میتونید تمامی مشکلات، ایده ها و نظرات و سوالات خودتون درمورد کتابخونه رو در گروه شارپ درمیون بگذارید@BlesharpGp

۲۰:۴۲

پس از آپدیت بتای ۱.۵.۶هم اکنون آپدیت استیبل این نسخه رو داریم :۱. اضافه شدن Client.self برای اطلاعات خود ربات۲. اضافه StickerType با تایپ Enum۳. حل مشکل دریافت آپدیت های onMessage۴. بروزرسانی دریافت آپدیت با بروزرسانی متود بلههم اکنون در NuGet

۱۷:۲۰

هرچند وقت یکبار، قبل از نسخه اصلی اپدیت یک نسخه بتا در ناگت پابلیش میشود ( و در این کانال اعلام نمیشود ) شما میتوانید با نصب این پکیج ها و تست قابلیت های اضافه شده و نظر دادن، در دیباگ کردن و ارائه سریعتر نسخه جدید به ما کمک کنیداطلاع رسانی بتا ها : @SharpBetaگروه نظرات و گزارش باگ : @bleSharpGP

۷:۵۵

پس از اپدیت بتای ۱.۵.۷هم اکنون آپدیت استیبل این نسخه :۱. اضافه شدن هندلر onEditedMessage۲. اضافه شدن baleOTP۳. اضافه شدن مارکاپ ها و کیبورد ها به شورتکات های پاسخ۴. اضافه شدن Enums.ChatType5. اضافه شدن دیباگ مود در کلاینت ( فعلا فقط برای پیام های عادی و دستورات )هم اکنون در NuGet!

۲۱:۴۱

کتابخانه بله شارپ به محبوب ترین کتابخانه ساخت بازو در بله به زبان سی شارپ تبدیل شد و با بالاترین آمار دانلود هم اکنون در صدر جدول قرار داردباتشکر از شما که از ما تا اینجا حمایت کردید و ما قدردان شما هستیم

۸:۲۳

آپدیت جدید ۱.۵.۸ :۱. اضافه شدن هندلر onContact۲. اضافه شدن هندلر onLocation۳. اضافه شدن هندلر onDocument۴. اضافه شدن Client.testMessage برای تست مجوز ارسال پیام۵. تغییر نام File.file_id به File.id و تغییر نام File.file_size به File.size۶. اضافه شدن ReplyKeyboardBuilder().EmptyMarkup()۷. برطرف کردن برخی باگ هاهم اکنون در NuGet!

۱۷:۲۹


using Bale;
using Bale.Helpers;
using Bale.Objects;
using Bale.Enums;
using Newtonsoft.Json;


int YOUR_CHAT_ID = 2035204913;
string token = "765460394:8H";
Bale.Client cli = new Client(token);

cli.testMessage(YOUR_CHAT_ID);

InlineKeyboardMarkup inline = new InlineKeyboardBuilder().AddButton("hello").Build();
try
{
    cli.OnCommand = async (message, command, args) =>
    {
        switch (command)
        {
            case "start": await cli.reply_to(message, "Welcome to this bot, This bot is made by BaleSharp"); break;
        }
    };

    cli.OnEditedMessage = async (message) =>
    {
        await message.reply("edited");
        await cli.SendMessage(message.from.id, "edited");
    };



    cli.OnMessage = async (message) =>
    {
        switch (message.text.ToLower())
        {
            case "inline":
                var key = new InlineKeyboardBuilder().AddButton("CallbackButton", "call")
                .NewRow()
                .AddButton("urlButton", url: "https://ble.ir/BaleSharp")
                .NewRow()
                .AddButton("copyTextButton", copyText: "text is copied")
                .Build();
                await cli.reply_to(message, "Here is some of Inline buttons", key);
                break;
            case "reply":
                var keyboard = new ReplyKeyboardBuilder().AddButton("Made by", true)
                .NewRow()
                .AddButton("BaleSharp")
                .Build();
                await cli.reply_to(message, "Here are some ReplyKeyboard buttons", keyboard);
                break;
            case "invoice":
                LabeledPrice lable = new LabeledPrice { label = "test", amount = 1000 };
                cli.sendInvoice(message.chat.id, "testing invoice", "testtt", message.chat.id.ToString(), "WALLET-MGx6hMfqcldnTeAY", [lable]);
                break;
            case "write":
                cli.sendChatAction(message.chat.id, ChatAction.Typing);
                await Task.Delay(5000);
                await message.reply("Chat Action worked", inline);
                break;
            case "leave":
                await cli.leaveChat(message.chat.id);
                break;
            default:
                await cli.reply_to(message, $"You said : {message.text}");
                break;
        }
    };

    cli.OnContact = async (message, contact) =>
    {
        await cli.SendMessage(message.from.id, $"your phone number is : {contact.phone_number}");
    };

    cli.OnDocument = async (message, doc) =>
    {
        await cli.SendMessage(message.from.id, $"getting download link...");
        var link = await cli.FileLink(doc.file_id);
        await cli.SendMessage(message.from.id, $"{link}");
    };
    

    cli.OnSuccessfulPayment = async (message, successful_payment) =>
    {
        await cli.SendMessage(Convert.ToInt64(successful_payment.invoice_payload), "thanks for paying");
    };

    cli.OnLocation = async (message, location) =>
    {
        await cli.SendMessage(message.from.id, $"لوکیشن تشخیص داده شد!\n {location.longitude}x{location.latitude}");
    };

    cli.OnCallbackQuery = async (callback_query) =>
    {
        switch (callback_query.data)
        {
            case "call":
                await cli.SendMessage(callback_query.from.id, "callback_query button clicked!");
                break;
        }
    };
    cli.StartReceiving();
    await Task.Delay(-1);
}
catch (Exception ex)
{
    Console.WriteLine(ex.Message);
}
finally
{
    cli.StopReceiving();
}

نمونه کد با استفاده از تمامی هندلر های ساخته شده تا به حال

۱۷:۳۵

آنچه در آپدیت بعد اضافه خواهد شد۱. تابع ExecuteMultipart مشابه ExecuteAsync برای ارسال درخواست های حاوی رسانه۲. اضافه شدن sendPhoto۳. اضافه شدن sendVideo۴. اضافه شدن sendDocument۵. اضافه شدن OnPhoto۶. اضافه شدن sendLocation۷. حل مشکل ارور های دیکد جیسونو...در نسخه ۱.۵.۹ بتا، اطلاع رسانی در @SharpBeta

۱۸:۰۷

بازارسال شده از BaleSharp BETA
آپدیت بتا 1.5.9 :۱. اضافه شدن هندلر OnPhoto۲. اضافه شدن SendLocation۳. اضافه شدن SendPhoto۴. اضافه شدن SendVideo۵. اضافه شدن SendDocument۶. حل مشکل دیکد جیسونهم اکنون در ناگت! دانلود درhttps://www.nuget.org/packages/BaleSharp/با دستور
dotnet add package BaleSharp --version 1.5.8

بتای بله شارپ : @sharpBeta

۲۰:۱۱

با سلام خدمت تمامی کاربران محترم بله شارپکتابخونه بله شارپ، هر هفته آپدیت میگیره، چه بتا و چه استیبلو تا حد امکان امکانات جدید، شورتکات های جدید اضافه میشه و اگر بله توی متد ها تغییری ایجاد کرده باشه متدهارو بروز میکنیماگر متدی هست، که بهش نیاز دارید و تا الان اضافه نشده، ممنون میشیم اونو توی گروه @BleSharpGP بگیدتا زمانی که اونا اضافه بشن شما میتونید از متد های زیرساختی ExecuteAsync و ExecuteMultipart استفاده کنیدروش استفاده از اونا توی پیام بعدی مثال زده میشه

۱۰:۵۰

ExecuteAsync :

این متود برای ارسال درخواست های عادی و بدون رسانست
var dict = new Dictionary<string, object>
{
    {"callback_query_id", callbackquery.id},
    {"text", "YourText"}
};
string res = await client.ExecuteAsync("MethodName", dict");
var tmp = JsonConvert.DeserializeObject<ApiResponse<TheObjectThatReturns>>(res);
و نتیجه را در
tmp.Result 
نشان میدهد

۱۰:۵۵

ExecuteMultipart :

var dict = new Dictionary<string, object>
{
    {"chat_id", ChatID}
};
string res = await client.ExecuteMultipart("MethodName", file, dict, fileFormFieldName: "FieldnameOfFile");
return JsonConvert.DeserializeObject<ApiResponse<TheObjectThatReturns>>(res).Result;

۱۰:۵۸

آپدیت ۲.۰.۰ :۱. حل مشکلات موجود در بتای ۱.۵.۹۲. اضافه شدن SendAudio۳. اضافه شدن SendVoice۴. اضافه شدن SendAnimation۵. کامل شدن متد های اصلی باتسازیهم اکنون در NuGet!

۱۲:۲۶

undefined آپدیت ۲.۱.۰ :
تغییرات :+ اضافه شدن هندلر های OnNewUser & OnLeftUser & OnWebAppData undefined+ اضافه شدن شیء Transaction undefined+ اضافه شدن تابع InquireTransaction undefined+ اضافه شدن سازنده ها به شیء های LabledPrice & CopyTextButton & WebAppInfo برای آسان تر شدن استفاده undefined+ تغییر ورودی دکمه وب اپ در مارکاپ اینلاین ها از WebAppInfo به String و انجام تبدیل ها به صورت اتومات undefined+ اضافه شدن logout و close undefined+ رفع برخی مشکلات جزئی undefined
آپدیت بزرگ کتابخانه بله شارپ هم اکنون در NuGet! undefined آماده ی دانلود و استفاده‌ی شمادانلود با :dotnet add package BaleSharp --version 2.1.0منتظر نظرات شما در @BleSharpGP هستیم undefined

۱۰:۴۴

undefined آپدیت ۲.۱.۱ :
تغییرات :+ اضافه شدن هندلر های OnVideo & OnAudio & OnSticker undefined+ اضافه شدن ReplyKeyboardRemove 🪣+ حل بعضی مشکلات و باگ ها در ابجکت ها undefined
آپدیت کتابخانه بله شارپ هم اکنون در NuGet! undefined آماده ی دانلود و استفاده‌ی شمادانلود با :dotnet add package BaleSharp --version 2.1.1منتظر نظرات شما در @BleSharpGP هستیم undefined

۱۷:۲۵

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

۹:۵۶