DRM-X 6.0 ডন ও জলপাই শাখা লোগোDRM-X 6.0ডকুমেন্টেশন
◎ বাংলা

WordPress plugin ইনস্টল ও কনফিগার করা

শেয়ার করা WordPress প্লাগইন ইনস্টল করুন, পাঠকে Content ID-এর সঙ্গে যুক্ত করুন এবং LMS-এর ভর্তি ও সদস্যপদের নিয়ম বজায় রাখুন।

Markdown দেখুনসরাসরি চালানো যায় এমন উদাহরণহালনাগাদ: 2026-09-25

একনজরে আপনার সেটআপ#

বর্তমান ডাউনলোড: 1.3.0-preview.7 · LearnDash, LearnPress, Tutor LMS, Sensei ও MasterStudy-এর জন্য একটি শেয়ার করা প্লাগইন।

সাধারণত প্রশাসনিক পৃষ্ঠায় প্লাগইন কনফিগার করবেন। বর্তমান ব্যবহারকারী, কেনাকাটা ও ভর্তি বজায় রাখুন; প্রবেশাধিকার দেওয়ার আলাদা রেকর্ড লাগবে না।

  1. 1. একবার সংযোগ স্থাপন করুনSettings → DRM-X 6.0

    সার্ভারের শংসাপত্র লিখুন এবং LMS অ্যাডাপ্টার বেছে নিন।

  2. 2. পাঠের সঙ্গে কনটেন্ট যুক্ত করুনDRM-X Protected Video

    প্রকাশিত Content ID বসিয়ে VOD/Live ও নীতি বেছে নিন।

  3. 3. প্লেয়ার দেখান

    পাঠের কনটেন্ট

    DRM-X block বা shortcode বসান; কোর্সে ভর্তির নিয়ম বজায় রাখুন।

ইনস্টল ও কনফিগার করুন#

নিচের plugin ZIP ডাউনলোড করুন। WordPress-এ Plugins → Add Plugin → Upload Plugin খুলে ZIP ইনস্টল করুন এবং DRM-X 6.0 Universal Player সক্রিয় করুন। তারপর Settings → DRM-X 6.0 খুলুন। আগে একটি পরীক্ষামূলক সাইটে শুরু করুন।

license-tokens:create অনুমতি আছে এমন server integration থেকে Site ID, Site Key ও Access Key লিখুন। এই মান সার্ভারেই থাকে। সংরক্ষিত Access Key WordPress authentication salt দিয়ে এনক্রিপ্ট করা হয়; salt বদলালে key আবার লিখুন।

LMS প্রবেশাধিকার অ্যাডাপ্টার ও ডিফল্ট লাইসেন্স নীতি বেছে নিন। WordPress signed-in users বেছে নিলে ইচ্ছাকৃতভাবে সব লগইন করা অ্যাকাউন্টকে ম্যাপ করা প্রকাশিত পোস্ট দেখার অনুমতি দেওয়া হয়। অর্থের বিনিময়ের কোর্সে LMS বা সদস্যপদের অ্যাডাপ্টার ব্যবহার করুন।

WordPress plugin ডাউনলোড করুন

সংযোগের মান লেখার পর Save settings চাপুন। ছবিতে উদাহরণ মান আছে; নিজের মান দিয়ে বদলান। বর্তমান সংযোগ হালনাগাদ করার সময় Access Key ফাঁকা রাখলে আগের সংরক্ষিত key বজায় থাকে।

1. প্লাগইন সেটিংস: সংযোগের মান, প্রবেশাধিকার অ্যাডাপ্টার, সদস্যপদের শর্ত ও ডিফল্ট সুরক্ষা নীতি। শংসাপত্রের জায়গায় উদাহরণ মান দেখানো হয়েছে।
1. প্লাগইন সেটিংস: সংযোগের মান, প্রবেশাধিকার অ্যাডাপ্টার, সদস্যপদের শর্ত ও ডিফল্ট সুরক্ষা নীতি। শংসাপত্রের জায়গায় উদাহরণ মান দেখানো হয়েছে।

পাঠ ম্যাপ করে প্লেয়ার এমবেড করুন#

