chrome.sockets.tcpServer

বর্ণনা

TCP সংযোগ ব্যবহার করে সার্ভার অ্যাপ্লিকেশন তৈরি করতে chrome.sockets.tcpServer API ব্যবহার করুন। এই API-টি পূর্বে chrome.socket API-তে থাকা TCP কার্যকারিতাকে প্রতিস্থাপন করে।

প্রকাশ

এই এপিআইটি ব্যবহার করার জন্য ম্যানিফেস্টে নিম্নলিখিত কী-গুলো অবশ্যই ঘোষণা করতে হবে।

"sockets"

প্রকারভেদ

AcceptErrorInfo

বৈশিষ্ট্য

  • ফলাফল কোড

    সংখ্যা

    অন্তর্নিহিত নেটওয়ার্ক কল থেকে প্রাপ্ত ফলাফল কোড।

  • সকেটআইডি

    সংখ্যা

    সার্ভার সকেট শনাক্তকারী।

AcceptInfo

বৈশিষ্ট্য

  • ক্লায়েন্ট সকেট আইডি

    সংখ্যা

    ক্লায়েন্ট সকেট আইডেন্টিফায়ার, অর্থাৎ নতুন স্থাপিত সংযোগের সকেট আইডেন্টিফায়ার। এই সকেট আইডেন্টিফায়ারটি শুধুমাত্র chrome.sockets.tcp নেমস্পেসের ফাংশনগুলির সাথেই ব্যবহার করা উচিত। মনে রাখবেন, ক্লায়েন্ট সকেটটি প্রাথমিকভাবে পজ করা থাকে এবং ডেটা গ্রহণ শুরু করার জন্য অ্যাপ্লিকেশন দ্বারা এটিকে অবশ্যই স্পষ্টভাবে আন-পজ করতে হবে।

  • সকেটআইডি

    সংখ্যা

    সার্ভার সকেট শনাক্তকারী।

CreateInfo

বৈশিষ্ট্য

  • সকেটআইডি

    সংখ্যা

    নতুন তৈরি করা সার্ভার সকেটের আইডি। উল্লেখ্য যে, এই এপিআই থেকে তৈরি করা সকেট আইডিগুলো অন্যান্য এপিআই, যেমন অপ্রচলিত [ socket ](../socket/) এপিআই থেকে তৈরি করা সকেট আইডিগুলোর সাথে সামঞ্জস্যপূর্ণ নয়।

SocketInfo

বৈশিষ্ট্য

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

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

    সকেটটি লিসেনিং অবস্থায় থাকলে, এতে এর লোকাল IPv4/6 অ্যাড্রেসটি থাকে।

  • স্থানীয় বন্দর

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

    সকেটটি লিসেনিং অবস্থায় থাকলে, এতে এর লোকাল পোর্ট থাকে।

  • নাম

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

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

  • থামানো

    বুলিয়ান

    একটি লিসেনিং সকেটে সংযোগের অনুরোধগুলি onAccept ইভেন্টের মাধ্যমে পাঠানো হবে, নাকি লিসেন কিউ ব্যাকলগে জমা রাখা হবে, তা নির্দেশকারী ফ্ল্যাগ। setPaused দেখুন। এর ডিফল্ট মান হলো "false"।

  • অবিরাম

    বুলিয়ান

    অ্যাপ্লিকেশনটির ইভেন্ট পেজ আনলোড হওয়ার পরেও সকেটটি খোলা থাকবে কি না, তা নির্দেশকারী ফ্ল্যাগ (দেখুন SocketProperties.persistent )। এর ডিফল্ট মান হলো 'false'।

  • সকেটআইডি

    সংখ্যা

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

SocketProperties

বৈশিষ্ট্য

  • নাম

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

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

  • অবিরাম

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

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

পদ্ধতি

close()

প্রতিশ্রুতি
chrome.sockets.tcpServer.close(
  socketId: number,
  callback?: function,
)
: Promise<void>

সকেটটি বিচ্ছিন্ন করে এবং ধ্বংস করে দেয়। তৈরি করা প্রতিটি সকেট ব্যবহারের পর বন্ধ করে দেওয়া উচিত। ফাংশনটি কল করার সাথে সাথেই সকেট আইডিটি আর বৈধ থাকে না। তবে, শুধুমাত্র কলব্যাকটি আহ্বান করা হলেই সকেটটি বন্ধ হবে, এই নিশ্চয়তা দেওয়া হয়।

প্যারামিটার

  • সকেটআইডি

    সংখ্যা

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

  • কলব্যাক

    ফাংশন ঐচ্ছিক

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

    () => void

