chrome.socket

বর্ণনা

TCP এবং UDP সংযোগ ব্যবহার করে নেটওয়ার্কে ডেটা পাঠাতে এবং গ্রহণ করতে chrome.socket API ব্যবহার করুন৷ দ্রষ্টব্য: Chrome 33 দিয়ে শুরু করে, এই APIটি sockets.udp , sockets.tcp এবং sockets.tcpServer API-এর পক্ষে বাতিল করা হয়েছে।

অনুমতি

socket

প্রকারভেদ

AcceptInfo

বৈশিষ্ট্য

  • ফলাফল কোড

    সংখ্যা

  • সকেট আইডি

    সংখ্যা ঐচ্ছিক

    গৃহীত সকেটের আইডি।

CreateInfo

বৈশিষ্ট্য

  • সকেট আইডি

    সংখ্যা

    নতুন তৈরি সকেটের আইডি।

CreateOptions

NetworkInterface

বৈশিষ্ট্য

  • ঠিকানা

    স্ট্রিং

    উপলব্ধ IPv4/6 ঠিকানা।

  • নাম

    স্ট্রিং

    অ্যাডাপ্টারের অন্তর্নিহিত নাম। *নিক্সে, এটি সাধারণত "eth0", "lo" ইত্যাদি হবে।

  • উপসর্গ দৈর্ঘ্য

    সংখ্যা

    উপসর্গের দৈর্ঘ্য

ReadInfo

বৈশিষ্ট্য

  • তথ্য

    অ্যারেবাফার

  • ফলাফল কোড

    সংখ্যা

    ফলাফল কোড অন্তর্নিহিত read() কল থেকে ফিরে এসেছে।

RecvFromInfo

বৈশিষ্ট্য

  • ঠিকানা

    স্ট্রিং

    রিমোট মেশিনের ঠিকানা।

  • তথ্য

    অ্যারেবাফার

  • বন্দর

    সংখ্যা

  • ফলাফল কোড

    সংখ্যা

    রেজাল্টকোড অন্তর্নিহিত recvfrom() কল থেকে ফিরে এসেছে।

SecureOptions

বৈশিষ্ট্য

SocketInfo

বৈশিষ্ট্য

  • সংযুক্ত

    বুলিয়ান

    অন্তর্নিহিত সকেট সংযুক্ত আছে কি না।

    tcp সকেটের জন্য, দূরবর্তী পিয়ার সংযোগ বিচ্ছিন্ন হলেও এটি সত্য থাকবে। সকেটে পড়া বা লেখার ফলে একটি ত্রুটি হতে পারে, ইঙ্গিত করে যে এই সকেটটি disconnect() এর মাধ্যমে সংযোগ বিচ্ছিন্ন করা উচিত।

    udp সকেটের জন্য, এটি শুধুমাত্র প্যাকেট পড়ার এবং লেখার জন্য একটি ডিফল্ট দূরবর্তী ঠিকানা নির্দিষ্ট করা হয়েছে কিনা তা উপস্থাপন করে।

  • স্থানীয় ঠিকানা

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

    অন্তর্নিহিত সকেট আবদ্ধ বা সংযুক্ত হলে, এর স্থানীয় IPv4/6 ঠিকানা ধারণ করে।

  • স্থানীয় পোর্ট

    সংখ্যা ঐচ্ছিক

    অন্তর্নিহিত সকেট আবদ্ধ বা সংযুক্ত হলে, তার স্থানীয় পোর্ট ধারণ করে।

  • পিয়ার ঠিকানা

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

    অন্তর্নিহিত সকেট সংযুক্ত থাকলে, এতে পিয়ারের IPv4/6 ঠিকানা থাকে।

  • পিয়ারপোর্ট

    সংখ্যা ঐচ্ছিক

    অন্তর্নিহিত সকেট সংযুক্ত থাকলে, সংযুক্ত পিয়ারের পোর্ট ধারণ করে।

  • সকেট টাইপ

    পাস করা সকেটের ধরন। এটি tcp বা udp হবে।

SocketType

এনাম

"tcp"

"ইউডিপি"

TLSVersionConstraints

