chrome.serial

বিবরণ

সিরিয়াল পোর্টের সাথে কানেক্ট করা কোনও ডিভাইস থেকে পড়তে ও লিখতে chrome.serial API ব্যবহার করুন।

অনুমতি

serial

উপলভ্যতা

শুধুমাত্র ChromeOS

ধরন

ConnectionInfo

প্রপার্টি

  • বিটরেট

    নম্বর ঐচ্ছিক

    ConnectionOptions.bitrate দেখুন। নন-স্ট্যান্ডার্ড বিটরেট ব্যবহার করা হলে অথবা অন্তর্নিহিত ডিভাইসে কোয়েরি করার সময় কোনও সমস্যা হলে, এই ফিল্ডটি বাদ দেওয়া হতে পারে বা ভুল হতে পারে।

  • bufferSize

    নম্বর

    ConnectionOptions.bufferSize দেখুন

  • connectionId

    নম্বর

    সিরিয়াল পোর্ট কানেকশনের আইডি।

  • ctsFlowControl

    বুলিয়ান ঐচ্ছিক

    ConnectionOptions.ctsFlowControl দেখুন। অন্তর্নিহিত ডিভাইস কোয়েরি করার সময় কোনও সমস্যা হলে এই ফিল্ড বাদ দেওয়া হতে পারে।

  • dataBits

    DataBits ঐচ্ছিক

    ConnectionOptions.dataBits দেখুন। অন্তর্নিহিত ডিভাইস কোয়েরি করার সময় কোনও সমস্যা হলে এই ফিল্ড বাদ দেওয়া হতে পারে।

  • নাম

    স্ট্রিং

    ConnectionOptions.name দেখুন

  • parityBit

    ParityBit ঐচ্ছিক

    ConnectionOptions.parityBit দেখুন। অন্তর্নিহিত ডিভাইস কোয়েরি করার সময় কোনও সমস্যা হলে এই ফিল্ড বাদ দেওয়া হতে পারে।

  • সাময়িক ভাবে থামানো হয়েছে

    বুলিয়ান

    onReceive ইভেন্ট ফায়ার করা থেকে কানেকশন ব্লক করা হয়েছে কিনা তা ইঙ্গিত করার ফ্ল্যাগ।

  • অবিচ্ছিন্ন

    বুলিয়ান

    ConnectionOptions.persistent দেখুন

  • receiveTimeout

    নম্বর

    ConnectionOptions.receiveTimeout দেখুন

  • sendTimeout

    নম্বর

    ConnectionOptions.sendTimeout দেখুন

  • stopBits

    StopBits ঐচ্ছিক

    ConnectionOptions.stopBits দেখুন। অন্তর্নিহিত ডিভাইস কোয়েরি করার সময় কোনও সমস্যা হলে এই ফিল্ড বাদ দেওয়া হতে পারে।

ConnectionOptions