ফেরত

  • প্রতিশ্রুতি<শূন্য>

    ক্রোম ১২১+

    প্রমিস শুধুমাত্র ম্যানিফেস্ট ভি৩ এবং এর পরবর্তী সংস্করণগুলোতে সমর্থিত, অন্যান্য প্ল্যাটফর্মে কলব্যাক ব্যবহার করতে হবে।

create()

প্রতিশ্রুতি
chrome.sockets.tcpServer.create(
  properties?: SocketProperties,
  callback?: function,
)
: Promise<CreateInfo>

একটি TCP সার্ভার সকেট তৈরি করে।

প্যারামিটার

  • বৈশিষ্ট্য

    সকেটের বৈশিষ্ট্যসমূহ (ঐচ্ছিক)।

  • কলব্যাক

    ফাংশন ঐচ্ছিক

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

    (createInfo: CreateInfo) => void

    • তথ্য তৈরি করুন

      সকেট তৈরির ফলাফল।

ফেরত

  • প্রতিশ্রুতি< তথ্য তৈরি করুন >

    ক্রোম ১২১+

    প্রমিস শুধুমাত্র ম্যানিফেস্ট ভি৩ এবং এর পরবর্তী সংস্করণগুলোতে সমর্থিত, অন্যান্য প্ল্যাটফর্মে কলব্যাক ব্যবহার করতে হবে।

disconnect()

প্রতিশ্রুতি
chrome.sockets.tcpServer.disconnect(
  socketId: number,
  callback?: function,
)
: Promise<void>

লিসেনিং সকেটটি সংযোগ বিচ্ছিন্ন করে, অর্থাৎ নতুন সংযোগ গ্রহণ করা বন্ধ করে দেয় এবং সকেটটি যে অ্যাড্রেস/পোর্টের সাথে আবদ্ধ থাকে তা মুক্ত করে দেয়। সকেট আইডেন্টিফায়ারটি বৈধ থাকে, যেমন, এটি একটি নতুন পোর্ট এবং অ্যাড্রেসে সংযোগ গ্রহণ করার জন্য listen সাথে ব্যবহার করা যেতে পারে।

প্যারামিটার

  • সকেটআইডি

    সংখ্যা

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

  • কলব্যাক

    ফাংশন ঐচ্ছিক

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

    () => void

ফেরত

  • প্রতিশ্রুতি<শূন্য>

    ক্রোম ১২১+

    প্রমিস শুধুমাত্র ম্যানিফেস্ট ভি৩ এবং এর পরবর্তী সংস্করণগুলোতে সমর্থিত, অন্যান্য প্ল্যাটফর্মে কলব্যাক ব্যবহার করতে হবে।

getInfo()

প্রতিশ্রুতি
chrome.sockets.tcpServer.getInfo(
  socketId: number,
  callback?: function,
)
: Promise<SocketInfo>

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

প্যারামিটার

  • সকেটআইডি

    সংখ্যা

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

  • কলব্যাক

    ফাংশন ঐচ্ছিক

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

    (socketInfo: SocketInfo) => void

    • সকেটইনফো

      সকেট তথ্য ধারণকারী অবজেক্ট।

ফেরত

  • প্রতিশ্রুতি< সকেট তথ্য >

    ক্রোম ১২১+

    প্রমিস শুধুমাত্র ম্যানিফেস্ট ভি৩ এবং এর পরবর্তী সংস্করণগুলোতে সমর্থিত, অন্যান্য প্ল্যাটফর্মে কলব্যাক ব্যবহার করতে হবে।

getSockets()

প্রতিশ্রুতি
chrome.sockets.tcpServer.getSockets(
  callback?: function,
)
: Promise<SocketInfo[]>

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

প্যারামিটার

  • কলব্যাক

    ফাংশন ঐচ্ছিক

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

    (socketInfos: SocketInfo[]) => void

    • সকেটইনফোস

      সকেট তথ্য ধারণকারী অবজেক্টের অ্যারে।

ফেরত

  • প্রতিশ্রুতি< সকেট তথ্য []>

    ক্রোম ১২১+

    প্রমিস শুধুমাত্র ম্যানিফেস্ট ভি৩ এবং এর পরবর্তী সংস্করণগুলোতে সমর্থিত, অন্যান্য প্ল্যাটফর্মে কলব্যাক ব্যবহার করতে হবে।

listen()

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

নির্দিষ্ট পোর্ট এবং অ্যাড্রেসে সংযোগের জন্য অপেক্ষা করে। যদি পোর্ট/অ্যাড্রেসটি ব্যবহৃত হয়, তাহলে কলব্যাকটি ব্যর্থতা নির্দেশ করে।