নিচে আপনার পাঠের editor অনুযায়ী নির্দেশনা বেছে নিন। Gutenberg DRM-X block ব্যবহার করে; LearnPress-এর classic lesson কনটেন্টের নিচে panel ব্যবহার করে; Tutor LMS পাঠের popup-এর ভেতরে field ব্যবহার করে। প্রশাসককে সুরক্ষিত ভিডিও কনফিগার করতে হবে।

  1. DRM-X Console-এর প্রকাশিত ভিডিও থেকে Content ID কপি করে Content ID ফিল্ডে বসান। Site ID, ভিডিও URL বা WordPress post ID বসাবেন না।
  2. প্যাকেজ করা ভিডিওর জন্য Video on demand (VOD), অথবা লাইভ কনটেন্টের জন্য Live stream বেছে নিন। নির্বাচন প্রকাশিত কনটেন্টের সঙ্গে মিলতে হবে।
  3. Protection policy বেছে নিন অথবা নীতি উত্তরাধিকারসূত্রে পেতে Use course or site default রাখুন। এই উদাহরণে Require HDCP একটি নীতির পছন্দ, প্রতিটি ভিডিওর বাধ্যতামূলক শর্ত নয়।
  4. প্রকাশিত পৃষ্ঠার জন্য Save অথবা নতুন পৃষ্ঠা তৈরি করার সময় Save draft চাপুন। শিক্ষার্থীদের জন্য প্রস্তুত হলে প্রকাশ করুন। Content ID ও নীতি সংরক্ষিত হয়েছে কি না দেখতে editor আবার খুলুন।
2. DRM-X Protected Video বেছে নিয়ে Content ID, কনটেন্টের ধরন ও নীতি লিখুন। ব্লকের ভেতরে এবং সাইডবারে—দুই জায়গাতেই ফিল্ড আছে। এখানে দেখানো Content ID একটি উদাহরণ।
2. DRM-X Protected Video বেছে নিয়ে Content ID, কনটেন্টের ধরন ও নীতি লিখুন। ব্লকের ভেতরে এবং সাইডবারে—দুই জায়গাতেই ফিল্ড আছে। এখানে দেখানো Content ID একটি উদাহরণ।

Gutenberg-এ DRM-X Protected Video block বেছে নিয়ে Block sidebar-এ Course and access rules খুলুন। classic lesson editor-এ কনটেন্টের নিচের DRM-X Protected Video panel-এ একই শিরোনাম খুঁজুন। দুটো একই সংরক্ষিত সেটিংস দেখায়। অন্য পৃষ্ঠার ভিডিও ব্যবহার করতে সেই পৃষ্ঠার WordPress post ID দিন; বর্তমান পাঠ কনফিগার করার সময় block-এর existing-page ID 0 রাখুন।

LearnDash, LearnPress, Tutor LMS ও MasterStudy পাঠের পাঠক্রম থেকে কোর্স শনাক্ত করে। পাঠ একটি কোর্সের হলে স্বয়ংক্রিয় শনাক্তকরণ রাখুন। শেয়ার করা পাঠের ক্ষেত্রে যে কোর্সের ভর্তি ও সুরক্ষা নীতি প্রযোজ্য হবে, সেই যুক্ত কোর্স বেছে নিন। নির্বাচিত কোর্সে এই পাঠ থাকতে হবে, কোর্স প্রকাশিত হতে হবে এবং কোর্সের পাসওয়ার্ড ছাড়া প্রবেশ করা যেতে হবে। শুধু ভর্তি থাকলেই অপ্রকাশিত বা পাসওয়ার্ড-সুরক্ষিত কোর্সে প্রবেশাধিকার পাওয়া যায় না।

3. Block → Course and access rules: উদাহরণে LearnPress ও একটি নমুনা কোর্স ID দেখানো হয়েছে। কোর্সে ভর্তি এবং অতিরিক্ত সদস্যপদের শর্ত—উভয়টি অনুযায়ী প্রবেশাধিকার থাকতে হবে।
Gutenberg উদাহরণ: Course and access rules থাকে Block sidebar-এ। classic lesson এবং Tutor course builder-এর জন্য নিচের নির্দিষ্ট editor নির্দেশনা ব্যবহার করুন। ছবিতে course selector-এর পুরোনো সংস্করণ দেখানো হয়েছে।
[drmx_player]
[drmx_player post_id="123"]

নীতির অগ্রাধিকার হলো পাঠ, তারপর যুক্ত কোর্স, তারপর site default, তারপর DRM-X environment default। lesson policy ফাঁকা রাখার মানে উত্তরাধিকারসূত্রে নীতি নেওয়া; course ও site settings বাদ দেওয়া নয়। package key model ও লক্ষ্য ডিভাইসের সঙ্গে মেলে এমন নীতি বেছে নিন।

