WebRTC
ওয়েবআরটিসি (ওয়েব রিয়েল-টাইম কমিউনিকেশন) একটি ফ্রি এবং ওপেন সোর্স প্রকল্প যা অ্যাপ্লিকেশন প্রোগ্রামিং ইন্টারফেসের (এপিআই) মাধ্যমে রিয়েল-টাইম কমিউনিকেশন (আরটিসি) সহ ওয়েব ব্রাউজার এবং মোবাইল অ্যাপ্লিকেশন সরবরাহ করে। এটি সরাসরি পিয়ার-টু-পিয়ার যোগাযোগের অনুমতি দিয়ে, প্লাগইন ইনস্টল করার বা স্থানীয় অ্যাপ্লিকেশন ডাউনলোড করার প্রয়োজনীয়তা দূর করে অডিও এবং ভিডিও যোগাযোগকে ওয়েব পৃষ্ঠাগুলির ভিতরে কাজ করার অনুমতি দেয়। অ্যাপল, গুগল, মাইক্রোসফ্ট, মোজিলা এবং অপেরা দ্বারা সমর্থিত, ওয়েবআরটিসি নির্দিষ্টকরণগুলি ওয়ার্ল্ড ওয়াইড ওয়েব কনসোর্টিয়াম (ডব্লিউ3সি) এবং ইন্টারনেট ইঞ্জিনিয়ারিং টাস্ক ফোর্স (আইইটিএফ) দ্বারা প্রকাশিত হয়েছে। webrtc.org ওয়েবসাইট অনুসারে, প্রকল্পের উদ্দেশ্য হল "ব্রাউজার, মোবাইল প্ল্যাটফর্ম এবং আইওটি ডিভাইসের জন্য সমৃদ্ধ, উচ্চমানের আরটিসি অ্যাপ্লিকেশনগুলি তৈরি করা এবং তাদের সকলকে একটি সাধারণ প্রোটোকলের মাধ্যমে যোগাযোগ করার অনুমতি দেওয়া"। 2010 সালের মে মাসে, গুগল গ্লোবাল আইপি সলিউশন বা জিআইপিএস কিনেছিল, একটি ভিওআইপি এবং ভিডিও কনফারেন্সিং সফ্টওয়্যার সংস্থা যা আরটিসির জন্য প্রয়োজনীয় অনেক উপাদান তৈরি করেছিল, যেমন কোডেক এবং ইকো বাতিলকরণ কৌশল। গুগল জিআইপিএস প্রযুক্তি উন্মুক্ত করেছে এবং শিল্পের ঐকমত্য নিশ্চিত করতে আইইটিএফ এবং ডব্লিউ3সি-তে প্রাসঙ্গিক মান সংস্থাগুলির সাথে যুক্ত হয়েছে। 2011 সালের মে মাসে, গুগল ওয়েবআরটিসি নামে পরিচিত ব্রাউজার-ভিত্তিক রিয়েল-টাইম যোগাযোগের জন্য একটি ওপেন-সোর্স প্রকল্প প্রকাশ করে। এর পরে ডাব্লু3সি-তে আইইটিএফ এবং ব্রাউজার এপিআই-তে প্রাসঙ্গিক প্রোটোকলগুলি মানসম্মত করার জন্য চলমান কাজ চলছে। 2011 সালের জানুয়ারিতে, এরিকসন ল্যাবস একটি পরিবর্তিত ওয়েবকিট লাইব্রেরি ব্যবহার করে ওয়েবআরটিসির প্রথম বাস্তবায়ন তৈরি করে। 2011 সালের অক্টোবরে, ডব্লিউ3সি এই বৈশিষ্ট্যের জন্য তার প্রথম খসড়া প্রকাশ করে। ওয়েবআরটিসি মাইলফলকগুলির মধ্যে রয়েছে প্রথম ক্রস-ব্রাউজার ভিডিও কল (ফেব্রুয়ারি 2013), প্রথম ক্রস-ব্রাউজার ডেটা স্থানান্তর (ফেব্রুয়ারি 2014), এবং জুলাই 2014 পর্যন্ত গুগল হ্যাঙ্গআউটগুলি ওয়েবআরটিসি ব্যবহার করে "ধরনের" ছিল। ডব্লিউ3সি খসড়া এপিআই হোয়াটডব্লিউজি-তে করা প্রাথমিক কাজের উপর ভিত্তি করে তৈরি করা হয়েছিল। এটিকে কানেকশনপিয়ার এপিআই হিসাবে উল্লেখ করা হয়েছিল এবং এরিকসন ল্যাবে একটি প্রাক-মানক ধারণা বাস্তবায়ন তৈরি করা হয়েছিল। ওয়েবআরটিসি ওয়ার্কিং গ্রুপ আশা করে যে এই নির্দিষ্টকরণটি উল্লেখযোগ্যভাবে বিকশিত হবেঃ আই. ই. টি. এফ-এ সহযোগী আর. টি. সি. ডব্লিউ. ই. বি গ্রুপে চলমান বিনিময়ের ফলাফলগুলি প্রোটোকলের সেটকে সংজ্ঞায়িত করতে যা এই নথির সাথে একসাথে ওয়েব ব্রাউজারে রিয়েল-টাইম যোগাযোগকে সংজ্ঞায়িত করে। যদিও কোনও সিগন্যালিং প্রোটোকল বাধ্যতামূলক নয়, বেশিরভাগ পরিকল্পিত যোগাযোগের ক্ষেত্রে এস. আই. পি-এর প্রয়োগযোগ্যতা এবং জে. এস. এস. আই. পি-এর মতো ওপেন-সোর্স সফ্টওয়্যারের উপলব্ধতার কারণে ওয়েব সকেট ()-এর উপর এস. আই. পি প্রায়শই আংশিকভাবে ব্যবহৃত হয়। স্থানীয় সক্ষমতা এবং স্থানীয় স্ট্রিমগুলি প্রকাশ করার সময় যে গোপনীয়তার সমস্যাগুলি দেখা দেয় গোষ্ঠীর মধ্যে প্রযুক্তিগত আলোচনা, বিশেষত ডেটা চ্যানেলগুলি বাস্তবায়নের বিষয়ে অন্যান্য গোষ্ঠী এবং ব্যক্তিদের কাছ থেকে প্রাথমিক পরীক্ষার মাধ্যমে প্রাপ্ত অভিজ্ঞতা 2017 সালের নভেম্বরে, ওয়েবআরটিসি 1-এর নির্দিষ্টকরণটি ওয়ার্কিং ড্রাফ্ট থেকে প্রার্থী সুপারিশে রূপান্তরিত হয়। 2021 সালের জানুয়ারিতে, ওয়েবআরটিসি 1-এর নির্দিষ্টকরণ প্রার্থী সুপারিশ থেকে সুপারিশে রূপান্তরিত হয়। ডিজাইন ওয়েবআরটিসির প্রধান উপাদানগুলির মধ্যে রয়েছে বেশ কয়েকটি জাভাস্ক্রিপ্ট এপিআইঃ গেটইউজারমিডিয়া অডিও এবং ভিডিও মিডিয়া অর্জন করে (যেমন, একটি ডিভাইসের ক্যামেরা এবং মাইক্রোফোন অ্যাক্সেস করে)। আরটিসিপিয়ার কানেকশন সহকর্মীদের মধ্যে অডিও এবং ভিডিও যোগাযোগ সক্ষম করে। এটি সংকেত প্রক্রিয়াকরণ, কোডেক পরিচালনা, পিয়ার-টু-পিয়ার যোগাযোগ, নিরাপত্তা এবং ব্যান্ডউইথ ব্যবস্থাপনা সম্পাদন করে। আর. টি. সি. ডেটা চ্যানেল সমবয়সীদের মধ্যে নির্বিচারে তথ্যের দ্বিমুখী যোগাযোগের অনুমতি দেয়। ডি. টি. এল. এস-এর মাধ্যমে এস. সি. টি. পি ব্যবহার করে তথ্য পরিবহন করা হয়। এটি ওয়েবসকেটের মতো একই এপিআই ব্যবহার করে এবং এর বিলম্বতা খুব কম। ওয়েবআরটিসি এপিআই-এ একটি পরিসংখ্যান ফাংশনও রয়েছেঃ গেটস্ট্যাটস ওয়েব অ্যাপ্লিকেশনটিকে ওয়েবআরটিসি সেশন সম্পর্কে পরিসংখ্যানের একটি সেট পুনরুদ্ধার করার অনুমতি দেয়। এই পরিসংখ্যানের তথ্য একটি পৃথক ডব্লিউ3সি নথিতে বর্ণনা করা হয়েছে। ওয়েবআরটিসি এপিআইতে সিগন্যালিং-এর কোনও বিধান নেই, যা সমবয়সীদের সাথে সংযোগ স্থাপন এবং তাদের মধ্যে কীভাবে সংযোগ স্থাপন করা যায় তা নির্ধারণ করে। অ্যাপ্লিকেশনগুলি সংযোগের জন্য ইন্টারেক্টিভ কানেক্টিভিটি এস্টাব্লিশমেন্ট ব্যবহার করে এবং সম্ভবত সেশন ইনিশিয়েশন প্রোটোকল, এক্সটেনসিবল মেসেজিং অ্যান্ড প্রেজেন্স প্রোটোকল (এক্সএমপিপি), মেসেজ কিউইং টেলিমেট্রি ট্রান্সপোর্ট, ম্যাট্রিক্স বা অন্য কোনও প্রোটোকলের উপর নির্ভর করে সেশন পরিচালনার জন্য দায়বদ্ধ। সংকেত এক বা একাধিক সার্ভারের উপর নির্ভর করতে পারে। ন্যূনতম ক্ষমতা হিসাবে পিসিএমএ/পিসিএমইউ (), ডিটিএমএফ () হিসাবে টেলিফোন ইভেন্ট এবং ওপাস () অডিও কোডেক সরবরাহ করার জন্য বাস্তবায়নের প্রয়োজন। পিয়ার কানেকশন, ডেটা চ্যানেল এবং মিডিয়া ক্যাপচার ব্রাউজার এপিআইগুলি ডাব্লু 3 সি স্পেসিফিকেশনে বিস্তারিত। ডাব্লু3সি ওয়েবআরটিসির জন্য ওআরটিসি (অবজেক্ট রিয়েল-টাইম কমিউনিকেশনস) তৈরি করছে। অ্যাপ্লিকেশন ওয়েবআরটিসি ব্রাউজারগুলিকে সরাসরি একে অপরের কাছে ফাইল স্ট্রিম করার অনুমতি দেয়, সার্ভার-সাইড ফাইল হোস্টিংয়ের প্রয়োজনীয়তা হ্রাস করে বা সম্পূর্ণরূপে সরিয়ে দেয়। ওয়েবটরেন্ট ব্রাউজারে বিটটরেন্ট প্রোটোকল ব্যবহার করে পিয়ার-টু-পিয়ার ফাইল শেয়ারিং সক্ষম করতে একটি ওয়েবআরটিসি পরিবহন ব্যবহার করে। কিছু ফাইল-শেয়ারিং ওয়েবসাইট ব্যবহারকারীদের তাদের ব্রাউজারে একে অপরের কাছে সরাসরি ফাইল পাঠানোর অনুমতি দেওয়ার জন্য এটি ব্যবহার করে, যদিও এর জন্য আপলোডারকে ফাইলটি ডাউনলোড না হওয়া পর্যন্ত ট্যাবটি খোলা রাখতে হয়। কয়েকটি সিডিএন, যেমন মাইক্রোসফ্ট-এর মালিকানাধীন পিয়ার5, ক্লায়েন্টের ব্যান্ডউইথ ব্যবহার করে অন্যান্য সংযুক্ত সহকর্মীদের কাছে মিডিয়া আপলোড করে, যা প্রতিটি সহকর্মীকে একটি প্রান্ত সার্ভার হিসাবে কাজ করতে সক্ষম করে। যদিও প্রাথমিকভাবে ওয়েব ব্রাউজারের জন্য তৈরি করা হয়েছিল, ওয়েবআরটিসিতে মোবাইল প্ল্যাটফর্ম এবং আইওটি ডিভাইস সহ নন-ব্রাউজার ডিভাইসের জন্য অ্যাপ্লিকেশন রয়েছে। উদাহরণগুলির মধ্যে রয়েছে ব্রাউজার-ভিত্তিক ভিওআইপি টেলিফোনি, যাকে ক্লাউড ফোন বা ওয়েব ফোনও বলা হয়, যা একটি ওয়েব ব্রাউজারের মধ্যে থেকে কল করা এবং গ্রহণ করার অনুমতি দেয়, একটি সফ্টফোন ডাউনলোড এবং ইনস্টল করার প্রয়োজনীয়তা প্রতিস্থাপন করে। ওয়েবআরটিসি সমর্থন নিম্নলিখিত ব্রাউজারগুলি দ্বারা সমর্থিত (অসম্পূর্ণ তালিকা; প্রাচীনতম সমর্থিত সংস্করণ নির্দিষ্ট): ডেস্কটপ পিসি মাইক্রোসফ্ট এজ 12 + গুগল ক্রোম 28 + মোজিলা ফায়ারফক্স 22 + সাফারি 11 + অপেরা 18 + ভিভালডি 1.9 + ব্রেভ অ্যান্ড্রয়েড গুগল ক্রোম 28 + (29 থেকে ডিফল্টভাবে সক্ষম) মোজিলা ফায়ারফক্স 24 + অপেরা মোবাইল 12 + ক্রোমওএস ফায়ারফক্স ওএস ব্ল্যাকবেরি 10 আইওএস মোবাইল সাফারি/ওয়েবকিট (আইওএস 11 +) টিজেন 3 জিএসট্রিমার সরাসরি একটি বিনামূল্যে ওয়েবআরটিসি বাস্তবায়ন প্রদান করে। ব্রাউজার জুড়ে কোডেক সমর্থন ওয়েবআরটিসি কোডেকের একটি স্ট্যান্ডার্ড সেট স্থাপন করে যা সমস্ত অনুবর্তী ব্রাউজারকে প্রয়োগ করতে হয়। কিছু ব্রাউজার অন্যান্য কোডেককেও সমর্থন করতে পারে। দুর্বলতা 2017 সালের জানুয়ারিতে, টরেন্টফ্রীক ওয়েবআরটিসি সমর্থনকারী ব্রাউজারগুলিতে একটি গুরুতর নিরাপত্তা ত্রুটি রিপোর্ট করেছিল, যা ব্যবহারকারীর প্রকৃত আইপি ঠিকানা প্রকাশ করে ভিপিএন টানেলের সুরক্ষার সাথে আপস করেছিল। ব্রাউজারের ডেভেলপার কনসোলে আইপি অ্যাড্রেস রিড অনুরোধগুলি দৃশ্যমান নয় এবং সতর্কতা সত্ত্বেও অনলাইন ট্র্যাকিং সক্ষম করে বেশিরভাগ বিজ্ঞাপন ব্লকিং, গোপনীয়তা এবং সুরক্ষা অ্যাড-অন দ্বারা সেগুলি অবরুদ্ধ করা হয় না। জানা গেছে যে ঠিকানা ফাঁসের কারণ কোনও বাগ নয় যা প্যাচ করা যেতে পারে, তবে ওয়েবআরটিসি যেভাবে কাজ করে তার ভিত্তি; তবে, সমস্যাটি প্রশমিত করার জন্য বেশ কয়েকটি সমাধান রয়েছে। ওয়েবআরটিসি ফাঁসের জন্য পরীক্ষা করা যেতে পারে এবং বেশিরভাগ ব্রাউজারের জন্য সমাধান দেওয়া হয়। বেশিরভাগ ব্রাউজারে প্রয়োজন না হলে ওয়েবআরটিসি নিষ্ক্রিয় করা যেতে পারে। ইউব্লক অরিজিন অ্যাড-অন এই সমস্যাটি সমাধান করতে পারে (যেহেতু কিছু ব্রাউজার এখন নিজেরাই এই সমস্যাটি সমাধান করে, ইউব্লক অরিজিন v1.38 থেকে এই ব্রাউজারগুলিতে এই বিকল্পটি নিষ্ক্রিয় করা হয়েছে)। আরও পড়ুন বাহ্যিক লিঙ্ক ডাব্লু3সি ওয়েব রিয়েল-টাইম কমিউনিকেশনস ওয়ার্কিং গ্রুপ আইইটিএফ রিয়েল-টাইম কমিউনিকেশন ইন ওয়েব-ব্রাউজার (আরটিসিওয়েব) ওয়ার্কিং গ্রুপ ভিডিও চ্যাট ডেমো অ্যাপ যা ওয়েবআরটিসি লিবডাটাচানেলের উপর ভিত্তি করে, ওপেন-সোর্স ওয়েবআরটিসি নেটওয়ার্ক লাইব্রেরি পিয়ার-টু-পিয়ার সফ্টওয়্যার বিএসডি লাইসেন্স ওয়েব ডেভেলপমেন্ট ওয়েব স্ট্যান্ডার্ড ব্যবহার করে