প্রপার্টি

  • বিটরেট

    নম্বর ঐচ্ছিক

    কানেকশন খোলার জন্য অনুরোধ করা বিটরেট। সবচেয়ে বেশি রেঞ্জের হার্ডওয়্যারের সাথে মানানসই হওয়ার জন্য, এই সংখ্যাটি সাধারণত উপলভ্য বিটরেটের সাথে মিলতে হবে, যেমন ১১০, ৩০০, ১২০০, ২৪০০, ৪৮০০, ৯৬০০, ১৪৪০০, ১৯২০০, ৩৮৪০০, ৫৭৬০০, ১১৫২০০। সিরিয়াল পোর্টের সাথে কানেক্ট করা ডিভাইসটি অনুরোধ করা বিটরেট সাপোর্ট করবে কিনা তার কোনও গ্যারেন্টি নেই, এমনকি পোর্টটি নিজেই সেই বিটরেট সাপোর্ট করলেও। ডিফল্ট হিসেবে 9600 পাস করা হবে।

  • bufferSize

    নম্বর ঐচ্ছিক

    ডেটা রিসিভ করার জন্য ব্যবহৃত বাফারের সাইজ। ডিফল্ট ভ্যালু হল ৪০৯৬।

  • ctsFlowControl

    বুলিয়ান ঐচ্ছিক

    RTS/CTS হার্ডওয়্যার ফ্লো কন্ট্রোল চালু করা হবে কিনা তা ইঙ্গিত করার ফ্ল্যাগ। ডিফল্ট হিসেবে false সেট করা থাকে।

  • dataBits

    DataBits ঐচ্ছিক

    ডিফল্ট হিসেবে "eight" পাস করা হবে।

  • নাম

    স্ট্রিং ঐচ্ছিক

    কানেকশনের সাথে যুক্ত করার জন্য অ্যাপ্লিকেশন-নির্ধারিত স্ট্রিং।

  • parityBit

    ParityBit ঐচ্ছিক

    ডিফল্ট হিসেবে "no" পাস করা হবে।

  • অবিচ্ছিন্ন

    বুলিয়ান ঐচ্ছিক

    অ্যাপ্লিকেশন সাসপেন্ড করা হলে কানেকশন খোলা রাখা উচিত কিনা তা নির্দেশ করার ফ্ল্যাগ (অ্যাপ লাইফসাইকেল ম্যানেজ করুন দেখুন)। ডিফল্ট ভ্যালু হল "false." অ্যাপ্লিকেশন লোড করা হলে, persistent=true সহ আগে খোলা যেকোনও সিরিয়াল কানেকশন getConnections-এর মাধ্যমে ফেচ করা যাবে।

  • receiveTimeout

    নম্বর ঐচ্ছিক

    "টাইমআউট" সমস্যার সাথে onReceiveError ইভেন্ট দেখানোর আগে নতুন ডেটার জন্য অপেক্ষা করার সর্বাধিক সময় (মিলিসেকেন্ডে)। শূন্য হলে, কানেকশনের জন্য রিসিভ টাইমআউট সংক্রান্ত সমস্যা দেখানো হবে না। ডিফল্ট হিসেবে ০ সেট করা থাকে।

  • sendTimeout

    নম্বর ঐচ্ছিক

    "টাইমআউট" সমস্যার সাথে কলব্যাক কল করার আগে send অপারেশন সম্পূর্ণ হওয়ার জন্য সর্বাধিক সময় (মিলিসেকেন্ডে) অপেক্ষা করতে হবে। শূন্য হলে, টাইমআউট সংক্রান্ত সমস্যা ট্রিগার করা হবে না। ডিফল্ট হিসেবে ০ সেট করা থাকে।

  • stopBits

    StopBits ঐচ্ছিক

    ডিফল্ট হিসেবে "one" পাস করা হবে।

DataBits

Enum

"সাত"

"আট"

DeviceControlSignals

প্রপার্টি

  • cts

    বুলিয়ান

    CTS (ক্লিয়ার টু সেন্ড)।

  • dcd

    বুলিয়ান

    DCD (ডেটা ক্যারিয়ার ডিটেক্ট) বা RLSD (রিসিভ লাইন সিগন্যাল/ ডিটেক্ট)।

  • dsr

    বুলিয়ান

    DSR (ডেটা সেট রেডি)।

  • ri

    বুলিয়ান

    RI (রিং ইন্ডিকেটর)।

DeviceInfo

প্রপার্টি

  • displayName

    স্ট্রিং ঐচ্ছিক

    হোস্ট ড্রাইভার থেকে কোয়েরি করা গেলে, অন্তর্নিহিত ডিভাইসের জন্য মানুষের-পঠনযোগ্য ডিসপ্লে নাম।

  • পথ

    স্ট্রিং

    ডিভাইসের সিস্টেম পাথ। এই ডিভাইসের সাথে কানেক্ট করার জন্য এটি chrome.serial.connect-এ path আর্গুমেন্ট হিসেবে পাস করতে হবে।

  • productId

    নম্বর ঐচ্ছিক

    অন্তর্নিহিত ডিভাইসের জন্য USB প্রোডাক্ট আইডি নির্ধারণ করা গেলে সেটি।

  • vendorId

    নম্বর ঐচ্ছিক

    অন্তর্নিহিত ডিভাইসের জন্য PCI বা USB ভেন্ডর আইডি নির্ধারণ করা গেলে সেটি।