LearnPress: প্রচলিত পাঠ সম্পাদক#

LearnPress → Lessons খুলে administrator হিসেবে পাঠ সম্পাদনা করুন। DRM-X Protected Video-তে Content ID লিখে কনটেন্টের ধরন ও সুরক্ষা নীতি বেছে নিন। Course and access rules-এ LearnPress অথবা automatic LMS detection বেছে নিন। যুক্ত কোর্সের নাম যাচাই করুন। Copy player shortcode ক্লিক করে পাঠের কনটেন্টে বসান এবং Update চাপুন। পাঠ আবার খুলে সংরক্ষিত মান দেখুন। shortcode-এ পাঠের WordPress ID থাকে, কোর্স ID বা DRM-X Content ID নয়।

Tutor LMS: কোর্স তৈরির editor#

Tutor LMS → Courses খুলে কোর্স সম্পাদনা করুন, Curriculum বেছে নিয়ে পাঠের edit বোতাম চাপুন। কনটেন্ট editor-এর নিচে DRM-X video — Content ID, Content type, Course and access rules — Protection policy এবং Player placement থাকে। Tutor LMS স্বয়ংক্রিয়ভাবে course association দেয় এবং ভর্তি যাচাই করে। Add the DRM-X player at the end of this lesson বেছে নিয়ে পাঠ সংরক্ষণ করুন। এই DRM-X ভিডিওর জন্য Tutor-এর Video upload ও URL ফাঁকা রাখুন। পাঠ আবার খুলে field ও shortcode যাচাই করুন।

পুরোনো Tutor builder-এ field না দেখা গেলে Tutor LMS → Settings → Course → Lesson → WP Editor for Lesson চালু করুন এবং WordPress editor-এ পাঠ খুলুন। DRM-X Protected Video panel ব্যবহার করে shortcode কনটেন্টে কপি করুন। instructor account বিশ্বস্ত DRM-X mapping বদলাতে পারে না; site administrator-কে কনফিগার করতে বলুন।

MasterStudy: নিজস্ব lesson editor#

WordPress administrator হিসেবে MasterStudy → Lessons খুলে পাঠ সম্পাদনা করুন এবং Custom fields বেছে নিন। DRM-X Protected Video — Content ID লিখে ধরন ও নীতি বেছে নিন। একটি কোর্সে যুক্ত পাঠের course ID 0 রাখুন। প্লেয়ার বসাতে Add player when I save this lesson বেছে নিয়ে Save চাপুন। Custom fields আবার খুলে সংরক্ষিত মান যাচাই করুন। MasterStudy 3.7.49-এ Edit with WordPress দরকার নেই।

LearnDash: কোর্স ও পাঠে প্রবেশাধিকার#

পাঠ এমবেড করা, শেয়ার করা কোর্স, ভর্তি-সংক্রান্ত ত্রুটি ও অগ্রগতি যাচাইয়ের জন্য আলাদা LearnDash নির্দেশিকা ব্যবহার করুন। আগে ওপরের সাধারণ plugin installation সম্পন্ন করুন।

LearnDash সেটআপ ও সমস্যা সমাধান

Sensei LMS: পাঠের editor#

Sensei LMS-এর পাঠ খুলে administrator হিসেবে কনটেন্ট সম্পাদনা করুন। DRM-X block বা shortcode যোগ করে Content ID কনফিগার করুন এবং Course and access rules-এ Sensei LMS বেছে নিন। পাঠকে Sensei course-এর সঙ্গে যুক্ত করে সংরক্ষণ করুন এবং ভর্তি হওয়া শিক্ষার্থী ও ভর্তি না হওয়া অ্যাকাউন্ট দিয়ে যাচাই করুন।

প্রতিটি অ্যাডাপ্টার কীভাবে প্রবেশাধিকার যাচাই করে#

LearnPress কোর্সের প্রবেশাধিকার ও নির্দিষ্ট curriculum item যাচাই করে। Tutor LMS ভর্তি হওয়া পাঠ ও তার কোর্স যাচাই করে। Sensei LMS পূর্বশর্তসহ নিজস্ব lesson-access function ব্যবহার করে। MasterStudy LMS কনফিগার করা কোর্স ও পাঠ যাচাই করে।