বৈশিষ্ট্য

  • সর্বোচ্চ

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

  • মিনিট

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

    TLS এর সর্বনিম্ন এবং সর্বাধিক গ্রহণযোগ্য সংস্করণ। সমর্থিত মান হল tls1.2 বা tls1.3

    tls1 এবং tls1.1 মান আর সমর্থিত নয়। যদি min এই মানগুলির একটিতে সেট করা হয়, তাহলে এটি চুপচাপ tls1.2 এ আটকে থাকবে। যদি max এই মানগুলির একটিতে সেট করা হয়, বা অন্য কোনো অস্বীকৃত মান, এটি নীরবে উপেক্ষা করা হবে।

WriteInfo

বৈশিষ্ট্য

  • বাইট লিখিত

    সংখ্যা

    পাঠানো বাইট সংখ্যা, বা একটি নেতিবাচক ত্রুটি কোড.

পদ্ধতি

accept()

chrome.socket.accept(
  socketId: number,
  callback: function,
)

এই পদ্ধতিটি শুধুমাত্র TCP সকেটের ক্ষেত্রে প্রযোজ্য। এই শ্রবণ সার্ভার সকেটে একটি সংযোগ গ্রহণ করা হলে কল করার জন্য একটি কলব্যাক ফাংশন নিবন্ধন করে। শোন আগে ডাকতে হবে। যদি ইতিমধ্যেই একটি সক্রিয় গ্রহণ কলব্যাক থাকে, তাহলে ফলাফল কোড হিসাবে একটি ত্রুটি সহ এই কলব্যাকটি অবিলম্বে আহ্বান করা হবে।

পরামিতি

  • সকেট আইডি

    সংখ্যা

    সকেট আইডি।

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি এর মত দেখাচ্ছে:

    (acceptInfo: AcceptInfo)=>void

bind()

chrome.socket.bind(
  socketId: number,
  address: string,
  port: number,
  callback: function,
)

সকেটের জন্য স্থানীয় ঠিকানা বাঁধে। বর্তমানে, এটি TCP সকেট সমর্থন করে না।

পরামিতি

  • সকেট আইডি

    সংখ্যা

    সকেট আইডি।

  • ঠিকানা

    স্ট্রিং

    লোকাল মেশিনের ঠিকানা।

  • বন্দর

    সংখ্যা

    স্থানীয় মেশিনের বন্দর।

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি এর মত দেখাচ্ছে:

    (result: number)=>void

    • ফলাফল

      সংখ্যা

connect()

chrome.socket.connect(
  socketId: number,
  hostname: string,
  port: number,
  callback: function,
)

সকেটটিকে দূরবর্তী মেশিনের সাথে সংযুক্ত করে ( tcp সকেটের জন্য)। একটি udp সকেটের জন্য, এটি ডিফল্ট ঠিকানা সেট করে যে প্যাকেটগুলি read() এবং write() কলের জন্য পাঠানো হয়।

পরামিতি

  • সকেট আইডি

    সংখ্যা

    সকেট আইডি।

  • হোস্টনাম

    স্ট্রিং

    রিমোট মেশিনের হোস্টনাম বা আইপি ঠিকানা।

  • বন্দর

    সংখ্যা

    দূরবর্তী মেশিনের পোর্ট।

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি এর মত দেখাচ্ছে:

    (result: number)=>void

    • ফলাফল

      সংখ্যা

create()

প্রতিশ্রুতি
chrome.socket.create(
  type: SocketType,
  options?: CreateOptions,
  callback?: function,
)

নির্দিষ্ট ধরণের একটি সকেট তৈরি করে যা নির্দিষ্ট দূরবর্তী মেশিনের সাথে সংযোগ করবে।

পরামিতি

  • যে ধরনের সকেট তৈরি করতে হবে। tcp বা udp হতে হবে।

  • বিকল্প

    CreateOptions ঐচ্ছিক

    সকেট বিকল্প.

  • কলব্যাক

    ফাংশন ঐচ্ছিক

    callback প্যারামিটারটি এর মত দেখাচ্ছে:

    (createInfo: CreateInfo)=>void

রিটার্নস

  • প্রতিশ্রুতি< CreateInfo >

    Chrome 121+

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

destroy()

chrome.socket.destroy(
  socketId: number,
)

