chrome.devtools.recorder

refresh date: 2026-09-25 robots: noindex

ब्यौरा

DevTools में Recorder पैनल को पसंद के मुताबिक बनाने के लिए, chrome.devtools.recorder एपीआई का इस्तेमाल करें.

उपलब्धता

Chrome 105 या इसके बाद का वर्शन

Developer Tools API इस्तेमाल करने के बारे में सामान्य जानकारी पाने के लिए, DevTools API की खास जानकारी देखें.

खास जानकारी

devtools.recorder एपीआई, झलक देखने के लिए उपलब्ध एक सुविधा है. इसकी मदद से, Chrome DevTools में Recorder पैनल को बढ़ाया जा सकता है. Chrome M105 से, एक्सपोर्ट करने की सुविधा को बढ़ाया जा सकता है. Chrome M112 से, रीप्ले बटन को बड़ा किया जा सकता है.

एक्सपोर्ट करने की सुविधा को पसंद के मुताबिक बनाना

एक्सटेंशन प्लगिन रजिस्टर करने के लिए, registerRecorderExtensionPlugin फ़ंक्शन का इस्तेमाल करें. इस फ़ंक्शन के लिए, प्लगिन इंस्टेंस, name, और mediaType को पैरामीटर के तौर पर इस्तेमाल करना ज़रूरी है. प्लगिन इंस्टेंस को दो तरीके लागू करने होंगे: stringify और stringifyStep.

एक्सटेंशन से मिला name, Recorder पैनल में मौजूद एक्सपोर्ट करें मेन्यू में दिखता है.

एक्सपोर्ट के कॉन्टेक्स्ट के आधार पर, जब उपयोगकर्ता एक्सटेंशन की ओर से दिए गए एक्सपोर्ट विकल्प पर क्लिक करता है, तो Recorder पैनल इनमें से किसी एक फ़ंक्शन को शुरू करता है:

mediaType पैरामीटर की मदद से एक्सटेंशन यह तय कर सकता है कि stringify और stringifyStep फ़ंक्शन का इस्तेमाल करके, किस तरह का आउटपुट जनरेट किया जाए. उदाहरण के लिए, application/javascript अगर नतीजा JavaScript प्रोग्राम है.

प्लगिन एक्सपोर्ट करने का उदाहरण

नीचे दिया गया कोड, एक एक्सटेंशन प्लगिन लागू करता है. यह JSON.stringify का इस्तेमाल करके रिकॉर्डिंग को स्ट्रिंगिफ़ाई करता है:

class MyPlugin {
  stringify(recording) {
    return Promise.resolve(JSON.stringify(recording));
  }
  stringifyStep(step) {
    return Promise.resolve(JSON.stringify(step));
  }
}

chrome.devtools.recorder.registerRecorderExtensionPlugin(
  new MyPlugin(),
  /*name=*/'MyPlugin',
  /*mediaType=*/'application/json'
);

'फिर से चलाएं' बटन को पसंद के मुताबिक बनाना

Recorder में मौजूद 'फिर से चलाएं' बटन को पसंद के मुताबिक बनाने के लिए, registerRecorderExtensionPlugin फ़ंक्शन का इस्तेमाल करें. कस्टमाइज़ेशन को लागू करने के लिए, प्लगिन को replay तरीके का इस्तेमाल करना होगा. अगर इस तरीके का पता चलता है, तो Recorder में एक रीप्ले बटन दिखेगा. बटन पर क्लिक करने पर, मौजूदा रिकॉर्डिंग ऑब्जेक्ट को replay तरीके के पहले आर्ग्युमेंट के तौर पर पास किया जाएगा.

इस समय, एक्सटेंशन RecorderView दिखा सकता है, ताकि रीप्ले को मैनेज किया जा सके. इसके अलावा, रीप्ले के अनुरोध को प्रोसेस करने के लिए, अन्य एक्सटेंशन एपीआई का इस्तेमाल किया जा सकता है. नया RecorderView बनाने के लिए, chrome.devtools.recorder.createView को लागू करें.

रीप्ले प्लगिन का उदाहरण

नीचे दिए गए कोड में, एक एक्सटेंशन प्लगिन लागू किया गया है. यह एक डमी रिकॉर्डर व्यू बनाता है और रीप्ले के अनुरोध पर उसे दिखाता है:

const view = await chrome.devtools.recorder.createView(
  /* name= */ 'ExtensionName',
  /* pagePath= */ 'Replay.html'
);

let latestRecording;

view.onShown.addListener(() => {
  // Recorder has shown the view. Send additional data to the view if needed.
  chrome.runtime.sendMessage(JSON.stringify(latestRecording));
});