WooCommerce Memberships, MemberPress ও Paid Memberships Pro নিজস্ব post-access rule ব্যবহার করে। অতিরিক্ত membership adapter LMS যাচাইয়ের সঙ্গে মিলিয়ে কাজ করে: উভয় যাচাই সফল হতে হবে। WooCommerce Subscriptions, Memberships-এর access rule দিয়ে সমর্থিত; শুধু subscription name বা completed order পাঠের অনুমতি দেয় না।

Tutor LMS content drip বা MasterStudy sequential drip চালু থাকলে plugin-এর জন্য নির্দিষ্ট পাঠ যাচাই করা server filter লাগে। ডিফল্টভাবে প্রবেশাধিকার প্রত্যাখ্যাত হয়। পাঠ চালু করার আগে licensed add-on-এর সঙ্গে drmx_tutor_drip_access অথবা drmx_masterstudy_drip_access বাস্তবায়ন করুন।

Tutor LMS ও Sensei LMS একসঙ্গে থাকলে শেয়ার করা lesson post type-এর জন্য অ্যাডাপ্টার স্পষ্টভাবে বেছে নিন। নিজস্ব ইন্টিগ্রেশন drmx_user_can_play_content ব্যবহার করে এবং সার্ভার প্রবেশাধিকার যাচাই করার পরেই শুধু true ফেরত দিতে হবে।

পৃষ্ঠা খুলে Universal Player পরীক্ষা করুন#

অনুমতি আছে এমন শিক্ষার্থী হিসেবে সংরক্ষিত পৃষ্ঠা খুলে Play চাপুন। editor-এ configuration field দেখা যায়; শিক্ষার্থীদের পৃষ্ঠায় DRM-X 6.0 Universal Player দেখা যায়। playback session চাওয়ার আগে WordPress বর্তমান ব্যবহারকারী ও সংরক্ষিত mapping যাচাই করে।

4. WordPress-এ এমবেড করা প্রকৃত Universal Player; Widevine প্লেব্যাক শুরুর পর 0:41-এ বিরতি দেওয়া হয়েছে। ছবিতে শুধু প্লেয়ার ও তার নিয়ন্ত্রণ দেখানো হয়েছে।
4. WordPress-এ এমবেড করা প্রকৃত Universal Player; Widevine প্লেব্যাক শুরুর পর 0:41-এ বিরতি দেওয়া হয়েছে। ছবিতে শুধু প্লেয়ার ও তার নিয়ন্ত্রণ দেখানো হয়েছে।

প্লেব্যাকের সময় তিন সেকেন্ড কোনো কাজ না করলে নিয়ন্ত্রণগুলো লুকিয়ে যায়। প্লেয়ারের ওপর pointer নিন বা ক্লিক করলে আবার দেখা যায়। বিরতি, keyboard ব্যবহার বা সেটিংস পরিবর্তনের সময় নিয়ন্ত্রণ দৃশ্যমান থাকে। gear বোতাম দিয়ে Playback settings খুলুন। গুণমান, অডিও ট্র্যাক ও সাবটাইটেল প্রকাশিত কনটেন্টের ওপর নির্ভর করে। সমর্থিত হলে volume, captions, picture-in-picture, theater ও fullscreen ব্যবহার করুন। সেশন শেষ করতে More options → Stop playback খুলুন।

5. প্রকৃত প্লেয়ারের সেটিংস মেনুতে গুণমান, অডিও ও সাবটাইটেল দেখানো হয়েছে। আরও বিকল্প দেখতে মেনুর ভেতরে স্ক্রল করুন; উপলভ্য বিকল্প কনটেন্ট ও ব্রাউজারের ওপর নির্ভর করে।
5. প্রকৃত প্লেয়ারের সেটিংস মেনুতে গুণমান, অডিও ও সাবটাইটেল দেখানো হয়েছে। আরও বিকল্প দেখতে মেনুর ভেতরে স্ক্রল করুন; উপলভ্য বিকল্প কনটেন্ট ও ব্রাউজারের ওপর নির্ভর করে।

Content ID ফিল্ড বা প্লেয়ার না থাকলে#

DRM-X 1.3.0-preview.7-এ আপগ্রেড করুন, বাকি সম্পাদনা সংরক্ষণ করুন এবং editor refresh করুন। Course and access rules আলাদা WordPress menu নয়। LearnPress-এ পাঠের কনটেন্টের নিচে দেখুন; Tutor LMS-এ Curriculum থেকে পাঠ সম্পাদনা করুন; MasterStudy-তে নিজস্ব lesson editor-এর Custom fields tab খুলুন। Gutenberg ব্যবহারকারীদের DRM-X block নির্বাচন করতে হবে।