সকেট ধ্বংস করে। তৈরি করা প্রতিটি সকেট ব্যবহারের পরে ধ্বংস করা উচিত।

পরামিতি

  • সকেট আইডি

    সংখ্যা

    সকেট আইডি।

disconnect()

chrome.socket.disconnect(
  socketId: number,
)

সকেট সংযোগ বিচ্ছিন্ন করে। UDP সকেটের জন্য, disconnect একটি অ-অপারেশন কিন্তু কল করা নিরাপদ।

পরামিতি

  • সকেট আইডি

    সংখ্যা

    সকেট আইডি।

getInfo()

প্রতিশ্রুতি
chrome.socket.getInfo(
  socketId: number,
  callback?: function,
)

প্রদত্ত সকেটের অবস্থা পুনরুদ্ধার করে।

পরামিতি

  • সকেট আইডি

    সংখ্যা

    সকেট আইডি।

  • কলব্যাক

    ফাংশন ঐচ্ছিক

    callback প্যারামিটারটি এর মত দেখাচ্ছে:

    (result: SocketInfo)=>void

রিটার্নস

  • প্রতিশ্রুতি< সকেট ইনফো >

    Chrome 121+

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

getJoinedGroups()

chrome.socket.getJoinedGroups(
  socketId: number,
  callback: function,
)

সকেটটি বর্তমানে যুক্ত করা মাল্টিকাস্ট গোষ্ঠীর ঠিকানাগুলি পান৷

পরামিতি

  • সকেট আইডি

    সংখ্যা

    সকেট আইডি।

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি এর মত দেখাচ্ছে:

    (groups: string[])=>void

    • গ্রুপ

      স্ট্রিং[]

getNetworkList()

প্রতিশ্রুতি
chrome.socket.getNetworkList(
  callback?: function,
)

এই সিস্টেমে স্থানীয় অ্যাডাপ্টার সম্পর্কে তথ্য পুনরুদ্ধার করে।

পরামিতি

রিটার্নস

  • প্রতিশ্রুতি< নেটওয়ার্ক ইন্টারফেস []>

    Chrome 121+

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

joinGroup()

chrome.socket.joinGroup(
  socketId: number,
  address: string,
  callback: function,
)

মাল্টিকাস্ট গ্রুপে যোগ দিন এবং সেই গ্রুপ থেকে প্যাকেট পেতে শুরু করুন। সকেটটি অবশ্যই UDP প্রকারের হতে হবে এবং এই পদ্ধতিতে কল করার আগে অবশ্যই একটি স্থানীয় পোর্টে আবদ্ধ হতে হবে।

পরামিতি

  • সকেট আইডি

    সংখ্যা

    সকেট আইডি।

  • ঠিকানা

    স্ট্রিং

    যোগদান করার জন্য গ্রুপ ঠিকানা. ডোমেনের নাম সমর্থিত নয়।

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি এর মত দেখাচ্ছে:

    (result: number)=>void

    • ফলাফল

      সংখ্যা

leaveGroup()

chrome.socket.leaveGroup(
  socketId: number,
  address: string,
  callback: function,
)

joinGroup ব্যবহার করে পূর্বে যোগদান করা মাল্টিকাস্ট গ্রুপটি ছেড়ে দিন। সকেট ধ্বংস বা প্রস্থান করার আগে মাল্টিকাস্ট গ্রুপ ছেড়ে যাওয়ার প্রয়োজন নেই। এটি স্বয়ংক্রিয়ভাবে OS দ্বারা কল করা হয়।

গ্রুপ ত্যাগ করা রাউটারকে স্থানীয় হোস্টে মাল্টিকাস্ট ডেটাগ্রাম পাঠাতে বাধা দেবে, অনুমান করে যে হোস্টে এখনও গ্রুপে যোগদান করা হয়নি।

পরামিতি

  • সকেট আইডি

    সংখ্যা

    সকেট আইডি।

  • ঠিকানা

    স্ট্রিং

    গ্রুপ ছেড়ে যাওয়ার ঠিকানা। ডোমেনের নাম সমর্থিত নয়।

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি এর মত দেখাচ্ছে:

    (result: number)=>void

    • ফলাফল

      সংখ্যা

listen()