view.onHidden.addListener(() => {
  // Recorder has hidden the view.
});

export class RecorderPlugin {
  replay(recording) {
    // Share the data with the view.
    latestRecording = recording;
    // Request to show the view.
    view.show();
  }
}

chrome.devtools.recorder.registerRecorderExtensionPlugin(
  new RecorderPlugin(),
  /* name=*/ 'CoffeeTest'
);

GitHub पर एक्सटेंशन का पूरा उदाहरण देखें.

टाइप

RecorderExtensionPlugin

यह एक प्लगिन इंटरफ़ेस है. Recorder पैनल को पसंद के मुताबिक बनाने के लिए, Recorder पैनल इसे चालू करता है.

प्रॉपर्टी

  • फिर से चलाएं

    void

    Chrome 112 या इसके बाद का वर्शन

    इस कुकी की मदद से एक्सटेंशन, फिर से चलाने की सुविधा को पसंद के मुताबिक बना सकता है.

    replay फ़ंक्शन इस तरह दिखता है:

    (recording: object) => {...}

  • stringify

    void

    यह फ़ंक्शन, रिकॉर्डर पैनल के फ़ॉर्मैट में मौजूद रिकॉर्डिंग को स्ट्रिंग में बदलता है.

    stringify फ़ंक्शन इस तरह दिखता है:

    (recording: object) => {...}

  • stringifyStep

    void

    यह फ़ंक्शन, रिकॉर्डर पैनल के फ़ॉर्मैट में मौजूद रिकॉर्डिंग के किसी चरण को स्ट्रिंग में बदलता है.

    stringifyStep फ़ंक्शन इस तरह दिखता है:

    (step: object) => {...}

    • चरण

      ऑब्जेक्ट

      यह पेज पर उपयोगकर्ता के इंटरैक्शन की रिकॉर्डिंग का एक चरण है. यह Puppeteer के चरण के स्कीमा से मेल खाना चाहिए.

RecorderView

Chrome 112 या इसके बाद का वर्शन

यह एक्सटेंशन की ओर से बनाया गया व्यू दिखाता है, जिसे रिकॉर्डर पैनल में एम्बेड किया जाता है.

प्रॉपर्टी

  • onHidden

    Event<functionvoidvoid>

    जब व्यू छिपाया जाता है, तब यह इवेंट ट्रिगर होता है.

    onHidden.addListener फ़ंक्शन इस तरह दिखता है:

    (callback: function) => {...}

    • कॉलबैक

      फ़ंक्शन

      callback पैरामीटर ऐसा दिखता है:

      () => void

  • onShown

    Event<functionvoidvoid>

    इस इवेंट को तब ट्रिगर किया जाता है, जब व्यू दिखता है.

    onShown.addListener फ़ंक्शन इस तरह दिखता है:

    (callback: function) => {...}

    • कॉलबैक

      फ़ंक्शन

      callback पैरामीटर ऐसा दिखता है:

      () => void

  • दिखाएं

    void

    इससे पता चलता है कि एक्सटेंशन, इस व्यू को रिकॉर्डर पैनल में दिखाना चाहता है.

    show फ़ंक्शन इस तरह दिखता है:

    () => {...}

तरीके

createView()

Chrome 112 या इसके बाद का वर्शन
chrome.devtools.recorder.createView(
  title: string,
  pagePath: string,
)
: RecorderView

यह एक ऐसा व्यू बनाता है जो रीप्ले को हैंडल कर सकता है. यह व्यू, रिकॉर्डर पैनल में एम्बेड किया जाएगा.

पैरामीटर

  • title

    स्ट्रिंग

    यह टाइटल, डेवलपर टूल के टूलबार में एक्सटेंशन आइकॉन के बगल में दिखता है.

  • pagePath

    स्ट्रिंग

    एक्सटेंशन डायरेक्ट्री के हिसाब से, पैनल के एचटीएमएल पेज का पाथ.

रिटर्न

registerRecorderExtensionPlugin()

chrome.devtools.recorder.registerRecorderExtensionPlugin(
  plugin: RecorderExtensionPlugin,
  name: string,
  mediaType: string,
)
: void

यह कुकी, Recorder एक्सटेंशन प्लगिन को रजिस्टर करती है.

पैरामीटर

  • RecorderExtensionPlugin इंटरफ़ेस को लागू करने वाला इंस्टेंस.

  • नाम

    स्ट्रिंग

    प्लगिन का नाम.

  • mediaType

    स्ट्रिंग

    यह प्लगिन, स्ट्रिंग कॉन्टेंट का जो मीडिया टाइप जनरेट करता है.