رفتن به مطلب

امین مهدی نژاد

معاون انجمن
  • تعداد ارسال ها

    716
  • تاریخ عضویت

  • آخرین بازدید

  • روز های برد

    135

پست ها ارسال شده توسط امین مهدی نژاد

  1. در 18 ساعت قبل، fun_code گفته است :

    سلام

    بسیار متشکرم ، منتظر ورژن جدید میمونم.

    احتمالا روشتون استفاده از تایمر در سرویس و چک کردن وضعیت مشخصه connected هست. درسته ؟

    جسارتا در ورژن جدید تنها فعال بودن اینرتنت دیتا یا متصل بودن وای.فای بررسی میشه یا بطور حقیقی اعتبار صحت اینترنت بررسی میشه ؟

    فرضا وقتی بسته اینترنت تمام می شود ، اینترنت فعال است اما اینترنتی برای استفاده وجود ندارد.

    نه با جاوا آبجکت می شه ولی استفاده از ورژن جدید بهتره . تا جمعه صبر کنید.

    :53:

    • پسندیدن 2
  2. در 8 ساعت قبل، fun_code گفته است :

    سلام

    جسارتا این کتابخانه خوبی که ساختید ، شبیه به سوکت رویدادی نداره که قطعی ارتباط رو با سرور تشخیص بده ؟!

    فرضا حجم بسته نت تمام شد ارتباط قطع میشه دیگه ، یا ارتباط از جانب سرور یا از جانب کلاینت قطع شد چطور بفهمیم ؟

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

    سلام.

    تلگرام پرسیدی جواب دادم ولی چک نکردی

    جمعه ورژن جدید رو می زارم

    اگه عجله داری از تلگرام بپرس تا یه روش برات شرح بدم کارت راه بیوفته

    :53:

    • پسندیدن 1
  3. در 11 دقیقه قبل، mja89 گفته است :

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

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

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

    میشه لطف کنید بگید باید چکار کنم ؟؟؟؟

    کلا باید سورس خودمو بیخیال بشم (که سمت سرور با php نوشته شده ) یا اینکه نه در کنار اون سورس باید از این کدها استفاده بشه ؟؟؟

    اگه باید درکنار کد خودم این کد ها رو قرار بدم چطوری میتونم اینکارو بکنم چون تا بحال از nod.js استفاده نکردم و نمیشناسمش.

    و در اخر باتشکر از اینکه این کتابخونه رو رایگان قراردادید.

    ترکیب php و node.js زیاد چیز جالبی از کار در نمیاد.

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

    اگر سورس php رو زیاد پیش نرفتید اونو بی خیال بشید.

    البته با php هم میشه سوکت نویسی کرد ولی node.js  استاندارد تر و برای اینکار مناسب تره.

    اگه با نود کار رو شروع کردی یه پیام با تلگرام برام بفرست.

    «موفق باشید.»

  4. در 15 ساعت قبل، fun_code گفته است :

    فقط ممنون میشم بفرمایید پاسخ چه پیام هایی به رویداد new_message وارد میشه ؟

     // when the client emits 'new message', this listens and executes
      socket.on('new_message', (data) => {
        // we tell the client to execute 'new message'
        socket.broadcast.emit('new_message', {
          username: socket.username,
          message: data
        });
      });
    • پسندیدن 2
  5. فعلا تنها کتابخونه ای که در انجمن برای اینکار وجود داره همین کتابخونه است. کار کردن لاهاش هم زیاد سخت نیست سعی کنید مثالش رو اجرا کنید تا کار دستتون بیاد

    اگه سوال یا مشکلی دارید با جزئیات بیان کنید تا در صورت توان راهنمایی کنم.

    «موفق باشید.»

    • پسندیدن 1
  6. irMediaLoader


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

    کش کردن اصوات و ویدئوها هم می تواند بسیار کاربردی و مناسب باشد.

    این کتابخانه دارای قابلیت های زیر می باشد.

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

     

    • پسندیدن 6
  7. irSocket.io


    کتابخونه ای برای ساخت سرویس های بلادرنگ قابل استفاده در چت و یا بازی و اپ هایی که اطلاعات را به صورت آنی مانند: اطلاعات ارز و بورس قابل استفاده می باشد.

     


     

    • پسندیدن 3
    • تشکر 1
  8. در 7 ساعت قبل، mrshirdel گفته است :

    سلام من برای گرفتن اطلاعات یک ویدیو از دستور زیر استفاده میکنم

    
    ffmpeg -i %*

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

    
    Sub ff_Out(str As String)

    اما تو این ساب هیچ اطلاعاتی نمایش داده نمیشه

    لطفا یه راهنمایی کنید که مشکل از کجاست

    من میخام فقط مقدار تایم یک ویدیو رو بدست بیارم

    ایا با کتابخانه دیگه ای هم میشه چنین کاری انجام داد؟ اگه هست لطفا اونم بگید

    به سورس زیر دقت کنید.

    یبار اون رو امتحان کنید تا همه چی دستتون بیاد.

    Sub Globals
    	Dim ir As irFFMPEGPro
    	Dim tim As Timer
    	Private Label1 As Label
    End Sub
    
    Sub Activity_Create(FirstTime As Boolean)
    	Activity.LoadLayout("Layout1")
    	ir.install(File.OpenInput(File.DirAssets,"ffmpeg"),"ffmpeg")
    	ir.init("ffmpeg")
    	tim.Initialize("tim",500)
    End Sub
    Sub tim_Tick
    	If ir.LOGTAG=="Ending FFMPEG" Then
    		tim.Enabled=False
    		ToastMessageShow("End",True)
    	Else
    		Label1.Text=ir.LOGTAG
    	End If	
    End Sub
    
    Sub Button1_Click
    	tim.Enabled=True
    	SliceAudio
    End Sub
    
    
    
    'جداسازی قسمتی از صدا'
    Sub SliceAudio
    	tim.Enabled=True
    	Dim str(8) As String
    	str(0)="ffmpeg"
    	'زمان'
    	str(3)="-t"
    	str(4)="60"
    	'از زمان'
    	str(1)="-ss"
    	str(2)="0"
    	'فایل ورودی'
    	str(5)="-i"
    	str(6)=File.DirRootExternal&"/a.mp3"
    	'فایل خروجی'
    	str(7)=File.DirRootExternal&"/b.mp3"
    	ir.run(str)
    End Sub
    'تغیر سایز ویدئو'
    Sub ResizeVideo
    	tim.Enabled=True
    	Dim str(10) As String
    	str(0)="ffmpeg"
    	'فایل ورودی'
    	str(1)="-i"
    	str(2)=File.DirRootExternal&"/c.mov"
    	'data rate'
    	str(3)="-b:v"
    	str(4)="64k"
    	str(5)="-bufsize"
    	str(6)="64k"
    	'سایز'
    	str(7)="-vf"
    	str(8)="scale="&320&":"&240
    	'فایل خروجی'
    	str(9)=File.DirRootExternal&"/d.mp4"
    	ir.run(str)
    End Sub
    'تغیر سایز صدا'
    Sub ResizeAudio
    	tim.Enabled=True
    	Dim str(8) As String
    	str(0)="ffmpeg"
    	'فایل ورودی'
    	str(1)="-i"
    	str(2)=File.DirRootExternal&"/a.mp3"
    	'data rate'
    	str(3)="-codec:a"
    	str(4)="libmp3lame"
    	str(5)="-b:a"
    	str(6)="125k"
    	'فایل خروجی'
    	str(7)=File.DirRootExternal&"/d.mp3"
    	ir.run(str)
    End Sub

    «موفق باشید.»

    • پسندیدن 1
  9. در در 1397/04/02, 19:51:07، shahrokhnazari گفته است :

    سلام

    ممنون از شما

    
    http://192.168.1.101:3000

    در مورد این آدرس توضیح بیشتری میدید

    اگر دارای هاست و دامنه باشیم  و بخواهیم استفاده کنیم ///اون شماره پورت چی میدیم

    ممنون اینو توضیح بیشتری بدید////

     

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

    // Setup basic express server
    var express = require('express');
    var app = express();
    var path = require('path');
    var server = require('http').createServer(app);
    var io = require('../..')(server);
    var port = process.env.PORT || 3000;
    
    server.listen(port, () => {
      console.log('Server listening at port %d', port);
    });
    
    // Routing
    app.use(express.static(path.join(__dirname, 'public')));
    
    // Chatroom
    
    var numUsers = 0;
    
    io.on('connection', (socket) => {
      var addedUser = false;
    
      // when the client emits 'new message', this listens and executes
      socket.on('new_message', (data) => {
        // we tell the client to execute 'new message'
        socket.broadcast.emit('new_message', {
          username: socket.username,
          message: data
        });
      });
    
      // when the client emits 'add user', this listens and executes
      socket.on('add_user', (username) => {
        if (addedUser) return;
    
        // we store the username in the socket session for this client
        socket.username = username;
        ++numUsers;
        addedUser = true;
        socket.emit('login', {
          numUsers: numUsers
        });
        // echo globally (all clients) that a person has connected
        socket.broadcast.emit('user_joined', {
          username: socket.username,
          numUsers: numUsers
        });
      });
    
      // when the client emits 'typing', we broadcast it to others
      socket.on('typing', () => {
        socket.broadcast.emit('typing', {
          username: socket.username
        });
      });
    
      // when the client emits 'stop typing', we broadcast it to others
      socket.on('stop_typing', () => {
        socket.broadcast.emit('stop_typing', {
          username: socket.username
        });
      });
    
      // when the user disconnects.. perform this
      socket.on('disconnect', () => {
        if (addedUser) {
          --numUsers;
    
          // echo globally that this client has left
          socket.broadcast.emit('user_left', {
            username: socket.username,
            numUsers: numUsers
          });
        }
      });
    });

    این کد Node.js مناسب و هماهنگ برای سرویس موجود در بیسیک می باشد.

    همانطور که میبینید رویداد ها رو همانند نسخه بیسیک با On معرفی کرده اند

    پورت رو هم  3000 قرار داده شده است.

    منبع

    «موفق باشید.»

    • پسندیدن 1
    • تشکر 1
  10. ساخت سرویس چت در بیسیک فور اندروید

    این سرویس برای دریافت و مدیریت رویدادهای لازم برای چت روم می باشد.

    ابتدا متغیر سوکت رو به صورت عمومی می سازیم

    Sub Process_Globals
    	Dim ir As irSocketIO
    End Sub

    اکنون سوکت را با آدرس و پورت سرور وصل می کنیم

    	ir.getSocket("http://192.168.1.101:3000")

    حالا باید رویدادهایی برای وقایع مناسب تهیه کنیم.

    مثلا رویدادهای

    • اتصال به سرور
    • لاگین شدن به سرور
    • اتصال کاربر جدید
    • خروج کاربر
    • دریافت پیام
    • کاربر در حال نوشتن
    • لغو در حال نوشتن

    کد زیر نمونه ای از این وقایع می باشد

    	ir.On(ir.EVENT_CONNECT)
    	ir.On("login")
    	ir.On("new_message")
    	ir.On("user_joined")
    	ir.On("user_left")
    	ir.On("typing")
    	ir.On("stop_typing")

    هر یک از رویدادهای بالا در زمان وقوع سابی که هم نام خودشان باشد را اجرا می کنند یعنی این ساب ها را باید بسازیم

    Sub connect(obj As Object)
    	Log("connect")
    End Sub
    Sub login(obj As Object)
    	Log("login")
    End Sub
    Sub stop_typing(data As Object)
    	Log("stop_typing")
    End Sub
    Sub new_message(data As Object)
    	Log("new_message")
    End Sub
    Sub user_joined(data As Object)
    	Log("user_joined")
    End Sub
    Sub user_left(data As Object)
    	Log("user_left")
    End Sub
    Sub typing(data As Object)
    	Log("typing")
    End Sub

     

    و اکنون ارتباط سرور را شروع می کنیم

    	ir.connect

    می توانید در رویداد اتصال بلافاصله لاگین را انجام بدهیم

    ir.emit("add_user", "amin")

    و یا پیام های دریافتی را به یک اکتیویتی ارسال کنیم تا نمایش داده شوند

    Sub new_message(data As Object)
    	CallSubDelayed2(Chat,"new_message",data)
    End Sub

    در اکتیویتی chat و  به ساب new_message مقادیر ارسال می شوند.

    در هنگام نیاز می توانید رویداد های غیر لازم را غیر فعال نمایید.

    	ir.Off("typing")

    خب در نهایت ممکن است چنین کدی داشته باشیم

    Sub Process_Globals
    	Dim ir As irSocketIO
    End Sub
    
    Sub Service_Create
    
    End Sub
    
    Sub Service_Start (StartingIntent As Intent)
    	ir.getSocket("http://192.168.1.101:3000")
    	ir.On(ir.EVENT_CONNECT)
    	ir.On("login")
    	ir.On("new_message")
    	ir.On("user_joined")
    	ir.On("user_left")
    	ir.On("typing")
    	ir.On("stop_typing")
    	ir.connect
    End Sub
    
    Sub Service_Destroy
    
    End Sub
    Sub connect(obj As Object)
    	Log("connect")
    	ir.emit("add_user", "amin"&DateTime.Now)
    End Sub
    Sub login(obj As Object)
    	Log("login")
    End Sub
    Sub stop_typing(data As Object)
    	Log("stop_typing")
    End Sub
    Sub new_message(data As Object)
    	CallSubDelayed2(Chat,"new_message",data)
    End Sub
    Sub user_joined(data As Object)
    	Log("user_joined")
    End Sub
    Sub user_left(data As Object)
    	Log("user_left")
    End Sub
    Sub typing(data As Object)
    	Log("typing")
    End Sub

    «موفق باشید.»

    • پسندیدن 6
    • تشکر 2
  11. آموزش نحوه استفاده از کتابخونه

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

    Sub Globals
    	Private WebView1 As WebView
    	Private ImageView1 As ImageView
    End Sub
    
    Sub Activity_Create(FirstTime As Boolean)
    	Activity.LoadLayout("Layout1")
    	Dim ir As irGetCaptcha
    	ir.Initialize(WebView1,ImageView1)
    	ir.getFromId("id")
    	'ir.getFromAlt("Alt Text here")'
    	'ir.getFromSrc("Src Attribute Text")'
    End Sub
    
    Sub Button1_Click
    	WebView1.LoadUrl("http://example.com/")
    End Sub

    توضیحات:

    کد کاملا واضحی بنظر میاد و فقط سه متد داره که توضیح میدم

    • getFromId : گرفتن تصویر امنیتی بر اساس id اون در تگ HTML صفحه مورد نظر
    • getFromAlt : گرفتن تصویر امنیتی بر اساس ALT  تگ در HTML صفحه مورد نظر
    • getFromSrc :گرفتن تصویر امنیتی بر اساس SRC اون در تگ HTML صفحه مورد نظر

    «موفق باشید.»

    • پسندیدن 3
  12. در 1 ساعت قبل، mostafa.kasiri گفته است :

    سلام

    یک سوال این چه فرقی با کتابخانه آقای نیکروان داره؟؟؟؟؟

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

    در 1 ساعت قبل، mostafa.kasiri گفته است :

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

    من محصول فروشی کلا نزاشتم تا حالا.در ضمن از کتابخونه آقای نیکروان دو سال میگذره. و چون علاقه ای به خرید کتابخونه نداشتم و ندارم. چون چیزی که بخوام در گیتهاب پیدا میشه. از وجود چنین محصولی بی خبر بودم.

    در ضمن ما برای حفاظت از محصولات فروشگاه بعضی از موارد رو تا حالا ممنوع کرده بودیم که من سنت شکنی کردم و برای افزایش کیفیت و رشد بیشتر انجمن این مورد رو تغیر دادم. بالاخره رقابت باعث بهبود کیفیت میشه.

    «موفق باشید.»

    • پسندیدن 3
    • تشکر 1
  13. irGetCaptcha


    در بسیاری از اپ های کاربران گت المنت کردن کاربرد فراوانی دارد.و با این وجود گرفتن و نمایش کدهای امنیتی هم برای آنها نیاز فراوانی دارد.

    این کتابخانه بسادگی تصویر امنیتی را از وب ویو برای شما استخراج می کند.

    امکانات:

    • گرفتن واعمال مستقیم تصویر به ایمیج ویو
    • گرفتن تصویر بر اساس ID
    • گرفتن تصویر بر اساس آدرس
    • گرفتن تصویر بر اساس توضیحات موجود در خاصیت ALT

    منبع:

    GitHub - ismailkocacan/Android-Captcha-Handler: Android Captcha Handler

    توضیحات و نحوه استفاده در پست مربوطه قرار داده خواهد شد


     

    • پسندیدن 6
  14. در در 1396/11/08, 20:52:08، stnima گفته است :

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

    کسی از دوستان میتونه لطف کنه اینو بگیره برام
    B4A Library - Camera2 - New camera library | B4X Community - Android, iOS, desktop, server and IoT programming tools
    با تشکر

    این از کتابخونه های پایه خود بیسیک هستش. با نصب نسخه جدید خودش نصب میشه

  15. در 23 ساعت قبل، hosseinyzr گفته است :

    ممنون از توضیحات و فایل های خوبتون تو این زمینه...

    امکانش هست نسخه آخر ffmpeg رو و حاوی تمام کدک هاشو هم برای این دو تا معماری بذارید؟ 3.4 هست اگه اشتباه نکنم

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

    آموزش بیلد کردن رو هم بذارید عالی میشه.... ماهیگیری یاد میگیریم ....

     

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

    GitHub - magiclen/FFmpeg-For-MagicLen-Applications: Modified FFmpeg for MagicLen Applications

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

    Release FFmpeg 3.4.1 For MagicLen Apps · magiclen/FFmpeg-For-MagicLen-Applications · GitHub

    «موفق باشید.»

    • تشکر 1
×
×
  • اضافه کردن...