chrome.socket.listen(
  socketId: number,
  address: string,
  port: number,
  backlog?: number,
  callback: function,
)

এই পদ্ধতিটি শুধুমাত্র TCP সকেটের ক্ষেত্রে প্রযোজ্য। নির্দিষ্ট পোর্ট এবং ঠিকানায় সংযোগের জন্য শোনে। এটি কার্যকরভাবে এটিকে একটি সার্ভার সকেট করে, এবং ক্লায়েন্ট সকেট ফাংশন (সংযোগ, পড়া, লিখুন) এই সকেটে আর ব্যবহার করা যাবে না।

পরামিতি

  • সকেট আইডি

    সংখ্যা

    সকেট আইডি।

  • ঠিকানা

    স্ট্রিং

    লোকাল মেশিনের ঠিকানা।

  • বন্দর

    সংখ্যা

    স্থানীয় মেশিনের বন্দর।

  • জমা কাজ

    সংখ্যা ঐচ্ছিক

    সকেটের শোনার সারির দৈর্ঘ্য।

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি এর মত দেখাচ্ছে:

    (result: number)=>void

    • ফলাফল

      সংখ্যা

read()

chrome.socket.read(
  socketId: number,
  bufferSize?: number,
  callback: function,
)

প্রদত্ত সংযুক্ত সকেট থেকে ডেটা পড়ে।

পরামিতি

  • সকেট আইডি

    সংখ্যা

    সকেট আইডি।

  • বাফারের আকার

    সংখ্যা ঐচ্ছিক

    পড়া বাফার আকার.

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি এর মত দেখাচ্ছে:

    (readInfo: ReadInfo)=>void

recvFrom()

chrome.socket.recvFrom(
  socketId: number,
  bufferSize?: number,
  callback: function,
)

প্রদত্ত UDP সকেট থেকে ডেটা গ্রহণ করে।

পরামিতি

  • সকেট আইডি

    সংখ্যা

    সকেট আইডি।

  • বাফারের আকার

    সংখ্যা ঐচ্ছিক

    বাফার আকার গ্রহণ.

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি এর মত দেখাচ্ছে:

    (recvFromInfo: RecvFromInfo)=>void

secure()

chrome.socket.secure(
  socketId: number,
  options?: SecureOptions,
  callback: function,
)

একটি সংযুক্ত TCP ক্লায়েন্ট সকেটের মাধ্যমে একটি TLS ক্লায়েন্ট সংযোগ শুরু করুন।

পরামিতি

  • সকেট আইডি

    সংখ্যা

    ব্যবহার করার জন্য সংযুক্ত সকেট।

  • বিকল্প

    SecureOptions ঐচ্ছিক

    TLS সংযোগের জন্য সীমাবদ্ধতা এবং পরামিতি।

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি এর মত দেখাচ্ছে:

    (result: number)=>void

    • ফলাফল

      সংখ্যা

sendTo()

chrome.socket.sendTo(
  socketId: number,
  data: ArrayBuffer,
  address: string,
  port: number,
  callback: function,
)

প্রদত্ত ঠিকানা এবং পোর্টে প্রদত্ত UDP সকেটের ডেটা পাঠায়।

পরামিতি

  • সকেট আইডি

    সংখ্যা

    সকেট আইডি।

  • তথ্য

    অ্যারেবাফার

    ডাটা লিখতে হবে।

  • ঠিকানা

    স্ট্রিং

    রিমোট মেশিনের ঠিকানা।

  • বন্দর

    সংখ্যা

    দূরবর্তী মেশিনের পোর্ট।

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি এর মত দেখাচ্ছে:

    (writeInfo: WriteInfo)=>void

setKeepAlive()

chrome.socket.setKeepAlive(
  socketId: number,
  enable: boolean,
  delay?: number,
  callback: function,
)

একটি TCP সংযোগের জন্য জীবিত রাখা কার্যকারিতা সক্ষম বা নিষ্ক্রিয় করে।

