تالار گفتمان nCIS.ir

نسخه‌ی کامل: قرار دادن امکان چت برای کاربران
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
سلام
من یک برنامه دارم که میخوام یوزر های این برنامه قابلیت چت کردن با هم رو داشته باشند چطور میتونم این کار رو انجام بدم ؟؟!!
باید روی سرور وب خودتون یه API بصورت وب سرویس SOAP یا REST بنویسید که خروجی JSON میده و توی برنامه خودتون با اون وب سرویس کار کنید و پارامترها رو بهش بدین و جواب بگیرین.
اقای شهرکی میشه کمی بیشتر توضیح بدید؟
باید یه API بسازین. مثلاً یه فایل PHP که پارامترهای ورودی (نام کاربری، رمز عبور، متن موردنظر و...) رو با GET میگیره و به دیتابیس وصل میشه و توی دیتابیس ثبت میکنه. یه فایل دیگه هم میشه داشته باشین (یا توی همین فایل و با کمک پارامتر action که اونم با GET ارسال میشه) و اطلاعاتی مثل نام کاربری، رمز عبور، زمان آخرین مطلب دریافتی و...) رو میگیره و پیامهایی که بعد از اون زمان ارسال شدن رو برای گوشی طرف میفرسته.

توی برنامه هم توی دیتابیس SQLite پیامهای دریافتی رو ذخیره میکنید.
خب من چند وقت پیش درگیر موردی که دوستمون هستش بودم سایت های انگلیسی زیادی رفتم و هیچ اموزشی که به دردم بخوره نتونستم پیدا کنم.مثلا این موردی که شما میگید اگر دوکاربر باهم چت کنند برای اینکه پیام همون کاربر به کاربر دیگه برسه باید از اکتیویتی فوق خارج ودوباره وارد بشه که چیز جالبی نمیشه. باید روشی باشه که درهمون صفحه بعداز ارسال پیام به کاربر فوق بدون نیاز به خارج شدن از اکتیویتی پیام نمایش داده بشه.البته شاید من اشتباه میکنم
ممنون ولی سرور نمیتونه که هر وقت پیامی بهش ارسال شد و خودش بفرسته به موبایل که؟؟!! درسته ؟؟ باید یه سرویس بنویسیم که هر چند لحظه یه بار سرور و چک کنه دیگه درسته ؟؟
دوست عزیز درصورت چک در هرچندلحظه باعث فشار روی سرور وافزایش مصرف درنتیجه داون شدن یا ساسپند شدن سرورتون می شه.برنامه هایی که از این مورد استفاده میکنن فکرکنم از برادکاست (اسمش دقیقا یادم نیست) برای موارد فوق استفاده میکنن.
broadcast برای پاسخ دادن اکشن هاست broadcast با یه سری اکشن ها مثل بوت شدن گوشی یا اتصال به اینترنت جواب میده در هر صورت برای چک کردن سرور باید حتما یک سرویس نوشته بشه که زمان بندی فراخوانی اون سرویس و broadcast تعیین میکنه و سرویس و صدا میزنه
درمورد Reverse AJAX و COMET تحقیق کنید.
این آموزش ویدیویی رو ببینین دقیقا همون چیزی که بخواین رو در آخر میسازه
http://ehsanavr.com/18293/videography/%D...%8C%D8%AF/