chrome.serial

الوصف

يمكنك استخدام واجهة برمجة التطبيقات chrome.serial للقراءة من جهاز متصل بمنفذ تسلسلي والكتابة فيه.

الأذونات

serial

الأنواع

ConnectionInfo

أماكن إقامة

  • معدل نقل البيانات

    الرقم اختياري

    يمكنك الاطّلاع على ConnectionOptions.bitrate. قد يتم حذف هذا الحقل أو أن يكون غير دقيق إذا كان يتم استخدام معدل نقل بيانات غير عادي، أو إذا حدث خطأ أثناء طلب البيانات من الجهاز الأساسي.

  • bufferSize

    الرقم

    عرض ConnectionOptions.bufferSize

  • connectionId

    الرقم

    رقم تعريف اتصال المنفذ التسلسلي.

  • ctsFlowControl

    قيمة منطقية اختيارية

    يمكنك الاطّلاع على ConnectionOptions.ctsFlowControl. قد يتم حذف هذا الحقل إذا حدث خطأ أثناء طلب البحث عن الجهاز الأساسي.

  • dataBits

    DataBits اختيارية

    يمكنك الاطّلاع على ConnectionOptions.dataBits. يمكن حذف هذا الحقل في حال حدوث خطأ أثناء طلب البحث عن الجهاز الأساسي.

  • الاسم

    سلسلة

    عرض ConnectionOptions.name

  • parityBit

    ParityBit اختياري

    يمكنك الاطّلاع على ConnectionOptions.parityBit. يمكن حذف هذا الحقل في حال حدوث خطأ أثناء طلب البحث عن الجهاز الأساسي.

  • متوقفة مؤقتًا

    منطقي

    علامة تشير إلى ما إذا كان الاتصال محظورًا من تنشيط أحداث onتلقِّي

  • دائمة

    منطقي

    عرض ConnectionOptions.persistent

  • receiveTimeout

    الرقم

    عرض ConnectionOptions.receiveTimeout

  • sendTimeout

    الرقم

    عرض ConnectionOptions.sendTimeout

  • stopBits

    StopBits اختيارية

    يمكنك الاطّلاع على ConnectionOptions.stopBits. قد يتم حذف هذا الحقل إذا حدث خطأ أثناء طلب البحث عن الجهاز الأساسي.

ConnectionOptions

أماكن إقامة

  • معدل نقل البيانات

    رقم اختياري

    معدل نقل البيانات المطلوب للاتصال الذي سيتم فتحه. للتوافق مع أكبر نطاق من الأجهزة، يجب أن يتطابق هذا الرقم مع أحد معدّلات نقل البيانات المتاحة بشكل شائع، مثل 110 أو 300 أو 1200 أو 2400 أو 4800 أو 9600 أو 14400 أو 19200 أو 38400 أو 57600 أو 115200. وليس هناك ما يضمن بالطبع توافق الجهاز المتصل بالمنفذ التسلسلي مع معدل نقل البيانات المطلوب، حتى إذا كان المنفذ نفسه يتوافق مع معدل نقل البيانات هذا. سيتم تمرير 9600 تلقائيًا.

  • bufferSize

    الرقم اختياري

    حجم المخزن المؤقت المستخدم لتلقي البيانات. القيمة التلقائية هي 4096.

  • ctsFlowControl

    منطقي اختياري

    علامة تشير إلى ما إذا كان سيتم تفعيل ميزة التحكّم في تدفق الأجهزة RTS/CTS أم لا وتكون القيم التلقائية على "خطأ".

  • dataBits

    DataBits اختيارية

    سيتم تمرير "eight" تلقائيًا.

  • الاسم

    سلسلة اختيارية

    سلسلة يحدّدها التطبيق لربطها بالاتصال

  • parityBit

    ParityBit اختياري

    سيتم تمرير "no" تلقائيًا.

  • دائمة

    منطقي اختياري

    علامة تشير إلى ما إذا كان يجب ترك الاتصال مفتوحًا عند تعليق التطبيق أم لا (راجع إدارة دورة حياة التطبيق). القيمة التلقائية هي "false". عند تحميل التطبيق، يمكن جلب أي اتصالات تسلسلية تم فتحها سابقًا باستخدام persistent=true باستخدام getConnections.

  • receiveTimeout

    الرقم اختياري

    الحدّ الأقصى للوقت (بالمللي ثانية) لانتظار البيانات الجديدة قبل عرض حدث onReceiveError باستخدام "مهلة" خطأ. إذا كانت القيمة صفرًا، لن يتم عرض أخطاء مهلة الاتصال في الاتصال. وتكون القيم التلقائية 0.

  • sendTimeout

    رقم اختياري

    الحدّ الأقصى للمدة الزمنية (بالمللي ثانية) لانتظار اكتمال عملية send قبل طلب معاودة الاتصال مع تحديد "مهلة". خطأ. إذا كانت القيمة صفرًا، لن يتم تشغيل أخطاء مهلة الإرسال. وتكون القيم التلقائية 0.

  • stopBits

    StopBits اختياري

    سيتم تمرير "one" تلقائيًا.