HostControlSignals

প্রপার্টি

  • dtr

    বুলিয়ান ঐচ্ছিক

    DTR (ডেটা টার্মিনাল রেডি)।

  • rts

    বুলিয়ান ঐচ্ছিক

    RTS (পাঠানোর অনুরোধ)।

ParityBit

Enum

"না"

"odd"

"এমনকি"

ReceiveError

Enum

"ডিসকানেক্ট করা হয়েছে"
কানেকশন ডিসকানেক্ট করা হয়েছে।

"timeout"
receiveTimeout মিলিসেকেন্ডের জন্য কোনও ডেটা পাওয়া যায়নি।

"device_lost"
সম্ভবত ডিভাইসটি হোস্ট থেকে ডিসকানেক্ট করা হয়েছে।

"break"
ডিভাইসটি একটি ব্রেক কন্ডিশন শনাক্ত করেছে।

"frame_error"
ডিভাইসটি একটি ফ্রেমিং ত্রুটি শনাক্ত করেছে।

"ওভাররান"
ক্যারেক্টার-বাফার ওভাররান হয়েছে। পরের অক্ষরটি হারিয়ে গেছে।

"buffer_overflow"
ইনপুট বাফার ওভারফ্লো হয়েছে। ইনপুট বাফারে কোনও জায়গা নেই অথবা এন্ড-অফ-ফাইল (EOF) অক্ষরের পরে কোনও অক্ষর পাওয়া গেছে।

"parity_error"
ডিভাইসটি একটি প্যারিটি ত্রুটি শনাক্ত করেছে।

"system_error"
সিস্টেমে কোনও সমস্যা হয়েছে এবং কানেকশন ফিরিয়ে আনা যাবে না।

ReceiveErrorInfo

প্রপার্টি

  • connectionId

    নম্বর

    কানেকশন শনাক্তকারী।

  • সমস্যা

    কী সমস্যা হয়েছে তা বোঝাতে একটি ত্রুটি কোড।

ReceiveInfo

প্রপার্টি

  • connectionId

    নম্বর

    কানেকশন শনাক্তকারী।

  • ডেটা

    ArrayBuffer

    ডেটা পাওয়া গেছে।

SendError

Enum

"ডিসকানেক্ট করা হয়েছে"
কানেকশন ডিসকানেক্ট করা হয়েছে।

"বাকি আছে"
একটি পাঠানো আগে থেকেই বাকি আছে।

"timeout"
পাঠানোর সময়সীমা শেষ হয়ে গেছে।

"system_error"
সিস্টেমে কোনও সমস্যা হয়েছে এবং কানেকশন ফিরিয়ে আনা যাবে না।

SendInfo

প্রপার্টি

  • bytesSent

    নম্বর

    যত বাইট পাঠানো হয়েছে।

  • সমস্যা

    SendError ঐচ্ছিক

    কোনও সমস্যা হলে, একটি ত্রুটি কোড।

StopBits

Enum

"one"

"দুই"

পদ্ধতি

clearBreak()

Promise Chrome 45+
chrome.serial.clearBreak(
  connectionId: number,
  callback?: function,
)
: Promise<boolean>

প্রদত্ত কানেকশনে ক্যারেক্টার ট্রান্সমিশন ফিরিয়ে আনুন এবং ট্রান্সমিশন লাইনকে ননব্রেক অবস্থায় রাখুন।

প্যারামিটারগুলি

  • connectionId

    নম্বর

    কানেকশনের আইডি।

  • কলব্যাক

    ফাংশন ঐচ্ছিক

    callback প্যারামিটারটি দেখতে এইরকম:

    (result: boolean) => void

    • ফলাফল

      বুলিয়ান

রিটার্ন

  • Promise<boolean>

    Chrome 117+

    Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।

connect()

প্রতিশ্রুতি
chrome.serial.connect(
  path: string,
  options?: ConnectionOptions,
  callback?: function,
)
: Promise<ConnectionInfo>

প্রদত্ত সিরিয়াল পোর্টের সাথে কানেক্ট করে।