প্যারামিটার

  • সকেটআইডি

    সংখ্যা

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

  • ঠিকানা

    স্ট্রিং

    স্থানীয় মেশিনের ঠিকানা।

  • বন্দর

    সংখ্যা

    স্থানীয় মেশিনের পোর্ট। এর মান 0 সেট করা হলে, একটি খালি পোর্ট স্বয়ংক্রিয়ভাবে বেছে নেওয়া হয়। getInfo কল করে স্বয়ংক্রিয়ভাবে বরাদ্দ করা পোর্টটি খুঁজে পাওয়া যায়।

  • ব্যাকলগ

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

    সকেটের লিসেন কিউ-এর দৈর্ঘ্য। এর ডিফল্ট মান অপারেটিং সিস্টেমের (SOMAXCONN) উপর নির্ভর করে, যা বেশিরভাগ অ্যাপ্লিকেশনের জন্য একটি যুক্তিসঙ্গত কিউ-এর দৈর্ঘ্য নিশ্চিত করে।

  • কলব্যাক

    ফাংশন

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

    (result: number) => void

    • ফলাফল

      সংখ্যা

      অন্তর্নিহিত নেটওয়ার্ক কল থেকে প্রাপ্ত ফলাফল কোড। ঋণাত্মক মান একটি ত্রুটি নির্দেশ করে।

setPaused()

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

একটি লিসেনিং সকেটকে নতুন সংযোগ গ্রহণ করার জন্য সক্ষম বা অক্ষম করে। পজ করা অবস্থায়, একটি লিসেনিং সকেট তার ব্যাকলগ ( listen ফাংশন দেখুন) পূর্ণ না হওয়া পর্যন্ত নতুন সংযোগ গ্রহণ করে এবং তারপর অতিরিক্ত সংযোগের অনুরোধ প্রত্যাখ্যান করে। onAccept ইভেন্টগুলো শুধুমাত্র তখনই উত্থাপিত হয় যখন সকেটটি আন-পজ করা হয়।

প্যারামিটার

  • সকেটআইডি

    সংখ্যা

  • থামানো

    বুলিয়ান

  • কলব্যাক

    ফাংশন ঐচ্ছিক

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

    () => void

ফেরত

  • প্রতিশ্রুতি<শূন্য>

    ক্রোম ১২১+

    প্রমিস শুধুমাত্র ম্যানিফেস্ট ভি৩ এবং এর পরবর্তী সংস্করণগুলোতে সমর্থিত, অন্যান্য প্ল্যাটফর্মে কলব্যাক ব্যবহার করতে হবে।

update()

প্রতিশ্রুতি
chrome.sockets.tcpServer.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)
: Promise<void>

সকেটের বৈশিষ্ট্যগুলো আপডেট করে।

প্যারামিটার

  • সকেটআইডি

    সংখ্যা

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

  • বৈশিষ্ট্য

    আপডেট করার জন্য প্রপার্টিগুলো।

  • কলব্যাক

    ফাংশন ঐচ্ছিক

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

    () => void

ফেরত

  • প্রতিশ্রুতি<শূন্য>

    ক্রোম ১২১+

    প্রমিস শুধুমাত্র ম্যানিফেস্ট ভি৩ এবং এর পরবর্তী সংস্করণগুলোতে সমর্থিত, অন্যান্য প্ল্যাটফর্মে কলব্যাক ব্যবহার করতে হবে।

ইভেন্টগুলি

onAccept

chrome.sockets.tcpServer.onAccept.addListener(
  callback: function,
)

সার্ভার সকেটে সংযোগ স্থাপিত হলে এই ইভেন্টটি ঘটে।

প্যারামিটার

  • কলব্যাক

    ফাংশন

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

    (info: AcceptInfo) => void

onAcceptError

chrome.sockets.tcpServer.onAcceptError.addListener(
  callback: function,
)

সকেট অ্যাড্রেস এবং পোর্টে নতুন সংযোগের জন্য রানটাইম অপেক্ষা করার সময় কোনো নেটওয়ার্ক ত্রুটি ঘটলে এই ইভেন্টটি উত্থাপিত হয়। একবার এই ইভেন্টটি উত্থাপিত হলে, সকেটটি paused অবস্থায় চলে যায় এবং সকেটটি পুনরায় চালু না হওয়া পর্যন্ত এই সকেটের জন্য আর কোনো onAccept ইভেন্ট উত্থাপিত হয় না।

প্যারামিটার

  • কলব্যাক

    ফাংশন

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

    (info: AcceptErrorInfo) => void