DataBits

التعداد

"eight"

DeviceControlSignals

أماكن إقامة

  • cts

    منطقي

    CTS (محو للإرسال).

  • dcd

    منطقي

    DCD (اكتشاف حامل البيانات) أو RLSD (إشارة/ رصد خط الاستقبال)

  • dsr

    منطقي

    DSR (مجموعة البيانات جاهزة).

  • ri

    منطقي

    مؤشر الرنين).

DeviceInfo

أماكن إقامة

  • displayName

    سلسلة اختيارية

    اسم معروض للجهاز الأساسي يمكن لشخص عادي قراءته إذا كان بالإمكان الاستعلام عنه من برنامج تشغيل المضيف

  • المسار

    سلسلة

    مسار نظام الجهاز. يجب تمرير هذا العنصر كوسيطة path إلى chrome.serial.connect للاتصال بهذا الجهاز.

  • productId

    الرقم اختياري

    معرّف منتج USB إذا كان بالإمكان تحديده للجهاز الأساسي

  • vendorId

    الرقم اختياري

    رقم تعريف مورّد PCI أو USB إذا كان بالإمكان تحديد رقم تعريف للجهاز الأساسي

HostControlSignals

أماكن إقامة

  • dtr

    منطقي اختياري

    DTR (Data Terminal Ready)

  • rts

    منطقي اختياري

    طلب الإرسال (RTS)

ParityBit

Enum

"لا"

"even"

ReceiveError

التعداد

"غير متّصل"
انقطاع الاتصال.

"timeout"
لم يتم استلام أي بيانات لمدة receiveTimeout ملي ثانية.

"device_lost"
على الأرجح انقطع اتصال الجهاز بالمضيف.

"break"
رصد الجهاز حالة استراحة.

"frame_error"
رصد الجهاز خطأً في الإطارات.

"تجاوز"
تم تجاوز حد المخزن المؤقت للأحرف. ستفقد الحرف التالي.

"buffer_overflow"
حدث تجاوز سعة المخزن المؤقت للإدخال. إمّا أنّه ليس هناك مساحة في المخزن المؤقت للإدخال، أو أنّه تم تلقّي حرف بعد حرف نهاية الملف (EOF).

"parity_error"
رصد الجهاز خطأ في التكافؤ.

"system_error"
حدث خطأ في النظام وقد يكون الاتصال غير قابل للاسترداد.

ReceiveErrorInfo

أماكن إقامة

  • connectionId

    الرقم

    معرِّف الاتصال.

  • خطأ

    رمز خطأ يشير إلى المشكلة

ReceiveInfo

أماكن إقامة

  • connectionId

    الرقم

    معرِّف الاتصال.

  • البيانات

    ArrayBuffer

    البيانات المستلمة.

SendError

التعداد

"disconnected"
انقطع الاتصال.