পরামিতি

  • সকেট আইডি

    সংখ্যা

    সকেট আইডি।

  • সক্ষম

    বুলিয়ান

    সত্য হলে, কিপ-লাইভ কার্যকারিতা সক্রিয় করুন।

  • বিলম্ব

    সংখ্যা ঐচ্ছিক

    প্রাপ্ত শেষ ডেটা প্যাকেট এবং প্রথম কিপলাইভ প্রোবের মধ্যে বিলম্ব সেকেন্ড সেট করুন। ডিফল্ট 0।

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি এরকম দেখাচ্ছে:

    (result: boolean)=>void

    • ফলাফল

      বুলিয়ান

setMulticastLoopbackMode()

chrome.socket.setMulticastLoopbackMode(
  socketId: number,
  enabled: boolean,
  callback: function,
)

হোস্ট থেকে মাল্টিকাস্ট গ্রুপে পাঠানো মাল্টিকাস্ট প্যাকেটগুলি হোস্টের কাছে লুপ করা হবে কিনা তা সেট করুন।

দ্রষ্টব্য: Windows এবং Unix-এর মতো সিস্টেমের মধ্যে setMulticastLoopbackMode এর আচরণ কিছুটা আলাদা। মাল্টিকাস্ট লুপব্যাক মোডে বিভিন্ন সেটিংস থাকাকালীন একই হোস্টে একাধিক অ্যাপ্লিকেশন একই মাল্টিকাস্ট গ্রুপে যোগদান করলেই অসঙ্গতি ঘটে। উইন্ডোজে, লুপব্যাক বন্ধ থাকা অ্যাপ্লিকেশনগুলি লুপব্যাক প্যাকেটগুলি গ্রহণ করবে না; ইউনিক্স-এর মতো সিস্টেমে থাকাকালীন, লুপব্যাক বন্ধ থাকা অ্যাপ্লিকেশনগুলি একই হোস্টের অন্যান্য অ্যাপ্লিকেশনগুলিতে লুপব্যাক প্যাকেটগুলি পাঠাবে না। MSDN দেখুন: http://goo.gl/6vqbj

এই পদ্ধতিতে কল করার জন্য মাল্টিকাস্ট অনুমতির প্রয়োজন নেই।

পরামিতি

  • সকেট আইডি

    সংখ্যা

    সকেট আইডি।

  • সক্রিয়

    বুলিয়ান

    লুপব্যাক মোড সক্ষম করতে হবে কিনা তা নির্দেশ করুন৷

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি এর মত দেখাচ্ছে:

    (result: number)=>void

    • ফলাফল

      সংখ্যা

setMulticastTimeToLive()

chrome.socket.setMulticastTimeToLive(
  socketId: number,
  ttl: number,
  callback: function,
)

মাল্টিকাস্ট গ্রুপে পাঠানো মাল্টিকাস্ট প্যাকেটের সময়-টু-লাইভ সেট করুন।

এই পদ্ধতিতে কল করার জন্য মাল্টিকাস্ট অনুমতির প্রয়োজন নেই।

পরামিতি

  • সকেট আইডি

    সংখ্যা

    সকেট আইডি।

  • ttl

    সংখ্যা

    টাইম টু লাইভ ভ্যালু।

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি এর মত দেখাচ্ছে:

    (result: number)=>void

    • ফলাফল

      সংখ্যা

setNoDelay()

chrome.socket.setNoDelay(
  socketId: number,
  noDelay: boolean,
  callback: function,
)

একটি TCP সংযোগের জন্য TCP_NODELAY সেট বা সাফ করে। TCP_NODELAY সেট করা হলে Nagle এর অ্যালগরিদম অক্ষম করা হবে৷

পরামিতি

  • সকেট আইডি

    সংখ্যা

    সকেট আইডি।

  • কোন বিলম্ব

    বুলিয়ান

    সত্য হলে, Nagle এর অ্যালগরিদম নিষ্ক্রিয় করে।

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি এর মত দেখাচ্ছে:

    (result: boolean)=>void

    • ফলাফল

      বুলিয়ান

write()

chrome.socket.write(
  socketId: number,
  data: ArrayBuffer,
  callback: function,
)

প্রদত্ত সংযুক্ত সকেটে ডেটা লেখে।

পরামিতি

  • সকেট আইডি

    সংখ্যা

    সকেট আইডি।

  • তথ্য

    অ্যারেবাফার

    ডাটা লিখতে হবে।

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি এর মত দেখাচ্ছে:

    (writeInfo: WriteInfo)=>void