প্যারামিটারগুলি

  • পথ

    স্ট্রিং

    খোলার জন্য সিরিয়াল পোর্টের সিস্টেম পাথ।

  • বিকল্প

    ConnectionOptions ঐচ্ছিক

    পোর্ট কনফিগারেশন সংক্রান্ত বিকল্প।

  • কলব্যাক

    ফাংশন ঐচ্ছিক

    callback প্যারামিটারটি দেখতে এইরকম:

    (connectionInfo: ConnectionInfo) => void

রিটার্ন

  • Chrome 117+

    Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।

disconnect()

প্রতিশ্রুতি
chrome.serial.disconnect(
  connectionId: number,
  callback?: function,
)
: Promise<boolean>

সিরিয়াল পোর্ট থেকে ডিসকানেক্ট করে।

প্যারামিটারগুলি

  • connectionId

    নম্বর

    খোলা কানেকশনের আইডি।

  • কলব্যাক

    ফাংশন ঐচ্ছিক

    callback প্যারামিটারটি দেখতে এইরকম:

    (result: boolean) => void

    • ফলাফল

      বুলিয়ান

রিটার্ন

  • Promise<boolean>

    Chrome 117+

    Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।

flush()

প্রতিশ্রুতি
chrome.serial.flush(
  connectionId: number,
  callback?: function,
)
: Promise<boolean>

প্রদত্ত কানেকশনের ইনপুট ও আউটপুট বাফারে সব বাইট ফ্লাশ করে।

প্যারামিটারগুলি

  • connectionId

    নম্বর

  • কলব্যাক

    ফাংশন ঐচ্ছিক

    callback প্যারামিটারটি দেখতে এইরকম:

    (result: boolean) => void

    • ফলাফল

      বুলিয়ান

রিটার্ন

  • Promise<boolean>

    Chrome 117+

    Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।

getConnections()

প্রতিশ্রুতি
chrome.serial.getConnections(
  callback?: function,
)
: Promise<ConnectionInfo[]>

অ্যাপ্লিকেশনের মালিকানাধীন বর্তমানে খোলা সিরিয়াল পোর্ট সংযোগের তালিকা পুনরুদ্ধার করে।

প্যারামিটারগুলি

  • কলব্যাক

    ফাংশন ঐচ্ছিক

    callback প্যারামিটারটি দেখতে এইরকম:

    (connectionInfos: ConnectionInfo[]) => void

রিটার্ন

  • Promise<ConnectionInfo[]>

    Chrome 117+

    Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।

getControlSignals()

প্রতিশ্রুতি
chrome.serial.getControlSignals(
  connectionId: number,
  callback?: function,
)
: Promise<DeviceControlSignals>

প্রদত্ত কানেকশনে কন্ট্রোল সিগন্যালের অবস্থা ফিরিয়ে আনে।

প্যারামিটারগুলি

  • connectionId

    নম্বর

    কানেকশনের আইডি।

  • কলব্যাক

    ফাংশন ঐচ্ছিক

    callback প্যারামিটারটি দেখতে এইরকম:

    (signals: DeviceControlSignals) => void

রিটার্ন

  • Chrome 117+

    Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।

getDevices()

প্রতিশ্রুতি
chrome.serial.getDevices(
  callback?: function,
)
: Promise<DeviceInfo[]>

সিস্টেমে উপলভ্য সিরিয়াল ডিভাইস সম্পর্কে তথ্য প্রদান করে। এই পদ্ধতিটি কল করার সময় প্রতিবার তালিকাটি পুনরায় তৈরি করা হয়।

প্যারামিটারগুলি

  • কলব্যাক

    ফাংশন ঐচ্ছিক

    callback প্যারামিটারটি দেখতে এইরকম:

    (ports: DeviceInfo[]) => void

রিটার্ন

  • Promise<DeviceInfo[]>

    Chrome 117+

    Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।

getInfo()

প্রতিশ্রুতি
chrome.serial.getInfo(
  connectionId: number,
  callback?: function,
)
: Promise<ConnectionInfo>

প্রদত্ত কানেকশনের স্ট্যাটাস ফিরিয়ে আনে।

