سیستم چت RealTime با استفاده از Node.js

دوشنبه 11 دی 1396

در این آموزش ما قصد داریم با استفاده از node.js و کتابخانه ی Soket.io یک سیستم چت واقعی ایجاد کنیم.این چت به شما اجازه می دهد که اتاق چت های خصوصی را ایجاد نمایید و بتوانید آن را با دوست خودتان به اشتراک بزارید برای آواتار از gravatar استفاده می کنند شما می توانید این چت را با node و یا heroku و یا سرویس دهنده های ابری ایجاد نمایید.

سیستم چت RealTime با استفاده از Node.js

برای نوشتن کد شما باید سورس ضمیمه شده را دانلود نمایید و استفاده کنید در ابتدای کار ما از فایل app.js شروع می کنیم

در صورتی که به یادگیری اصولی و حرفه ای این تکنولوژی قدرتمند علاقمند هستید میتوانید دوره کامل و جامع آموزش Node Js موجود در سایت تاپ لرن را مشاهده کنید .

در اینجا می خواهیم از این کد شروع می کنیم:

تمام وابستگی ها در فایل package .json  قرار دارد  ولی بهتر از شما آن را در npm اجرا نمایید تا آن را دریافت نمایید.

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

در مسیر فایل ها soket.io نام کاربر و آواتار و همه تنظیمات کاربر به عنوان سوکت ذخیره می کند و این باعث مدیریت کد ها می شود.

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

اجرا کردن چت

برای اجرا چت در ابتدا باید node.js را نصب نمایید و تمام دستورات Node و Npm را دانلود نمایید و در یک پوشه به نام nodejs-private-webchat بگذارید و بعد ترمینال را ایجاد کنید و قطعه کد زیر را اجرا کنید:

cd nodejs-private-webchat/

دستور IS را اجرا نمایید و یا اگر ویندوزی هست باید app.js و package.json را اجرا نمایید شما می توانید دستورات زیر را اجرا کنید یا اینکه کتابخونه را دانلود نمایید به صورت زیر:

npm install

تمام وابستگی ها در package.json  توصیف شده و شما می توانید آن را نصب کنید این ممکن است یک یا دو دقیقه طول بکشد وقتی که این کار انجام شد دستور زیر را اجرا کنید و با این کار چت محلی خودتان را می توانید ببینید

node app.js

برای اینکه به چت پایان بدهید بهتر است از کلید ctrl + c استفاده کنید تنها مشکل این است که شما نمی توانید دوستان خودتان را به چت دعوت کنید و این از طریق کامپیوتر قابل اجرا است برای رفع این مشکل باید از طریق سرور وب انجام دهید راه اندازی سرور وب توسط خودتان برای اجرای Node یک کار بسیار مشکلی است و ساده نیست می توان برای مدیریت آن از Heroku و یا سیستم های ابری استفاده کرد.

میزبانی چت در Heroku

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

1-یک حساب کاربری ایجاد کنید که آن را از قبل نداشتید

2-نوار ابزار heroku را نصب نمایید این به شما اجازه می دهد که به ترمینال خودتان دسترسی پیدا کنید

3-یک repository git ایجاد نمایید و کد را در heroku قرار دهید به شما یک URL می دهد که می توانید آن را با دوستان خود به اشتراک بزارید

4-شما می توانید این راهنما را بخوانید که شما برای راه اندازی Node.js کمک می کند

ایجاد یک git repo

نوار ابزار heroku دستور فرمان heroku و سیستم کنترل نسخه Git را نصب می کند. شما باید یک git repoایجاد کنید تا بتوانید برنامه خود را به heroku بسپارید (در اینجا هیچ ftp وجود ندارد). برای انجام این کار، این دستور را اجرا کنید:

git init

سپس، ما باید در git پوشه node_modules را به repo خود اضافه نکنیم. این پوشه می تواند بزرگ باشد و به سادگی در git تعلق ندارد. برای نادیده گرفتن پوشه، یک فایل متنی خالی جدید با نام .gitignore با محتوای زیر ایجاد کنید:

node_modules/

حالا شما می توانید کد جدید را در repo قرار دهید:

git add
git commit -m 'Initial commit'

یک فایل خاص که Heroku انتظار دارد در repo خود پیدا کند تا بتواند برنامه را شروع کند. این Procfile نامیده می شود  این در حال حاضر برای شما در بایگانی زیپ ایجاد شده است، بنابراین شما مجبور نیستید کاری انجام دهید. اما اگر بخواهید دستی انجام دهید به صورت زیر  است:

web: node app.js

حالا اماده است که برنامه Heroku اجرا شود

قرار دادن Heroku

دو دستور زیر تنها زمانی که شما شروع به استفاده از ابزار Heroku انجام می دهید، انجام می شود. ابتدا باید از ابزار خط فرمان به heroku وارد شوید

heroku login

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

heroku keys:add

بعد، شما باید یک برنامه جدید hrooku را از کد در این پوشه ایجاد کنید:

heroku create

حالا باید دستور زیر را تایپ نمایید:

git push heroku master

این خط کد برنامه شما را به heroku ارسال می کند، جایی که سرویس دهنده های آن فایل package.json را پردازش می کنند و تمامی کتابخانه هایی را که برنامه شما نیاز دارد نصب می کند. هر بار که لازم است یک نسخه جدید از کد را بارگذاری کنید، باید این کار را انجام دهید برای باز کردن چت وب خود در مرورگر ، این دستور را اجرا کنید

heroku open

این کار مرورگر پیش فرض خود را باز می کنید.

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

فایل های ضمیمه

برنامه نویسان

نویسنده 3355 مقاله در برنامه نویسان
  • NodeJs
  • 5k بازدید
  • 3 تشکر

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

در صورتی که در رابطه با این مقاله سوالی دارید، در تاپیک های انجمن مطرح کنید