কানেক্টিভিটি এবং এডভান্সড ফিচার
আগের চ্যাপ্টারে আমরা বেসিক ডেটা এন্ট্রি শিখলাম - লোকেশন, ডিভাইস, আইপি, ভিল্যান, ক্যাবল। নির্ভর কমিউনিকেশনের এনওসি টিম এখন দৈনন্দিন কাজে নটোবট ব্যবহার শুরু করেছে। কিন্তু কিছুদিন পরেই তারা বুঝতে পারল বেসিক ফিচারগুলো যথেষ্ট না।
তাদের টিম লিডার জাহাঙ্গীর সাহেব একটা মিটিং ডাকলেন। সমস্যাগুলো শুনলেন:
আসিফ (এনওসি টেকনিশিয়ান): "স্যার, আমাদের ১০০+ ডিভাইস আছে। কোনটার ওয়ারেন্টি কবে শেষ হবে মনে রাখা অসম্ভব। গত সপ্তাহে একটা সুইচ নষ্ট হলো - তখন খুঁজে দেখলাম ওয়ারেন্টি ৬ মাস আগেই শেষ!"
করিম (ফিল্ড টেকনিশিয়ান): "আমাকে বলা হয় 'বিল্ডিং সি তে গিয়ে সুইচ চেক করো'। কিন্তু নটবটে বিল্ডিং নাম নেই। সব সুইচের নাম SW-DN-MIR-ACC-০১, ০২, ০৩... কোনটা কোথায় বুঝি না!"
রফিক (ম্যানেজার): "আমার শুধু ডেটা দেখার দরকার। কিন্তু অ্যাডমিন একাউন্ট দিয়ে লগইন করতে হয়। ভুলে কিছু ডিলিট করে দিলে সমস্যা!"
জাহাঙ্গীর সাহেব বললেন, "চিন্তা নেই। নটবটে এসবের সমাধান আছে। চলুন দেখি কীভাবে।"
এই চ্যাপ্টারে আমরা নটবটের এডভান্সড ফিচারগুলো দেখব যা দিয়ে সিস্টেমকে নিজের মতো কাস্টমাইজ করা যায়।
কাস্টম ফিল্ডস - নিজস্ব ডেটা ট্র্যাকিং¶
নটবটে অনেক বিল্ট-ইন ফিল্ড আছে - নেম, লোকেশন, সিরিয়াল নাম্বার, স্ট্যাটাস। কিন্তু প্রতিটা অর্গানাইজেশনের নিজস্ব কিছু ডেটা ট্র্যাক করার দরকার হয় যা স্ট্যান্ডার্ড ফিল্ডে নেই। এজন্যই কাস্টম ফিল্ডস।
সমস্যা ১: ওয়ারেন্টি ট্র্যাকিং¶
আসিফের সমস্যাটা সলভ করি। প্রতিটা ডিভাইসের ওয়ারেন্টি কবে শেষ হবে সেটা ট্র্যাক করতে হবে।
এক্সট্রাস → কাস্টম ফিল্ডস যান। + অ্যাড ক্লিক করুন।
একটা ফর্ম আসবে:
লেবেল হলো যেটা UI তে দেখাবে। কি (Key) হলো ডেটাবেসে যেভাবে স্টোর হবে। সাধারণত Label টাইপ করলে Key অটোমেটিক জেনারেট হয়ে যায়।
গ্রুপ নেম দিয়ে রিলেটেড ফিল্ডগুলো একসাথে গ্রুপ করা যায়। এটা অপশনাল কিন্তু অর্গানাইজ করার জন্য ভালো।
এখন সবচেয়ে ইম্পর্ট্যান্ট পার্ট:
এখানে বলে দিতে হবে এই ফিল্ড কোথায় দেখাবে। ড্রপডাউনে অনেক অপশন দেখবেন - dcim | device, dcim | rack, ipam | ip address ইত্যাদি। আমরা চাই শুধু ডিভাইসে দেখাক, তাই ডিসিম | ডিভাইস সিলেক্ট করুন।
এটা একটা ডেট ফিল্ড। অন্যান্য টাইপ আছে:
- টেক্সট (সাধারণ টেক্সট)
- ইন্টিজার (পূর্ণসংখ্যা)
- বুলিয়ান (হ্যাঁ/না)
- ডেট (তারিখ)
- ইউআরএল (ওয়েবসাইট লিংক)
- সিলেকশন (ড্রপডাউন সিলেকশন)
- মাল্টিপল সিলেকশন (একাধিক সিলেক্ট করা যায়)
- JSON (কমপ্লেক্স ডেটা)
আমাদের ক্ষেত্রে Date ঠিক আছে।
আনচেক রাখুন। মানে সব ডিভাইসে এটা দেওয়া বাধ্যতামূলক না। কারণ কিছু পুরোনো ডিভাইসের ওয়ারেন্টি ইতিমধ্যে শেষ হয়ে গেছে, কিছুতে হয়তো ওয়ারেন্টিই নেই।
Default: (খালি রাখুন)
Description: Date when device warranty expires
Help Text: Format: YYYY-MM-DD. Leave blank if no warranty.
ডিসক্রিপশন হলো ইন্টারনাল - এটা অ্যাডমিন দের জন্য। হেল্প টেক্সট হলো যেটা ইউজারকে গাইড করবে ফিল্ড পূরণ করার সময়।
ওয়েট যত কম, ফিল্ড তত উপরে দেখাবে। ডিফল্ট ১০০ ঠিক আছে।
এখন ক্রিয়েট ক্লিক করুন।
কাস্টম ফিল্ড তৈরি হয়ে গেছে! এখন যেকোনো ডিভাইস এডিট করলে এই নতুন ফিল্ড দেখবেন।
চলুন মিরপুর কোর রাউটারে যোগ করি:
Devices → Devices → R-DN-MIR-CORE-01 এ যান। এডিট বাটনে ক্লিক করুন।
নিচের দিকে স্ক্রল করুন। কাস্টম ফিল্ড নামে একটা সেকশন দেখবেন:
একটা ডেট পিকার দেখাবে। ক্লিক করুন এবং তারিখ সিলেক্ট করুন। ধরুন এই রাউটার কেনা হয়েছিল ডিসেম্বর ২০২২ এ, ৩ বছরের ওয়ারেন্টি। তাহলে:
আপডেট বাটনে ক্লিক করুন।
এখন ডিভাইস ডিটেইল পেজে দেখবেন:
চমৎকার! এখন সব ডিভাইসে ওয়ারেন্টি ডেট যোগ করুন:
এখন ম্যাজিক দেখুন - ফিল্টারিং:
কিছুদিন পরে জাহাঙ্গীর সাহেব বললেন, "আমাকে একটা লিস্ট দাও - পরের তিন মাসে কোন ডিভাইসগুলোর ওয়ারেন্টি শেষ হবে। সেগুলোর জন্য এএমসি (AMC - Annual Maintenance Contract) রিনিউ করতে হবে।"
আসিফ নটোবট খুলল:
Devices → Devices লিস্টে গেল। ডান দিকে ফিল্টারস প্যানেল খুলল।
নিচের দিকে স্ক্রল করলে কাস্টম ফিল্ডস সেকশন দেখবে:
আজকের তারিখ ২০২৫-০২-০৯। তিন মাস পরে ২০২৫-০৫-০৯।
অ্যাপ্লাই করল।
লিস্টে শুধু সেই ডিভাইসগুলো দেখাল যাদের ওয়ারেন্টি পরের তিন মাসে শেষ হবে:
আসিফ এই লিস্ট এক্সপোর্ট বাটনে ক্লিক করে সিএসভি ডাউনলোড করল। জাহাঙ্গীর সাহেবকে মেইল করে দিল। সমস্যা সলভ!
সমস্যা ২: বিল্ডিং নাম ট্র্যাকিং¶
এখন করিমের সমস্যা সলভ করি। এক্সেস সুইচগুলো বিভিন্ন বিল্ডিংয়ে আছে। লোকেশন ফিল্ডে "মিরপুর পপ" আছে, কিন্তু এক্স্যাক্ট বিল্ডিং নাম নেই।
আরেকটা কাস্টম ফিল্ড তৈরি করি:
এক্সট্রাস → কাস্টম ফিল্ডস → + অ্যাড
Label: Building Name
Key: building_name
Group Name: Location Details
Content Types: dcim | device
Type: Text
Required: No
Default: (খালি)
Description: Specific building or area where device is located
Help Text: e.g., "Building A, Sector 12" or "Metro Tower, Floor 5"
Validation Regex: (খালি রাখুন)
ভ্যালিডেশন রেজেক্স দিয়ে pattern চেক করানো যায়। যেমন শুধু "Building X" ফরম্যাট অ্যালাও করতে চাইলে রেজেক্স দিতে পারেন। আমাদের দরকার নেই এখন।
ক্রিয়েট করুন।
এখন এক্সেস সুইচগুলোতে বিল্ডিং নাম যোগ করুন:
SW-DN-MIR-ACC-01 → Edit
Building Name: Building A, Sector 12
SW-DN-MIR-ACC-02 → Edit
Building Name: Building B, Sector 12
SW-DN-MIR-ACC-03 → Edit
Building Name: Building C, Sector 13
এখন করিমকে যদি বলা হয় "Building C তে যাও", সে নটবটে সার্চ করতে পারবে:
ডিভাইসেস → ডিভাইসেস লিস্টে গিয়ে উপরের সার্চ বক্সে টাইপ করবে:
গ্লোবাল সার্চ সব ফিল্ডে খুঁজবে, কাস্টম ফিল্ডস সহ। SW-DN-MIR-ACC-03 খুঁজে পাবে।
অথবা ফিল্টার ব্যবহার করতে পারে:
শুধু সেই সুইচ দেখাবে।
আরো কিছু ইউজফুল কাস্টম ফিল্ডস¶
নির্ভর কমিউনিকেশন আরো কয়েকটা কাস্টম ফিল্ড তৈরি করেছে:
পাওয়ার কনজাম্পশন:
Label: Power Consumption (Watts)
Content Types: dcim | device
Type: Integer
Validation Minimum: 0
Validation Maximum: 10000
Description: Device power consumption in watts
এখন র্যাকের টোটাল পাওয়ার ক্যালকুলেট করা যায়। Rack A তে যদি ৫টা ডিভাইস থাকে:
R-DN-MIR-CORE-01: 85W
SW-DN-MIR-DIST-01: 45W
SW-DN-MIR-ACC-01: 25W
SW-DN-MIR-ACC-02: 25W
SW-DN-MIR-ACC-03: 25W
Total: 205W
UPS সাইজ করার জন্য এই ডেটা কাজে লাগে।
পারচেজ সোর্স:
Label: Purchase Source
Content Types: dcim | device
Type: Selection
Choices:
Local Vendor
International Import
Rental
Donation
Second Hand
Description: How this device was procured
এখন রিপোর্ট করতে পারবেন: "আমাদের ৬০% ডিভাইস লোকাল ভেন্ডর থেকে, ৩০% ইমপোর্ট, ১০% রেন্টাল।"
কাস্টমার কাউন্ট (এক্সেস সুইচের জন্য):
Label: Approximate Customers
Content Types: dcim | device
Type: Integer
Description: Approximate number of customers served by this device
এখন জানেন কোন সুইচে বেশি লোড আছে।
ট্যাগস - সহজ ক্যাটেগরাইজেশন¶
ট্যাগ হলো ডেটা ক্যাটেগরাইজ করার একটা সহজ উপায়। যেকোনো অবজেক্টে একাধিক ট্যাগ যোগ করা যায়।
কেন ট্যাগ দরকার?¶
ধরুন আপনি জানতে চান:
- কোন ডিভাইসগুলো প্রোডাকশনে আছে?
- কোন ডিভাইসগুলো ক্রিটিক্যাল (যেগুলো down হলে বড় সমস্যা)?
- কোনগুলো এখন মেইনটেনেন্সে আছে?
এসবের জন্য আলাদা আলাদা ফিল্ড তৈরি করা impractical। ট্যাগ দিয়ে সহজেই করা যায়।
ট্যাগ তৈরি করা¶
এক্সট্রাস → ট্যাগস যান। + অ্যাড ক্লিক করুন।
প্রোডাকশন ট্যাগ:
কালার একটা হেক্স কোড। অথবা কালার পিকার ব্যবহার করুন। সবুজ রঙ মানে "সব ঠিক আছে, চলছে"।
কনটেন্ট টাইপস খালি রাখলে সব ধরনের অবজেক্টে এই ট্যাগ ব্যবহার করা যাবে - ডিভাইস, আইপি, সার্কিট, সব জায়গায়।
ক্রিয়েট অ্যান্ড অ্যাড অ্যানাদার ক্লিক করুন (যদি আরো ট্যাগ তৈরি করতে চান)।
একইভাবে আরো কয়েকটা:
Cক্রিটিকাল ট্যাগ:
Name: critical
Color: f44336 (লাল)
Description: Critical infrastructure - failure causes major outage
ব্যাকআপ ট্যাগ:
এন্ড অফ লাইফ ট্যাগ:
মেইনটেন্যান্স ট্যাগ:
এখন এক্সট্রাস → ট্যাগস লিস্টে পাঁচটা কালারফুল ট্যাগ দেখবেন।
ডিভাইসে ট্যাগ যোগ করা¶
Devices → Devices → R-DN-MIR-CORE-01 → এডিট
দুটো ট্যাগ সিলেক্ট করুন (Ctrl চেপে রাখুন বা ড্রপডাউনে ক্লিক করুন)।
আপডেট করুন।
ডিভাইস ডিটেইল পেজে এখন দুটো কালারফুল ব্যাজ দেখবেন:
সবুজ এবং লাল ব্যাজ।
একইভাবে অন্যান্য ডিভাইসে:
SW-DN-MIR-DIST-01
Tags: production
SW-DN-MIR-ACC-01
Tags: production
R-DN-MIR-CORE-02 (যদি ব্যাকআপ রাউটার থাকে)
Tags: backup
ট্যাগ দিয়ে ফিল্টারিং¶
Devices → Devices লিস্টে যান।
ফিল্টারস প্যানেল খুলুন:
শুধু ক্রিটিকাল ট্যাগ ওয়ালা ডিভাইস দেখাবে। নির্ভর কমিউনিকেশনের ক্ষেত্রে:
দুটো কোর রাউটার।
মাল্টিপল ট্যাগ দিয়েও ফিল্টার করা যায়:
যেসব ডিভাইসে উভয় ট্যাগ আছে শুধু সেগুলো দেখাবে।
ট্যাগ এর প্র্যাক্টিক্যাল ব্যবহার¶
সিনারিও ১: মেইনটেনেন্স উইন্ডো
মিরপুর কোর রাউটারে একটা ফার্মওয়্যার আপগ্রেড করতে হবে। রাত ২টায় কাজ শুরু হবে, ৪টায় শেষ।
কাজ শুরুর আগে:
R-DN-MIR-CORE-01 → Edit
Status: Offline (Active থেকে চেঞ্জ করুন)
Tags: maintenance যোগ করুন
Comments: "Firmware upgrade in progress. Scheduled: 2025-02-10 02:00-04:00 AM. Contact: Asif +880 1712-345678"
এখন যে কেউ নটোবট দেখলে বুঝবে এই রাউটার মেইনটেনেন্সে আছে।
কাজ শেষ হলে:
Status: Active
Tags: maintenance রিমুভ করুন
Comments: "Firmware upgraded to v7.12. Completed: 2025-02-10 03:45 AM"
সিনারিও ২: ইওএল (এন্ড অফ লাইফ) ট্র্যাকিং
কিছু পুরোনো সুইচ আছে যেগুলো ৫ বছর হয়ে গেছে, রিপ্লেস করা দরকার:
SW-DN-MIR-ACC-05 → Edit
Tags: end-of-life যোগ করুন
Comments: "Purchased 2020. Frequent issues. Replacement budgeted for Q2 2025."
এখন বাজেট মিটিংয়ে:
সব ইওএল ডিভাইসের লিস্ট। এক্সপোর্ট করে Excel এ নিন, টোটাল রিপ্লেসমেন্ট কস্ট ক্যালকুলেট করুন।
সেভড ফিল্টার - কমন কোয়েরি সেভ করা¶
আসিফ প্রতিদিন সকালে নটোবট এ যায় এবং মিরপুর পপের সব এক্টিভ ডিভাইস চেক করে। প্রতিদিন একই ফিল্টার:
এটা প্রতিদিন সেট করা বিরক্তিকর। Saved Filter দিয়ে সহজ করা যায়।
একটা সেভড ফিল্টার তৈরি করা¶
Devices → Devices লিস্টে যান।
ফিল্টার সেট করুন:
অ্যাপ্লাই করুন। লিস্টে শুধু মিরপুরের এক্টিভ ডিভাইস দেখাবে।
এখন উপরে ডান দিকে সেভড ফিল্টার বাটন দেখবেন। ক্লিক করুন।
একটা ছোট ডায়ালগ বক্স:
পাবলিক চেক করলে অন্য ইউজাররাও এই ফিল্টার দেখবে। আনচেক থাকলে শুধু আপনি দেখবেন।
সেভ ক্লিক করুন।
এখন পরের বার Devices → Devices লিস্টে গেলে উপরে সেভড ফিল্টারস নামে একটা ড্রপডাউন দেখবেন। ক্লিক করলে:
এটা সিলেক্ট করলেই ফিল্টার অটোমেটিক্যালি এপ্লাই হয়ে যাবে। এক ক্লিকে কাজ শেষ!
আরো কিছু ইউজফুল সেভড ফিল্টারস¶
ক্রিটিকাল ইনফ্রাস্ট্রাকচার:
ওয়ারেন্টি এক্সপায়ারিং সুন:
Warranty Expiry Date:
After: 2025-02-09 (আজ)
Before: 2025-05-09 (৯০ দিন পরে)
Name: Warranty Expiring in 90 Days
অ্যাক্সেস সুইচেস - অল লোকেশনস:
ডিভাইসেস আন্ডার মেইনটেন্যান্স:
এভাবে আপনার ফ্রিকোয়েন্ট কোয়েরিস সেভ করে রাখুন। সময় বাঁচবে এবং কনসিস্টেন্সি থাকবে।
ইউজার ম্যানেজমেন্ট এবং পারমিশনস¶
নির্ভর কমিউনিকেশনের তিন ধরনের ইউজার আছে:
- এনওসি টিম (জাহাঙ্গীর, আসিফ, রহিম): সবকিছু দেখতে এবং এডিট করতে পারবে
- ফিল্ড অপারেশনস (করিম, সালমান): শুধু ডিভাইস এবং ক্যাবল ম্যানেজ করবে
- ম্যানেজমেন্ট (রফিক সাহেব - CTO): শুধু রিপোর্ট দেখবে, কিছু এডিট করবে না
প্রতিটা টিমের জন্য আলাদা পারমিশন লেভেল দরকার।
গ্রুপস তৈরি করা¶
নটবটে গ্রুপস দিয়ে পারমিশন ম্যানেজ করা হয়। একটা গ্রুপে পারমিশন সেট করুন, তারপর ইউজারদের সেই গ্রুপে যোগ করুন।
উপরের ডান কোণায় আপনার ইউজারনেম (অ্যাডমিন) ক্লিক করুন → অ্যাডমিন সিলেক্ট করুন।
Django Admin প্যানেলে চলে যাবেন। এখানে গ্রুপস দেখবেন। ক্লিক করুন।
+ Add Group বাটনে ক্লিক করুন।
গ্রুপ ১: এনওসি টিম
এখন Permissions সিলেক্ট করতে হবে। নিচে একটা বড় বক্স দেখবেন অ্যাভেইলেবল পারমিশনস এবং চোজেন পারমিশনস।
বাম দিকে (অ্যাভেইলেবল) থেকে ডান দিকে (চোজেন) মুভ করতে হবে যেগুলো দরকার।
এটা একটু সময় সাপেক্ষ কারণ অনেক পারমিশনস আছে। আমরা ক্যাটেগরি অনুযায়ী দেখব:
DCIM - Device Permissions:
লক্ষ্য করুন "Can delete device" সিলেক্ট করছি না। NOC ডিভাইস ডিলিট করতে পারবে না (ভুল করে ডিলিট হয়ে যাওয়ার ভয়)।
DCIM - Cable Permissions:
DCIM - Interface Permissions:
IPAM - IP Address Permissions:
ipam | ip address | Can view IP address
ipam | ip address | Can add IP address
ipam | ip address | Can change IP address
IPAM - Prefix Permissions:
সার্কিটস - লিমিটেড অ্যাক্সেস:
শুধু ভিউ, অ্যাড/চেঞ্জ/ডিলিট না। কারণ সার্কিট যোগ/পরিবর্তন করা ম্যানেজমেন্ট লেভেলের কাজ।
অর্গানাইজেশন - লোকেশন (ভিউ অনলি):
এনওসি লোকেশন দেখবে কিন্তু নতুন লোকেশন যোগ বা মুছবে না।
এভাবে সব রিলেভেন্ট পারমিশনস সিলেক্ট করুন। তারপর সেভ ক্লিক করুন।
গ্রুপ ২: ফিল্ড অপারেশনস
পারমিশনস:
dcim | device | Can view device
dcim | device | Can add device (নতুন এক্সেস সুইচ ইনস্টল করার পরে যোগ করবে)
dcim | device | Can change device (কমেন্টস আপডেট করবে)
dcim | cable | Can view cable
dcim | cable | Can add cable
dcim | cable | Can change cable
dcim | interface | Can view interface
dcim | interface | Can change interface (পোর্ট এনেবল/ডিসেবল করবে)
ipam | ip address | Can view IP address
লক্ষ্য করুন - আইপি অ্যাড্রেস শুধু ভিউ, অ্যাড/চেঞ্জ না। ফিল্ড টিম আইপি এলোকেশন করবে না, এনওসি করবে।
সেভ করুন।
গ্রুপ ৩: ম্যানেজমেন্ট
পারমিশনস:
সব জায়গায় শুধু **ক্যান ভিউ ** সিলেক্ট করুন। কোনো অ্যাড/চেঞ্জ/ডিলিট না।
dcim | device | Can view device
dcim | cable | Can view cable
dcim | interface | Can view interface
dcim | rack | Can view rack
ipam | ip address | Can view IP address
ipam | prefix | Can view prefix
ipam | vlan | Can view vlan
circuits | circuit | Can view circuit
circuits | provider | Can view provider
Organization | location | Can view location
সেভ করুন।
নতুন ইউজার তৈরি করা¶
এখন অ্যাকচুয়াল ইউজারস তৈরি করি।
Django Admin প্যানেলে ইউজারস এ যান। + অ্যাড ইউজার ক্লিক করুন।
ইউজার: আসিফ (এনওসি টিম)
সেভ অ্যান্ড কন্টিনিউ এডিটিং ক্লিক করুন।
এখন আরো ফিল্ড দেখাবে:
Personal Info:
First name: Asif
Last name: Rahman
Email address: asif@nirvor.bd
Permissions:
Active: ☑ (চেক করুন - না হলে লগইন করতে পারবে না)
Staff status: ☑ (চেক করুন - এটা থাকলে নটোবট অ্যাডমিন প্যানেলে অ্যাক্সেস পাবে)
Superuser status: ☐ (আনচেক - সুপারইউজার শুধু আপনি থাকবেন)
Groups:
NOC Team (এখানে সিলেক্ট করুন)
গ্রুপস সেকশনে অ্যাভেইলেবল গ্রুপস থেকে "এনওসি টিম" সিলেক্ট করে ডান দিকে মুভ করুন।
সেভ ক্লিক করুন।
একইভাবে আরো দুজন:
করিম (ফিল্ড অপারেশনস):
Username: karim
First name: Karim
Last name: Uddin
Email: karim@nirvor.bd
Active: ☑
Staff status: ☑
Groups: Field Operations
রফিক সাহেব (ম্যানেজমেন্ট):
Username: rafiq
First name: Rafiq
Last name: Ahmed
Email: rafiq@nirvor.bd
Active: ☑
Staff status: ☑
Groups: Management
পারমিশনস টেস্ট করা¶
এখন লগআউট করুন অ্যাডমিন থেকে। আসিফ দিয়ে লগইন করুন:
লগইন করার পরে নটোবট হোম পেজে আসবেন।
Devices → Devices লিস্টে যান।
একটা ডিভাইস ক্লিক করুন - দেখতে পারছেন।
এডিট বাটন আছে - ক্লিক করুন, এডিট করতে পারছেন।
কিন্তু ডিলিট বাটন নেই! Permission নেই বলে।
অর্গানাইজেশন → লোকেশনস যান।
লিস্ট দেখতে পারছেন। কিন্তু + অ্যাড বাটন নেই। নতুন লোকেশন যোগ করতে পারবেন না।
পারফেক্ট! পারমিশন কাজ করছে।
এখন লগআউট করুন। rafiq দিয়ে লগইন করুন (ম্যানেজমেন্ট গ্রুপ):
লগইন করার পরে:
Devices → Devices - লিস্ট দেখতে পারছেন।
কিন্তু কোথাও এডিট, ডিলিট, + অ্যাড কোনো বাটন নেই!
সম্পূর্ণ রিড-অনলি। রফিক সাহেব শুধু রিপোর্ট দেখতে পারবেন, ভুল করে কিছু চেঞ্জ করতে পারবেন না।
চমৎকার!
নির্ভর কমিউনিকেশন এখন নটবটকে তাদের নিজস্ব প্রয়োজন অনুযায়ী সাজিয়ে ফেলেছে। আসিফের ওয়ারেন্টি ট্র্যাকিং সমস্যা solve হয়েছে। করিম এখন সহজেই বিল্ডিং নাম দিয়ে সুইচ খুঁজে পায়। রফিক সাহেব নিরাপদে রিপোর্ট দেখতে পারেন ভুলে কিছু চেঞ্জ হওয়ার ভয় ছাড়া।
পরের চ্যাপ্টারে আমরা দেখব কীভাবে ৫ হাজার কাস্টমার থেকে ৫০ হাজার কাস্টমারে স্কেল করা যায়, কী কী চ্যালেঞ্জ আসে, এবং কীভাবে নটোবট সেই জার্নিতে সাহায্য করে।