প্যারামিটারগুলি

  • connectionId

    নম্বর

    খোলা কানেকশনের আইডি।

  • কলব্যাক

    ফাংশন ঐচ্ছিক

    callback প্যারামিটারটি দেখতে এইরকম:

    (connectionInfo: ConnectionInfo) => void

রিটার্ন

  • Chrome 117+

    Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।

send()

প্রতিশ্রুতি
chrome.serial.send(
  connectionId: number,
  data: ArrayBuffer,
  callback?: function,
)
: Promise<SendInfo>

প্রদত্ত কানেকশনে ডেটা লেখে।

প্যারামিটারগুলি

  • connectionId

    নম্বর

    কানেকশনের আইডি।

  • ডেটা

    ArrayBuffer

    যে ডেটা পাঠাতে হবে।

  • কলব্যাক

    ফাংশন ঐচ্ছিক

    callback প্যারামিটারটি দেখতে এইরকম:

    (sendInfo: SendInfo) => void

রিটার্ন

  • Promise<SendInfo>

    Chrome 117+

    Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।

setBreak()

Promise Chrome 45+
chrome.serial.setBreak(
  connectionId: number,
  callback?: function,
)
: Promise<boolean>

প্রদত্ত কানেকশনে ক্যারেক্টার ট্রান্সমিশন সাসপেন্ড করে এবং clearBreak কল না করা পর্যন্ত ট্রান্সমিশন লাইনকে ব্রেক স্টেটে রাখে।

প্যারামিটারগুলি

  • connectionId

    নম্বর

    কানেকশনের আইডি।

  • কলব্যাক

    ফাংশন ঐচ্ছিক

    callback প্যারামিটারটি দেখতে এইরকম:

    (result: boolean) => void

    • ফলাফল

      বুলিয়ান

রিটার্ন

  • Promise<boolean>

    Chrome 117+

    Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।

setControlSignals()

প্রতিশ্রুতি
chrome.serial.setControlSignals(
  connectionId: number,
  signals: HostControlSignals,
  callback?: function,
)
: Promise<boolean>

প্রদত্ত কানেকশনে কন্ট্রোল সিগন্যালের স্ট্যাটাস সেট করে।

প্যারামিটারগুলি

  • connectionId

    নম্বর

    কানেকশনের আইডি।

  • সিগন্যাল

    ডিভাইসে পাঠানোর জন্য সিগন্যাল পরিবর্তনের সেট।

  • কলব্যাক

    ফাংশন ঐচ্ছিক

    callback প্যারামিটারটি দেখতে এইরকম:

    (result: boolean) => void

    • ফলাফল

      বুলিয়ান

রিটার্ন

  • Promise<boolean>

    Chrome 117+

    Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।

setPaused()

প্রতিশ্রুতি
chrome.serial.setPaused(
  connectionId: number,
  paused: boolean,
  callback?: function,
)
: Promise<void>

খোলা কানেকশন পজ বা আনপজ করে।

প্যারামিটারগুলি

  • connectionId

    নম্বর

    খোলা কানেকশনের আইডি।

  • সাময়িক ভাবে থামানো হয়েছে

    বুলিয়ান

    পজ বা আনপজ করা হবে কিনা তা নির্দেশ করার ফ্ল্যাগ।

  • কলব্যাক

    ফাংশন ঐচ্ছিক

    callback প্যারামিটারটি দেখতে এইরকম:

    () => void

রিটার্ন

  • <void> প্রমিস

    Chrome 117+

    Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।

update()

প্রতিশ্রুতি
chrome.serial.update(
  connectionId: number,
  options: ConnectionOptions,
  callback?: function,
)
: Promise<boolean>

খোলা সিরিয়াল পোর্ট কানেকশনে বিকল্প সেটিংস আপডেট করুন।

প্যারামিটারগুলি

  • connectionId

    নম্বর

    খোলা কানেকশনের আইডি।

  • বিকল্প

    পোর্ট কনফিগারেশন সংক্রান্ত বিকল্প।

  • কলব্যাক

    ফাংশন ঐচ্ছিক

    callback প্যারামিটারটি দেখতে এইরকম:

    (result: boolean) => void

    • ফলাফল

      বুলিয়ান

রিটার্ন

  • Promise<boolean>

    Chrome 117+

    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