গুগল ব্ল্যাক সম্প্রদায়ের জন্য জাতিগত ইকুইটি আগুয়ান করতে প্রতিশ্রুতিবদ্ধ হয়। দেখ কিভাবে.
This page was translated by the Cloud Translation API.
Switch to English

পিয়ার সংযোগ

RTCPeerConnection WebRTC API এর কেন্দ্রীয় ইন্টারফেস। এটা তোলে স্থানীয় ও দূরবর্তী পিয়ার মধ্যে সংযোগ প্রতিনিধিত্ব করে, এবং সমস্ত ফাংশন এবং প্রয়োজনীয় ঘটনা provice সংযোগ স্থাপন করার।

একটি পিয়ার সংযোগ স্থাপন করা হচ্ছে

WebRTC ক্রিয়াকলাপের বাস্তবায়ন অ্যাপ্লিকেশন সাধারণত উপর খুব বেশী নির্ভর করবে RTCPeerConnection ইন্টারফেস। কলারের পাশ থেকে (যে, পিয়ার একটি সংযোগ সূচনা), একটি সংযোগ স্থাপন করার প্রক্রিয়া সাধারণত নিম্নলিখিত হল:

  1. একটি নতুন তৈরি করুন RTCPeerConnection উপযুক্ত বরফ কনফিগারেশন সঙ্গে উদাহরণস্বরূপ।
  2. ব্যবহার করে একটি স্থানীয় আভ্যন্তরীন উৎপাদন বিবরণ তৈরি করুন RTCPeerConnection.createOffer()
  3. ব্যবহার স্থানীয় আভ্যন্তরীন উৎপাদন বিবরণ সেট RTCPeerConnection.setLocalDescription()
  4. স্থানান্তর দূরবর্তী পিয়ার স্থানীয় আভ্যন্তরীন উৎপাদন বিবরণ (ক সংকেত সেবা ব্যবহার)।
  5. একটি শ্রোতা নিবন্ধন icecandidate ঘটনা RTCPeerConnection
  6. প্রত্যেকের জন্য icecandidate ঘটনা, দূরবর্তী পিয়ার (ক সংকেত সেবা ব্যবহার করে) এটা স্থানান্তর।
  7. সিগন্যালিং চাকরি থেকে একটি ইনকামিং দূরবর্তী আভ্যন্তরীন উৎপাদন বর্ণনার জন্য অপেক্ষা করুন এবং ব্যবহার করে এটি সেট RTCPeerConnection.setRemoteDescription()
  8. সংকেত সেবা থেকে আগত দূরবর্তী বরফ প্রার্থীদের জন্য অপেক্ষা করুন এবং ব্যবহার তাদের যোগ RTCPeerConnection.addIceCandidate()

callee দিকে, প্রক্রিয়া একটি কিছুটা ভিন্ন।

  1. একটি নতুন তৈরি করুন RTCPeerConnection উপযুক্ত বরফ কনফিগারেশন সঙ্গে উদাহরণস্বরূপ।
  2. সিগন্যালিং চাকরি থেকে একটি ইনকামিং দূরবর্তী আভ্যন্তরীন উৎপাদন বর্ণনার জন্য অপেক্ষা করুন এবং ব্যবহার করে এটি সেট RTCPeerConnection.setRemoteDescription()
  3. কল করে দূরবর্তী আভ্যন্তরীন উৎপাদন বিবরণ জন্য একটি উত্তর তৈরি করুন RTCPeerConnection.createAnswer()
  4. স্থানান্তর দূরবর্তী পিয়ার উত্তর (ক সংকেত সেবা ব্যবহার)।
  5. একটি শ্রোতা নিবন্ধন icecandidate ঘটনা RTCPeerConnection
  6. প্রত্যেকের জন্য icecandidate ঘটনা, দূরবর্তী পিয়ার (ক সংকেত সেবা ব্যবহার করে) এটা স্থানান্তর।
  7. সংকেত সেবা থেকে আগত দূরবর্তী বরফ প্রার্থীদের জন্য অপেক্ষা করুন এবং ব্যবহার তাদের যোগ RTCPeerConnection.addIceCandidate()

এই API- এর সাথে চ্যালেঞ্জ যে এই অপারেশনের সবচেয়ে অ্যাসিঙ্ক্রোনাস, যা প্রায়ই একটি WebRTC এর আবেদন জটিল প্রকৃত বাস্তবায়ন করতে হয়। ফাংশন অনেক একটি ফিরতি Promise যা প্রক্রিয়ায় পরবর্তী ধাপে অবিরত করার আগে সমাধান করতে হবে।

এটি প্রস্তাবিত যে এই এপিআই, বিকাশকারীর করতে ব্যবহার ব্যবহার করে কোনো অ্যাপ্লিকেশন বাস্তবায়নের async এবং await (ব্যবহার পরিবর্তে শ্রোতার নিবন্ধনের Promise.then() ), অনুসরণ করতে এই আপনার কোড আরো সহজ করে তোলে। নিম্নলিখিত উদাহরণে বিবেচনা করুন:

 function createAndSendOffer(peerConnection, signallingService) {
    peerConnection.createOffer()
                  .then(offer => {
                      signallingService.send({
                          type: 'offer',
                          data: offer
                      });
                  });
}
 

যখন ব্যবহার উপরের কোড লেখার async এবং await , আমরা নিম্নলিখিত পাবেন:

 async function createAndSendOffer(peerConnection, signallingService) {
    const offer = await peerConnection.createOffer();
    signallingService.send({
        type: 'offer',
        data: offer
    });
}