چیٹ real-time ایپلیکیشن اس بات کی ایک بہترین مثال ہے کہ ویب پر انٹرایکٹو کمیونیکیشن میں کیسے WebSocket انقلاب لایا جا سکتا ہے ۔ اس آرٹیکل میں، ہم صارفین کو جوابی اور انٹرایکٹو مواصلاتی تجربات فراہم کرنے کے لیے استعمال کرتے ہوئے اور real-time ان کے استعمال سے ایک سادہ چیٹ ایپلی کیشن بنانے کے بارے میں بات کریں گے ۔ Laravel WebSocket laravel-websockets
package
درخواست کے مقاصد
real-time ہم درج ذیل خصوصیات کے ساتھ ایک چیٹ ایپلی کیشن بنائیں گے ۔
فوری طور پر پیغامات بھیجیں اور وصول کریں: صارف صفحہ کو تازہ کرنے کی ضرورت کے بغیر فوری طور پر پیغامات بھیج اور وصول کر سکتے ہیں۔
آن لائن صارف کی فہرست: ایپلی کیشن آن لائن صارفین کی فہرست اور ان کی چیٹ کی حیثیت ظاہر کرے گی۔
تصاویر اور فائلیں بھیجیں: صارفین چیٹ کے اندر تصاویر اور فائلیں شیئر کر سکتے ہیں۔
انسٹالیشن اور کنفیگریشن کے ساتھ شروع کرنا
شروع کرنے کے لیے، ہمیں اسے انسٹال کرنے laravel-websockets
package اور اس WebSocket کے ساتھ ضم کرنے کے لیے کنفیگر کرنے کی ضرورت ہے Laravel ۔ ان اقدامات پر عمل:
انسٹال کریں laravel-websockets
package: package استعمال کو انسٹال کرکے شروع کریں Composer ۔
composer require pusher/pusher-php-server
کنفیگریشن فائل شائع کریں: انسٹالیشن کے بعد، سیٹنگز کو اپنی مرضی کے مطابق کرنے کے لیے کنفیگریشن فائل کو شائع کریں۔
php artisan vendor:publish --tag=websockets-config
چلائیں migration: کے لیے ضروری ڈیٹا بیس ٹیبل بنائیں WebSocket ۔
php artisan migrate
سرور شروع کریں WebSocket: کنکشن کو WebSocket سنبھالنے کے لیے سرور شروع کریں۔ real-time
php artisan websockets:serve
یوزر انٹرفیس کی تعمیر
ہم پیغام کی فہرست، ان پٹ باکس، اور آن لائن صارفین کی فہرست کو ظاہر کرنے کے لیے HTML، CSS، اور JavaScript کا استعمال کرتے ہوئے ایک سادہ صارف انٹرفیس بنائیں گے۔
<!-- resources/views/chat.blade.php -->
<div id="app">
<div class="chat-container">
<div class="chat-box">
<div class="chat-messages">
<div class="message" v-for="message in messages":key="message.id">
{{ message.user }}: {{ message.content }}
</div>
</div>
<div class="input-box">
<input v-model="newMessage" @keydown.enter="sendMessage" placeholder="Enter your message...">
</div>
</div>
</div>
</div>
انضمام WebSocket اور Broadcasting
ہم درخواست کے ساتھ Laravel Broadcasting ضم کرنے کے لیے استعمال کریں گے۔ WebSocket
انسٹال کریں Pusher: بطور ڈرائیور pusher/pusher-php-server
package استعمال کرنے کے لیے انسٹال کریں ۔ Pusher Broadcasting
composer require pusher/pusher-php-server
کنفیگر Broadcasting: فائل میں config/broadcasting.php
، ڈرائیور کو کنفیگر کریں اور اپنی Pusher اسناد فراہم کریں۔
'pusher' => [
'driver' => 'pusher',
'key' => env('PUSHER_APP_KEY'),
'secret' => env('PUSHER_APP_SECRET'),
'app_id' => env('PUSHER_APP_ID'),
'options' => [
'cluster' => env('PUSHER_APP_CLUSTER'),
'encrypted' => true,
],
],
ایک ایونٹ بنائیں اور براڈکاسٹ کریں: ChatMessageSent ایونٹ بنائیں اور جب کوئی صارف پیغام بھیجے تو اسے نشر کریں۔
// app/Events/ChatMessageSent.php
public function broadcastOn()
{
return new Channel('chat');
}
JavaScript اسکرپٹ: سرور سے واقعات سننے اور یوزر انٹرفیس کو اپ ڈیٹ کرنے کے لیے JavaScript کا استعمال کریں۔
// resources/js/app.js
require('./bootstrap');
import Vue from 'vue';
import Chat from './components/Chat.vue';
const app = new Vue({
el: '#app',
components: {
Chat
}
});
نتیجہ
اس ٹیوٹوریل کو مکمل کر کے، آپ نے میں کا real-time استعمال کرتے ہوئے کامیابی کے ساتھ ایک چیٹ ایپلیکیشن بنا لی ہے ۔ صارفین فوری طور پر پیغامات بھیج اور وصول کر سکتے ہیں، اور آپ نے دیکھا ہے کہ کس طرح ایک جوابی اور باہمی رابطے کا تجربہ فراہم کرتا ہے۔ WebSocket Laravel WebSocket