کمک برای نوشتن چت اینترنتی
با سلام.
لب کلام این هست که میخواهم
یک برنامه چت اینترنتی بنویسم.
مثل یاهو مسنجر کار کنه
منتهی نه با اون همه امکانات
همین که تکست را از کلاینت 1 به کلاینت مقصد که مثلا کلاینت 2 هست برسونه
کلاینت ها همدیگه را توی لیست ببینند
فکر نکنم با سوکن پروگرمینگ بشه از سرور به کلاینت ارسال کرد.
اصلا میشه از سرور به کلاینت دیتا فرستاد از هر طریقی؟؟//
ممنونم
نقل قول: کمک برای نوشتن چت اینترنتی
سلام ، دوست من خیلی قبل تر ها من درباره این موضوع تحقیق کرده بودم و به این نتایج رسیدم .
1- نیازمند یک وب سرور جهت مجتمع کردن اطلاعات چت ها و انتقال
2- برنامه نویسی سوکت (که در انجمن زیاد بحث شده)
3- برنامه نویسی WebService
البته به جز وبسرویس راه دیگه هم هست که مورد بحث است و من به دلیل محدود بودن زمانم نمی تونم بگم .
با تشکر از شما
--------------------
راستی یه سری به وب سایت رسمی codeproject.com بزن ، توش نمونه چت زیاد هست .
نقل قول: کمک برای نوشتن چت اینترنتی
سلام
روشهای مختلفی وجود داره (با استفاده از وب سرویس هم میشه)
این لینک میتونه واسه برنامه چت اینترنتی کمکتون کنه
نقل قول: کمک برای نوشتن چت اینترنتی
این یه برنامه چت آنلاین بر مبنای وب سرویس با asp.net
البته یه پست فارسی کامل هم تو همین بخش "وب سرویس های سایت برنامه نویس" براش هست که میتونید جستجو کنید و استفاده کنید.
نقل قول: کمک برای نوشتن چت اینترنتی
سلام خدمت شما Xamfia عزیز
من خیلی وارد نیستم. جسارت نیمکنم
اما به نظرم فرق می کنه اینی که من میخوام انجام بشه. من تحت ونیدوز میخوام
فرق نداره؟؟؟؟
من سوالی که برام مطرحی اینه که یاهو مسنجر چه جوری اطلاعات را میفرسته که مثلا اگر 20 نفر هم توی یک LAN قرار داشته باشند همه میتوننند کار خودشون را انجام بدهند
سکوت پروگرمینگه؟ ریموتینگه؟ پروتکل HTTP هست؟؟؟
واقع گیج شدم.
یه چند تا تاپیک هم زدم اما به نتیجه نرسیدم
https://barnamenevis.org/showthread.php?t=241470
https://barnamenevis.org/showthread.php?t=240433
نقل قول: کمک برای نوشتن چت اینترنتی
من تو زمینه چت یه زمانی زیاد وقت گذاشتم.تقریبا با تمام این روش هایی که گفتین میتونید برنامه تون رو پیاده سازی کنید اما هرکدوم نقاط ضعف و قوت خودشون رو دارن.وب سرویس ها انعطاف پذیر،راحت و گسترده اند اما سربار داده ای زیادی دارند و از لحاض امنیتی هم چندان قابل اعتماد نیستن.سوکت هم بعد از ایجاد کانال(مخصوصا برای ارسال پیغام و فایل) میتونه به کار بیاد اما کاملتر از همه به نظرم WCF میتونه باشه چون انعطاف و امنیت بالایی داره و هم config base هست و میتونید براحتی تغییرات برنامه تون رو توش اجرا کنید...
نمونه چت با WCF هم تو اینترنت پیدا میشه...
نقل قول: کمک برای نوشتن چت اینترنتی
سلام ممنونم از توجهتون
من هیچ سمپلی ندیدم که بتونه توی نت کار کنه
اونم جوری که بین یوزر های پیغام رد و بدل بشه و چند نفر هم زمان چت کنند
برنامه تحت ویندوز
من سناریوم این هست. httprequest بدم به سرور
سرور منو اد کنه توی یک لیست
بد هم هر پیغامی که میدم حاوی یوزر طرف مقابل باشه و مسیجم
سرور هم مسیج هایی که برای هر یوزر میره را بذاره توی یک صف به همراه نام فرستنده
بد هر یوزری که هر موقع ریکوئست میده به سرور ، سرور هم صف پیغام هاشو واسش بفرسته
اوکی؟
یک سوال دیگه هم دارم اینه که: آقا جان من ( دیگه خیلی خستم):عصبانی++::عصبانی++::عصبا نی++:
مگه ما به سرور که آی پی ولید داره ریکوئست نمیدیم؟ خوب، :لبخندساده:
من سوالم اینه که جوابی که میخواهیم از سرور بدیم به کلاینت چه جوری بدیم؟/ آی پیش که ولید نیست؟؟؟
باید از آی اس پیش بگذریم و ....
حالا من موندم که این HTTP چه جوری در جواب یک ریکوئست ریسپانس میکنه بدونه اینکه ما بهش بگیم که از چه راهی جواب را برگدون؟:کف::کف::کف::متفکر::مت کر::متفکر:
در حقیقت اگر کسی ساز و کار ارسال جواب از طریق HTTP را بدونه مشکل من حل میشه.:تشویق::تشویق:
نقل قول: کمک برای نوشتن چت اینترنتی
نقل قول:
یک سوال دیگه هم دارم اینه که: آقا جان من ( دیگه خیلی خستم):عصبانی++::عصبانی++::عصبا نی++:
مگه ما به سرور که آی پی ولید داره ریکوئست نمیدیم؟ خوب، :لبخندساده:
من سوالم اینه که جوابی که میخواهیم از سرور بدیم به کلاینت چه جوری بدیم؟/ آی پیش که ولید نیست؟؟؟
باید از آی اس پیش بگذریم و ....
وقتی کلاينت به سرور کانکت ميشه و سرور اون رو قبول ميکنه کانال اختصاصی بين کلاينت و سرور ايجاد ميشه و تا زمان باز بودن کانال هر ديتا بين سرور و کلاينت ميتونه رد و بدل بشه و برای فرستادن ديتا لازم نيست آيپی کلاينت رو داشته باشيد
قبل از شروع کار بايد با سوکت پروگرمينگ و پروتکل TCP/ip آشنايی کامل داشته باشيد
نقل قول: کمک برای نوشتن چت اینترنتی
دوست عزیز؛ تا زمانی که یه پروتکلی رو انتخاب نکنی که State Less نباشه ( مثلا TCP/IP که بهترینشونه از نظر من)؛ و یه فناوری انتخاب نکنی که از اون پروتکل بتونه استفاده کنه؛ ( مثل Socket Programming و WCF )؛ کارت پیش نمیره.
این طوری که شما پیش میری؛ کلاینتهات هر یه ثانیه یه بار باید یه Request بدن به سرور و بگن؛ آیا پیغام جدید داریم ؛ بعد سرور Response بده ؛ 1- آره داشتی ؛ این بود 2- نه نداشتی
این فاجعست.
---
این طوری که نمیشه عزیزم
بعدش هم یه کم فکر کن؛ مگه هر کی با Skype و IM کار میکنه؛ IP ولید داره ؟
فقط سرور باید IP ولید داشته باشه.
شما مشکل کارت اینه که HTTP ای فکر میکنی نه TCP/IP ای
---
اگه میخوای TCP/IP کار کنی؛ باید بری دنبال netTcpBinding
اگه میخوای روی HTTP ؛ امکان Duplex Communication رو شبیه سازی کنی؛ باید برای دنبال wsDualHttpBinding
البته این ها برای WCF هستش
برای Socket Programming هم از دوستان بپرس
البته من یه خط Socket هم کار نکردم؛ ولی هم تئوری اش قابل قبوله و هم دوستان میگن میشه
WCF اش رو که خودم دارم برای Silverlight و Net. ( به عنوان کلاینت )؛ دارم راه اندازی میکنم
قراره تو کل ایران هم کار کنه.
موفق باشی
نقل قول: کمک برای نوشتن چت اینترنتی
نقل قول:
نوشته شده توسط
crazyfull
وقتی کلاينت به سرور کانکت ميشه و سرور اون رو قبول ميکنه کانال اختصاصی بين کلاينت و سرور ايجاد ميشه و تا زمان باز بودن کانال هر ديتا بين سرور و کلاينت ميتونه رد و بدل بشه و برای فرستادن ديتا لازم نيست آيپی کلاينت رو داشته باشيد
قبل از شروع کار بايد با سوکت پروگرمينگ و پروتکل TCP/ip آشنايی کامل داشته باشيد
سلام . ممنونم.
خوب . قربون دهان شما،
اگر ممکنه یک مثال برای من بزنید، یک نمونه کد. که من قشنگ پیاده سازیشون ببینم.
یک کوچولو.
توی سوکت پروگرمینگ که باید هر باز که میخواهیم جواب یا درخواست ارسال کنیم بگیم که به کدوم آی پی میخواهیم جواب بدیم.
درسته؟؟؟؟؟
--------------------
نقل قول:
نوشته شده توسط
sia_2007
دوست عزیز؛ تا زمانی که یه پروتکلی رو انتخاب نکنی که State Less نباشه ( مثلا TCP/IP که بهترینشونه از نظر من)؛ و یه فناوری انتخاب نکنی که از اون پروتکل بتونه استفاده کنه؛ ( مثل Socket Programming و WCF )؛ کارت پیش نمیره.
این طوری که شما پیش میری؛ کلاینتهات هر یه ثانیه یه بار باید یه Request بدن به سرور و بگن؛ آیا پیغام جدید داریم ؛ بعد سرور Response بده ؛ 1- آره داشتی ؛ این بود 2- نه نداشتی
این فاجعست.
---
این طوری که نمیشه عزیزم
بعدش هم یه کم فکر کن؛ مگه هر کی با Skype و IM کار میکنه؛ IP ولید داره ؟
فقط سرور باید IP ولید داشته باشه.
شما مشکل کارت اینه که HTTP ای فکر میکنی نه TCP/IP ای
---
اگه میخوای TCP/IP کار کنی؛ باید بری دنبال netTcpBinding
اگه میخوای روی HTTP ؛ امکان Duplex Communication رو شبیه سازی کنی؛ باید برای دنبال wsDualHttpBinding
البته این ها برای WCF هستش
برای Socket Programming هم از دوستان بپرس
البته من یه خط Socket هم کار نکردم؛ ولی هم تئوری اش قابل قبوله و هم دوستان میگن میشه
WCF اش رو که خودم دارم برای Silverlight و Net. ( به عنوان کلاینت )؛ دارم راه اندازی میکنم
قراره تو کل ایران هم کار کنه.
موفق باشی
سلام. فرمایش شما صد در صد متین،
اما یه سوال، یاهو مسنجر از چه فناوری استفاده میکنه؟
یکی دیگه هم اینکه همونطور که گفتم مگه توی سوکت نباید برای هر جواب یا درخواستی
آی پی را مشخص کنیم؟؟؟
WCF را کار نکردم، اما سوکت پروگرمینگ را ممنون میشم اگه حرف من غلط هست یک نمونه کد بگذارند ببینم. شاید دارم اشتباه میگم.
ممنون از توجه همه دوستان
نقل قول: کمک برای نوشتن چت اینترنتی
یک سوال دیگه داشتم اینکه
یعنی WCF بدون اینکه لازم باشه بهش بگیم به کدام IP جواب پس بده،
جواب یوزر را می دهد؟؟؟
من میگم اگر چیزی وجود داشته باشد که مثل HTTP بر اساس Packet دریافتی بتونه جواب را برگردونه خوبه
فقط این تفاوت را داشته باشه که یکبار که بهش درخواس میدی ، دیگه خودش هر وقت خواست به یوزر جواب برگردونه، و نه در ازای هر درخواست یک جواب
ظاهرا شما عزیزان می فرمائید که ممکن هست،
اگر ممکن هست یک مثال کوچک بزنید.
ممنونم
به خدا مشکل خیلیها که میخواهند چت بنویسند که توی نت کار کنه فکر کنم با این تاپیک به کمک شما حل بشه
نقل قول: کمک برای نوشتن چت اینترنتی
سلام پس با توجه به صحبت دوستان
بهترین گزینه برای راه اندازی سیستمی مثل چت روم استفاده از wcf هست؟
نقل قول: کمک برای نوشتن چت اینترنتی
https://barnamenevis.org/showthread.p...Communication)
در اینجا اموزش کامل پیاده سازی چت توسط wcf گذاشته شده