বিবরণ
TCP কানেকশন ব্যবহার করে নেটওয়ার্কের মাধ্যমে ডেটা পাঠানো ও পাওয়ার জন্য chrome.sockets.tcp API ব্যবহার করুন। এই API, chrome.socket API-তে আগে পাওয়া TCP কার্যকারিতার স্থান অধিকার করে।
ম্যানিফেস্ট
ধরন
CreateInfo
প্রপার্টি
-
socketId
নম্বর
নতুন তৈরি করা সকেটের আইডি। মনে রাখবেন, এই API থেকে তৈরি করা সকেট আইডি অন্যান্য API থেকে তৈরি করা সকেট আইডির সাথে মানানসই নয়, যেমন, বন্ধ হয়ে যাওয়া
[সকেট](../socket/)API।
DnsQueryType
DNS রেজোলিউশন সংক্রান্ত পছন্দ। ডিফল্ট হল any এবং বর্তমান OS কনফিগারেশন ব্যবহার করে যা IPv4 বা IPv6 ফিরিয়ে দিতে পারে। ipv4 IPv4 এবং ipv6 IPv6 ব্যবহার করতে বাধ্য করে।
Enum
"যেকোনও"
"ipv4"
"ipv6"
ReceiveErrorInfo
প্রপার্টি
-
resultCode
নম্বর
অন্তর্নিহিত নেটওয়ার্ক কল থেকে ফলাফল কোড ফেরত এসেছে।
-
socketId
নম্বর
সকেট শনাক্তকারী।
ReceiveInfo
প্রপার্টি
-
ডেটা
ArrayBuffer
ডেটা পাওয়া গেছে, যার সর্বাধিক সাইজ হল
bufferSize। -
socketId
নম্বর
সকেট শনাক্তকারী।
SecureOptions
প্রপার্টি
-
tlsVersion
TLSVersionConstraints ঐচ্ছিক
SendInfo
প্রপার্টি
-
bytesSent
নম্বর ঐচ্ছিক
যত বাইট পাঠানো হয়েছে (ফলাফল == ০ হলে)
-
resultCode
নম্বর
অন্তর্নিহিত নেটওয়ার্ক কল থেকে ফলাফল কোড ফেরত এসেছে। নেগেটিভ ভ্যালু থাকলে বুঝতে হবে যে কোনও সমস্যা হয়েছে।
SocketInfo
প্রপার্টি
-
bufferSize
নম্বর ঐচ্ছিক
ডেটা রিসিভ করার জন্য ব্যবহৃত বাফারের সাইজ। কোনও বাফার সাইজ স্পষ্টভাবে উল্লেখ করা না থাকলে, ভ্যালু প্রদান করা হয় না।
-
কানেক্ট করা আছে
বুলিয়ান
সকেটটি কোনও রিমোট পিয়ারের সাথে কানেক্ট করা আছে কিনা তা ইঙ্গিত করার ফ্ল্যাগ।
-
localAddress
স্ট্রিং ঐচ্ছিক
আন্ডারলাইং সকেট কানেক্ট করা থাকলে, এতে লোকাল IPv4/6 অ্যাড্রেস থাকে।
-
localPort
নম্বর ঐচ্ছিক
আন্ডারলাইং সকেট কানেক্ট করা থাকলে, এতে লোকাল পোর্ট থাকে।
-
নাম
স্ট্রিং ঐচ্ছিক
সকেটের সাথে যুক্ত অ্যাপ্লিকেশন-নির্ধারিত স্ট্রিং।
-
সাময়িক ভাবে থামানো হয়েছে
বুলিয়ান
কানেক্ট করা সকেট তার পিয়ারকে আরও ডেটা পাঠানো থেকে ব্লক করে কিনা তা নির্দেশ করার ফ্ল্যাগ (
setPausedদেখুন)। -
peerAddress
স্ট্রিং ঐচ্ছিক
আন্ডারলাইং সকেট কানেক্ট করা থাকলে, পিয়ার/ IPv4/6 অ্যাড্রেস থাকে।
-
peerPort
নম্বর ঐচ্ছিক
আন্ডারলাইং সকেট কানেক্ট করা থাকলে, পিয়ার পোর্ট থাকে।
-
অবিচ্ছিন্ন
বুলিয়ান
অ্যাপ্লিকেশন সাসপেন্ড করা হলে সকেট খোলা আছে কিনা তা ইঙ্গিত করার ফ্ল্যাগ (
SocketProperties.persistentদেখুন)। -
socketId
নম্বর
সকেট শনাক্তকারী।
SocketProperties
প্রপার্টি
-
bufferSize
নম্বর ঐচ্ছিক
ডেটা রিসিভ করার জন্য ব্যবহৃত বাফারের সাইজ। ডিফল্ট ভ্যালু হল ৪০৯৬।
-
নাম
স্ট্রিং ঐচ্ছিক
সকেটের সাথে যুক্ত অ্যাপ্লিকেশন-নির্ধারিত স্ট্রিং।
-
অবিচ্ছিন্ন
বুলিয়ান ঐচ্ছিক
অ্যাপ্লিকেশনের ইভেন্ট পৃষ্ঠা আনলোড করার সময় সকেট খোলা থাকলে ফ্ল্যাগ দেখানো হয় (অ্যাপ লাইফসাইকেল ম্যানেজ করুন দেখুন)। ডিফল্ট ভ্যালু হল "false"। অ্যাপ্লিকেশন লোড করা হলে, persistent=true সহ আগে খোলা যেকোনও সকেট
getSockets-এর মাধ্যমে ফেচ করা যাবে।
TLSVersionConstraints
প্রপার্টি
-
সর্বাধিক
স্ট্রিং ঐচ্ছিক
-
মিঃ
স্ট্রিং ঐচ্ছিক
TLS-এর ন্যূনতম ও সর্বাধিক গ্রহণযোগ্য ভার্সন। সাপোর্ট করা ভ্যালু হল
tls1.2বাtls1.3।tls1এবংtls1.1ভ্যালু আর কাজ করবে না।min-এর ভ্যালু এর মধ্যে কোনও একটিতে সেট করা থাকলে, এটিtls1.2-এ সেট করা হবে।maxযদি এইসব ভ্যালুর মধ্যে কোনও একটিতে বা অন্য কোনও শনাক্ত না করা ভ্যালুতে সেট করা হয়, তাহলে সেটি উপেক্ষা করা হবে।
পদ্ধতি
close()
chrome.sockets.tcp.close(
socketId: number,
callback?: function,
): Promise<void>
সকেট বন্ধ করে এবং সকেট যে অ্যাড্রেস/পোর্টের সাথে বাউন্ড করা আছে তা রিলিজ করে। তৈরি করা প্রতিটি সকেট ব্যবহারের পরে বন্ধ করে দিতে হবে। ফাংশন কল করার সাথে সাথেই সকেট আইডি আর কাজ করে না। তবে, কলব্যাক চালু করা হলেই সকেট বন্ধ হওয়ার গ্যারেন্টি দেওয়া হয়।
প্যারামিটারগুলি
-
socketId
নম্বর
সকেট শনাক্তকারী।
-
কলব্যাক
ফাংশন ঐচ্ছিক
callbackপ্যারামিটারটি দেখতে এইরকম:() => void
রিটার্ন
-
<void> প্রমিস
Chrome 121+Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।
connect()
chrome.sockets.tcp.connect(
socketId: number,
peerAddress: string,
peerPort: number,
dnsQueryType?: DnsQueryType,
callback: function,
): void
সকেটকে রিমোট মেশিনের সাথে কানেক্ট করে। connect অপারেশন সম্পূর্ণ হলে, পিয়ার থেকে ডেটা পাওয়ার সময় onReceive ইভেন্ট তৈরি হয়। রানটাইম প্যাকেট পাওয়ার সময় নেটওয়ার্কের সমস্যা হলে, onReceiveError ইভেন্ট তৈরি হয়, এই সময় resume পদ্ধতি কল না করা পর্যন্ত এই সকেটের জন্য আর কোনও onReceive ইভেন্ট তৈরি হবে না।
প্যারামিটারগুলি
-
socketId
নম্বর
সকেট শনাক্তকারী।
-
peerAddress
স্ট্রিং
রিমোট মেশিনের অ্যাড্রেস। DNS নাম, IPv4 এবং IPv6 ফর্ম্যাট কাজ করে।
-
peerPort
নম্বর
রিমোট মেশিনের পোর্ট।
-
dnsQueryType
DnsQueryType ঐচ্ছিক
Chrome 103+ঠিকানা রেজোলিউশন সংক্রান্ত পছন্দ।
-
কলব্যাক
ফাংশন
callbackপ্যারামিটারটি দেখতে এইরকম:(result: number) => void
-
ফলাফল
নম্বর
অন্তর্নিহিত নেটওয়ার্ক কল থেকে ফলাফল কোড ফেরত এসেছে। নেগেটিভ ভ্যালু থাকলে বুঝতে হবে যে কোনও সমস্যা হয়েছে।
-
create()
chrome.sockets.tcp.create(
properties?: SocketProperties,
callback?: function,
): Promise<CreateInfo>
TCP সকেট তৈরি করে।
প্যারামিটারগুলি
-
প্রপার্টি
SocketProperties ঐচ্ছিক
সকেট প্রপার্টি (ঐচ্ছিক)।
-
কলব্যাক
ফাংশন ঐচ্ছিক
callbackপ্যারামিটারটি দেখতে এইরকম:(createInfo: CreateInfo) => void
-
createInfo
সকেট তৈরির ফলাফল।
-
রিটার্ন
-
Promise<CreateInfo>
Chrome 121+Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।
disconnect()
chrome.sockets.tcp.disconnect(
socketId: number,
callback?: function,
): Promise<void>
সকেট ডিসকানেক্ট করে।
প্যারামিটারগুলি
-
socketId
নম্বর
সকেট শনাক্তকারী।
-
কলব্যাক
ফাংশন ঐচ্ছিক
callbackপ্যারামিটারটি দেখতে এইরকম:() => void
রিটার্ন
-
<void> প্রমিস
Chrome 121+Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।
getInfo()
chrome.sockets.tcp.getInfo(
socketId: number,
callback?: function,
): Promise<SocketInfo>
প্রদত্ত সকেটের স্ট্যাটাস ফিরিয়ে আনে।
প্যারামিটারগুলি
-
socketId
নম্বর
সকেট শনাক্তকারী।
-
কলব্যাক
ফাংশন ঐচ্ছিক
callbackপ্যারামিটারটি দেখতে এইরকম:(socketInfo: SocketInfo) => void
-
socketInfo
সকেট সংক্রান্ত তথ্য সহ অবজেক্ট।
-
রিটার্ন
-
Promise<SocketInfo>
Chrome 121+Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।
getSockets()
chrome.sockets.tcp.getSockets(
callback?: function,
): Promise<SocketInfo[]>
অ্যাপ্লিকেশনের মালিকানাধীন বর্তমানে খোলা সকেটের তালিকা রিট্রিভ করে।
প্যারামিটারগুলি
-
কলব্যাক
ফাংশন ঐচ্ছিক
callbackপ্যারামিটারটি দেখতে এইরকম:(socketInfos: SocketInfo[]) => void
-
socketInfos
সকেট সংক্রান্ত তথ্য সহ অবজেক্টের অ্যারে।
-
রিটার্ন
-
Promise<SocketInfo[]>
Chrome 121+Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।
secure()
chrome.sockets.tcp.secure(
socketId: number,
options?: SecureOptions,
callback: function,
): void
কানেক্ট করা TCP ক্লায়েন্ট সকেটের মাধ্যমে TLS ক্লায়েন্ট কানেকশন শুরু করুন।
প্যারামিটারগুলি
-
socketId
নম্বর
ব্যবহার করার জন্য আগে থেকে থাকা, কানেক্ট করা সকেট।
-
বিকল্প
SecureOptions ঐচ্ছিক
TLS কানেকশনের জন্য সীমাবদ্ধতা ও প্যারামিটার।
-
কলব্যাক
ফাংশন
callbackপ্যারামিটারটি দেখতে এইরকম:(result: number) => void
-
ফলাফল
নম্বর
-
send()
chrome.sockets.tcp.send(
socketId: number,
data: ArrayBuffer,
callback: function,
): void
প্রদত্ত TCP সকেটে ডেটা পাঠায়।
প্যারামিটারগুলি
-
socketId
নম্বর
সকেট শনাক্তকারী।
-
ডেটা
ArrayBuffer
যে ডেটা পাঠাতে হবে।
-
কলব্যাক
ফাংশন
callbackপ্যারামিটারটি দেখতে এইরকম:(sendInfo: SendInfo) => void
-
sendInfo
sendপদ্ধতির ফলাফল।
-
setKeepAlive()
chrome.sockets.tcp.setKeepAlive(
socketId: number,
enable: boolean,
delay?: number,
callback: function,
): void
TCP কানেকশনের জন্য 'কিপ-অ্যালাইভ' কার্যকারিতা চালু বা বন্ধ করে।
প্যারামিটারগুলি
-
socketId
নম্বর
সকেট শনাক্তকারী।
-
চালু কর
বুলিয়ান
সত্য হলে, কিপ-অ্যালাইভ কার্যকারিতা চালু করুন।
-
বিলম্ব হবে
নম্বর ঐচ্ছিক
শেষ ডেটা প্যাকেট পাওয়া এবং প্রথম কিপঅ্যালাইভ প্রোবের মধ্যে বিলম্বের সেকেন্ড সেট করুন। ডিফল্ট হল ০।
-
কলব্যাক
ফাংশন
callbackপ্যারামিটারটি দেখতে এইরকম:(result: number) => void
-
ফলাফল
নম্বর
অন্তর্নিহিত নেটওয়ার্ক কল থেকে ফলাফল কোড ফেরত এসেছে। নেগেটিভ ভ্যালু থাকলে বুঝতে হবে যে কোনও সমস্যা হয়েছে।
-
setNoDelay()
chrome.sockets.tcp.setNoDelay(
socketId: number,
noDelay: boolean,
callback: function,
): void
TCP কানেকশনের জন্য TCP_NODELAY সেট করে বা মুছে দেয়। TCP_NODELAY সেট করা হলে, Nagle-এর অ্যালগরিদম বন্ধ করা হবে।
প্যারামিটারগুলি
-
socketId
নম্বর
সকেট শনাক্তকারী।
-
noDelay
বুলিয়ান
ট্রু হলে, Nagle-এর অ্যালগরিদম বন্ধ করে দেয়।
-
কলব্যাক
ফাংশন
callbackপ্যারামিটারটি দেখতে এইরকম:(result: number) => void
-
ফলাফল
নম্বর
অন্তর্নিহিত নেটওয়ার্ক কল থেকে ফলাফল কোড ফেরত এসেছে। নেগেটিভ ভ্যালু থাকলে বুঝতে হবে যে কোনও সমস্যা হয়েছে।
-
setPaused()
chrome.sockets.tcp.setPaused(
socketId: number,
paused: boolean,
callback?: function,
): Promise<void>
অ্যাপ্লিকেশনকে তার পিয়ার থেকে মেসেজ পাওয়ার সুবিধা চালু বা বন্ধ করে। ডিফল্ট ভ্যালু হল "false"। সাধারণত কোনও অ্যাপ্লিকেশন তার পিয়ারের পাঠানো ডেটা থ্রটল করার জন্য সকেট পজ করে। সকেট পজ করা থাকলে, কোনও onReceive ইভেন্ট তৈরি হয় না। সকেট কানেক্ট করা ও আন-পজ করা হলে, মেসেজ পাওয়ার সময় onReceive ইভেন্ট আবার শুরু হয়।
প্যারামিটারগুলি
-
socketId
নম্বর
-
সাময়িক ভাবে থামানো হয়েছে
বুলিয়ান
-
কলব্যাক
ফাংশন ঐচ্ছিক
callbackপ্যারামিটারটি দেখতে এইরকম:() => void
রিটার্ন
-
<void> প্রমিস
Chrome 121+Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।
update()
chrome.sockets.tcp.update(
socketId: number,
properties: SocketProperties,
callback?: function,
): Promise<void>
সকেট প্রপার্টি আপডেট করে।
প্যারামিটারগুলি
-
socketId
নম্বর
সকেট শনাক্তকারী।
-
প্রপার্টি
আপডেট করার জন্য প্রপার্টি।
-
কলব্যাক
ফাংশন ঐচ্ছিক
callbackপ্যারামিটারটি দেখতে এইরকম:() => void
রিটার্ন
-
<void> প্রমিস
Chrome 121+Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।
ইভেন্ট
onReceive
chrome.sockets.tcp.onReceive.addListener(
callback: function,
)
প্রদত্ত সকেটের জন্য ডেটা পাওয়া গেলে ইভেন্ট তৈরি হয়।
প্যারামিটারগুলি
-
কলব্যাক
ফাংশন
callbackপ্যারামিটারটি দেখতে এইরকম:(info: ReceiveInfo) => void
-
তথ্য
-
onReceiveError
chrome.sockets.tcp.onReceiveError.addListener(
callback: function,
)
সকেট অ্যাড্রেস ও পোর্টে ডেটার জন্য রানটাইম অপেক্ষা করার সময় নেটওয়ার্কের সমস্যা হলে ইভেন্ট তৈরি হয়। এই ইভেন্টটি একবার উত্থাপিত হলে, সকেটটি paused-এ সেট করা হয় এবং এই সকেটের জন্য আর কোনও onReceive ইভেন্ট উত্থাপিত হয় না।
প্যারামিটারগুলি
-
কলব্যাক
ফাংশন
callbackপ্যারামিটারটি দেখতে এইরকম:(info: ReceiveErrorInfo) => void
-
তথ্য
-