"في انتظار المراجعة"
سبق أن كان الإرسال في انتظار المراجعة.

"timeout"
انتهت مهلة الإرسال.

"system_error"
حدث خطأ في النظام وقد يكون الاتصال غير قابل للاسترداد.

SendInfo

أماكن إقامة

  • bytesSent

    الرقم

    عدد وحدات البايت المُرسَلة.

  • خطأ

    SendError اختياري

    رمز الخطأ في حال حدوث خطأ

StopBits

التعداد

"two"

الطُرق

clearBreak()

الوعد Chrome 45 والإصدارات الأحدث
chrome.serial.clearBreak(
  connectionId: number,
  callback?: function,
)

استعادة نقل الأحرف عند اتصال معين ووضع خط الإرسال في حالة غير فاصلة.

المعلمات

  • connectionId

    الرقم

    معرّف الاتصال.

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (result: boolean) => void

    • نتيجة

      منطقي

المرتجعات

  • Promise<boolean>

    الإصدار 117 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.

connect()

الوعد
chrome.serial.connect(
  path: string,
  options?: ConnectionOptions,
  callback?: function,
)

يتصل بمنفذ تسلسلي معيّن.

المعلمات

  • المسار

    سلسلة

    مسار النظام الخاص بمنفذ تسلسلي المطلوب فتحه

  • الخيارات

    ConnectionOptions اختيارية

    خيارات ضبط المنفذ

  • رد الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (connectionInfo: ConnectionInfo) => void

المرتجعات

  • الإصدار 117 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى طلبات الاستدعاء.

disconnect()

الوعد
chrome.serial.disconnect(
  connectionId: number,
  callback?: function,
)

يتم إلغاء الربط بمنفذ تسلسلي.

المعلمات

  • connectionId

    الرقم

    رقم تعريف الاتصال المفتوح.

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (result: boolean) => void

    • نتيجة

      منطقي

المرتجعات

  • Promise<boolean>

    الإصدار 117 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.

flush()

وعود
chrome.serial.flush(
  connectionId: number,
  callback?: function,
)

تُفرغ هذه الدالة جميع البايتات في مخزنَي الإدخال والإخراج للاتصال المحدَّد.

المعلمات

  • connectionId

    الرقم

  • رد الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (result: boolean) => void

    • نتيجة

      منطقي

المرتجعات

  • Promise<boolean>

    الإصدار 117 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى طلبات الاستدعاء.

getConnections()

وعود
chrome.serial.getConnections(
  callback?: function,
)

يسترجع قائمة اتصالات المنافذ التسلسلية المفتوحة حاليًا التي يملكها التطبيق.

المعلمات

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (connectionInfos: ConnectionInfo[]) => void

المرتجعات

  • Promise<ConnectionInfo[]>

    الإصدار 117 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى طلبات الاستدعاء.

getControlSignals()

الوعد
chrome.serial.getControlSignals(
  connectionId: number,
  callback?: function,
)

يسترد حالة إشارات التحكم على اتصال معين.

المعلمات

  • connectionId

    الرقم

    معرّف الاتصال.

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (signals: DeviceControlSignals) => void

المرتجعات

  • الإصدار 117 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى طلبات الاستدعاء.

getDevices()

الوعد
chrome.serial.getDevices(
  callback?: function,
)

عرض معلومات عن الأجهزة التسلسلية المتاحة على النظام تتم إعادة إنشاء القائمة في كل مرة يتم فيها استدعاء هذه الطريقة.

المعلمات

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (ports: DeviceInfo[]) => void

المرتجعات

  • Promise<DeviceInfo[]>

    الإصدار 117 من Chrome والإصدارات الأحدث

    لا تتوفّر الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.

getInfo()

وعود
chrome.serial.getInfo(
  connectionId: number,
  callback?: function,
)

يسترد حالة اتصال معين.

المعلمات

  • connectionId

    الرقم

    رقم تعريف الاتصال المفتوح.

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (connectionInfo: ConnectionInfo) => void