শুধু পৃষ্ঠা সম্পাদনার অনুমতি আছে এমন administrator বিশ্বস্ত DRM-X mapping বদলাতে পারেন। অন্য role দিয়ে সম্পাদনা করলে site administrator-কে ভিডিও কনফিগার করতে বলুন।

Mapped post ID হলো আগে থেকে DRM-X mapping আছে এমন অন্য WordPress পৃষ্ঠার ঐচ্ছিক reference। এটি Content ID নয়। বর্তমান পৃষ্ঠার ভিডিও কনফিগার করার সময় 0 রাখুন। একই page mapping ব্যবহার করা সব block একই ভিডিও শেয়ার করে।

প্লেব্যাক প্রত্যাখ্যাত হলে যাচাই করুন: পাঠ ও কোর্স প্রকাশিত, কোর্স পাসওয়ার্ড দিয়ে সুরক্ষিত নয়, কনফিগার করা DRM-X পরিবেশে কনটেন্ট প্রকাশিত, কনটেন্টের ধরন মেলে এবং শিক্ষার্থীর পাঠে প্রবেশাধিকার আছে। LMS অ্যাডাপ্টার, কোর্স ID ও অতিরিক্ত সদস্যপদের শর্ত যাচাই করুন। প্রবেশাধিকার পরীক্ষার ব্যর্থতা এড়াতে অর্থের বিনিময়ের কোর্সে সব লগইন করা WordPress ব্যবহারকারীকে প্রবেশ করতে দেবেন না।

বৈধ certificate-সহ HTTPS দিয়ে শিক্ষার সাইট খুলুন। http://192.168.31.98:8080-এর মতো HTTP LAN address নিরাপদ browser context নয়; এতে DRM-এর জন্য প্রয়োজনীয় Encrypted Media Extensions (EME) অনুপলভ্য হতে পারে। একই কম্পিউটারে পরীক্ষার জন্য HTTP localhost ব্যতিক্রম। HTTPS-এও EME অনুপলভ্য হলে browser DRM সমর্থন করে কি না এবং protected-content playback অনুমোদিত কি না দেখুন। embedded frame-এরও encrypted media ব্যবহারের অনুমতি লাগে।

চালু করার আগে পরীক্ষা করুন#

সুরক্ষিত পৃষ্ঠা ও DRM-X REST endpoint শেয়ার করা cache থেকে বাদ দিন। নিজের প্রকাশিত কনটেন্ট দিয়ে মেয়াদোত্তীর্ণ সদস্যপদ, refund, ধাপে ধাপে কনটেন্ট উন্মুক্ত করার সময়সূচি, browser navigation, Stop এবং একসঙ্গে প্লেব্যাকের সীমা পরীক্ষা করুন।

LearnDash 4.10.1 সেটআপ ও প্রবেশাধিকার ত্রুটি মেরামত · Integration source ডাউনলোড

বর্তমান ইনস্টলেশন আপগ্রেড করুন#

সাইটের ব্যাকআপ নিন, বর্তমান শেয়ার করা DRM-X প্লাগইনের জায়গায় preview.7 বসান এবং শেয়ার করা পৃষ্ঠা ক্যাশ মুছুন। প্লাগইনের একটি কপিই রাখুন। কনটেন্ট যুক্ত করা একটি পাঠ আবার খুলে সংরক্ষিত মান যাচাই করুন। লগইন না করা শিক্ষার্থীরা এখন এমন লগইন লিঙ্ক পাবে, যা তাদের আবার পাঠে ফিরিয়ে আনবে। পাঁচটি LMS অ্যাডাপ্টারেই কোর্স প্রকাশিত কি না এবং পাসওয়ার্ড দিয়ে সুরক্ষিত কি না তা যাচাই করা হয়।

সেশন এন্ডপয়েন্ট non-JSON বা অতিরিক্ত বড় অনুরোধ এবং DRM-X-এর সঙ্গে না মেলা Content IDs-ও প্রত্যাখ্যান করে। সঙ্গে দেওয়া প্লেয়ারের request code রাখুন; নিজস্ব client-কে 16 KiB-এর কম JSON পাঠাতে হবে। চালু করার আগে ভর্তি হওয়া শিক্ষার্থী, লগইন না করা দর্শক, ভর্তি না হওয়া শিক্ষার্থী, মেয়াদোত্তীর্ণ প্রবেশাধিকার এবং অপ্রকাশিত কোর্স পরীক্ষা করুন।