المرتجعات

  • الإصدار 117 من Chrome والإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى طلبات الاستدعاء.

send()

وعود
chrome.serial.send(
  connectionId: number,
  data: ArrayBuffer,
  callback?: function,
)

تُستخدَم لكتابة البيانات في عملية الربط المحدّدة.

المعلمات

  • connectionId

    الرقم

    رقم تعريف الاتصال.

  • البيانات

    ArrayBuffer

    البيانات المطلوب إرسالها

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (sendInfo: SendInfo) => void

المرتجعات

  • Promise<SendInfo>

    الإصدار 117 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى طلبات الاستدعاء.

setBreak()

الوعد Chrome 45 والإصدارات الأحدث
chrome.serial.setBreak(
  connectionId: number,
  callback?: function,
)

تعليق إرسال الأحرف في اتصال معيّن ووضع خط الإرسال في حالة الفاصل إلى أن يتمّ استدعاء clearBreak

المعلمات

  • connectionId

    الرقم

    معرّف الاتصال.

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (result: boolean) => void

    • نتيجة

      منطقي

المرتجعات

  • Promise&lt;boolean&gt;

    الإصدار 117 من Chrome والإصدارات الأحدث

    لا تتوفّر الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.

setControlSignals()

الوعد
chrome.serial.setControlSignals(
  connectionId: number,
  signals: HostControlSignals,
  callback?: function,
)

تُستخدَم لضبط حالة إشارات التحكّم في اتصال معيّن.

المعلمات

  • connectionId

    الرقم

    رقم تعريف الاتصال.

  • الإشارات

    تتغير مجموعة الإشارة لإرسالها إلى الجهاز.

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (result: boolean) => void

    • نتيجة

      منطقي

المرتجعات

  • Promise&lt;boolean&gt;

    الإصدار 117 من Chrome والإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى طلبات الاستدعاء.

setPaused()

الوعد
chrome.serial.setPaused(
  connectionId: number,
  paused: boolean,
  callback?: function,
)

لإيقاف اتصال مفتوح مؤقتًا أو إلغاء الإيقاف المؤقت.

المعلمات

  • connectionId

    الرقم

    معرّف الاتصال الذي تم فتحه.

  • متوقفة مؤقتًا

    منطقي

    علامة للإشارة إلى ما إذا كان سيتم إيقاف المحتوى مؤقتًا أو إلغاء الإيقاف المؤقت

  • رد الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • Promise<void>

    الإصدار 117 من Chrome والإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى طلبات الاستدعاء.

update()

الوعد
chrome.serial.update(
  connectionId: number,
  options: ConnectionOptions,
  callback?: function,
)

يمكنك تعديل إعدادات الخيارات في اتصال مفتوح بمنفذ تسلسلي.

المعلمات

  • connectionId

    الرقم

    رقم تعريف الاتصال المفتوح.

  • الخيارات

    خيارات ضبط المنفذ

  • رد الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (result: boolean) => void

    • نتيجة

      منطقي

المرتجعات

  • Promise&lt;boolean&gt;

    الإصدار 117 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى طلبات الاستدعاء.

الفعاليات

onReceive

chrome.serial.onReceive.addListener(
  callback: function,
)

يتم رفع الحدث عند قراءة البيانات من عملية الربط.

المعلمات

  • ردّ الاتصال

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (info: ReceiveInfo) => void

onReceiveError

chrome.serial.onReceiveError.addListener(
  callback: function,
)

يتمّ رفع الحدث عند حدوث خطأ أثناء انتظار وقت التشغيل للبيانات على المنفذ التسلسلي. بعد رفع قيمة هذا الحدث، قد يتم ضبط عملية الربط على "paused". لا يؤدي خطأ "timeout" إلى إيقاف الاتصال مؤقتًا.

المعلمات

  • ردّ الاتصال

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (info: ReceiveErrorInfo) => void