ব্যবহার নির্দেশিকা
এই প্ল্যাটফর্ম যা যা করে, সব বুঝিয়ে বলা
নিচের প্রতিটি সূত্র চলমান কোড থেকে নেওয়া। এখানে কোনো সংখ্যা আন্দাজে লেখা নয়।
20 মিনিটের পড়া
খুঁজতে / চাপুন
অংশ 1
এই প্ল্যাটফর্ম কী
একটি ক্লাবের pedigree, রেস ফলাফল ও certificate।
এটি একটি রেসিং পায়রা ক্লাবের রেকর্ড বই। এখানে আপনি নিজের পাখি রাখেন: তাদের ring number, বাবা-মা, ঝুড়িতে তারা কী করেছে, আর পশুচিকিৎসক কী করেছেন। বাবা-মায়ের সংযোগ থেকে প্ল্যাটফর্ম নিজেই বংশতালিকা বানায়, বের করে কোন পাখি সবচেয়ে ভালো বাচ্চা দেয়, আর এমন certificate ছাপে যা ক্রেতা QR স্ক্যান করে যাচাই করতে পারেন।
| সুবিধা | অতিথি | সদস্য | অ্যাডমিন |
|---|---|---|---|
| এই নির্দেশিকা পড়া | অতিথি: এই নির্দেশিকা পড়া | সদস্য: এই নির্দেশিকা পড়া | অ্যাডমিন: এই নির্দেশিকা পড়া |
| QR স্ক্যান করে certificate যাচাই করা | অতিথি: QR স্ক্যান করে certificate যাচাই করা | সদস্য: QR স্ক্যান করে certificate যাচাই করা | অ্যাডমিন: QR স্ক্যান করে certificate যাচাই করা |
| শেয়ার করা pedigree লিংক খোলা | অতিথি: শেয়ার করা pedigree লিংক খোলা | সদস্য: শেয়ার করা pedigree লিংক খোলা | অ্যাডমিন: শেয়ার করা pedigree লিংক খোলা |
| অ্যাকাউন্ট খোলা | অতিথি: অ্যাকাউন্ট খোলা | ||
| নিজের পায়রা যোগ ও সম্পাদনা করা | সদস্য: নিজের পায়রা যোগ ও সম্পাদনা করা | অ্যাডমিন: নিজের পায়রা যোগ ও সম্পাদনা করা | |
| নিজের পাখির রেস ফলাফল লেখা | সদস্য: নিজের পাখির রেস ফলাফল লেখা | অ্যাডমিন: নিজের পাখির রেস ফলাফল লেখা | |
| নিজের স্কোর ও র্যাংকিং দেখা | সদস্য: নিজের স্কোর ও র্যাংকিং দেখা | অ্যাডমিন: নিজের স্কোর ও র্যাংকিং দেখা | |
| Certificate বানানো ও শেয়ার লিংক তৈরি | সদস্য: Certificate বানানো ও শেয়ার লিংক তৈরি | অ্যাডমিন: Certificate বানানো ও শেয়ার লিংক তৈরি | |
| সদস্যপদের আবেদন অনুমোদন বা বাতিল করা | অ্যাডমিন: সদস্যপদের আবেদন অনুমোদন বা বাতিল করা | ||
| ক্লাবের ব্র্যান্ডিং ও সেটিংস বদলানো | অ্যাডমিন: ক্লাবের ব্র্যান্ডিং ও সেটিংস বদলানো |
অংশ 2
শুরু করা
নিবন্ধন করুন, অনুমোদনের অপেক্ষা করুন, প্রথম পাখি যোগ করুন।
পাঁচটি ধাপ, যার মাত্র একটি অন্য কারো উপর নির্ভর করে।
অ্যাকাউন্ট খুলুন
ইমেইল ও পাসওয়ার্ড, অথবা Continue with Google।
আপনি এখন pending
সাইন ইন করে ঘুরে দেখতে পারবেন, কিন্তু এখনো কিছু সংরক্ষণ করা যাবে না।
অ্যাডমিন অনুমোদন দেন
ক্লাব অ্যাডমিন Members পাতা থেকে আবেদনটি দেখেন।
আপনার loft তৈরি হয়
অনুমোদনের সাথে সাথেই, স্বয়ংক্রিয়ভাবে। Settings-এ গিয়ে নাম ও বিবরণ দিন।
প্রথম পাখি যোগ করুন
শুরু করতে সত্যিই শুধু একটি ring number লাগে। বাকি সব পরে যোগ করা যায়।
অংশ 3
আপনার loft
আপনার পাখি আপনারই। এক loft থেকে আরেক loft-এ কিছু যায় না।
আপনি যা কিছু তৈরি করেন সবই আপনার loft-এর, আর সেটি ঠিক হয় আপনার লগইন থেকে — পর্দায় বেছে নেওয়া কিছু থেকে নয়। অ্যাপের কোথাও loft বাছাইয়ের ব্যবস্থা পাবেন না, কারণ বেছে নেওয়ার কিছু নেই।
- অন্য সদস্য আপনার পাখি দেখতে, খুঁজতে বা খুলতে পারেন না — অন্য loft-এর রেকর্ড এমনভাবে দেখায় যেন সেটি নেই-ই।
- Ring number আপনার loft-এর ভেতরে অনন্য, পুরো ক্লাবজুড়ে নয়। দুজন সদস্যের কাছে একই নম্বর থাকা স্বাভাবিক।
- বাবা বা মা আপনার নিজের loft-এই থাকতে হবে। সে কারণেই অন্যের কাগজের certificate থেকে আসা পাখি ধার না করে ancestor হিসেবে লিখে নিতে হয়।
- ইচ্ছে করে যেটি আপনি বাইরে দেন তা হলো share লিংক, আর সেটি যেকোনো সময় বাতিল করতে পারেন।
অংশ 4
পায়রা যোগ করা — প্রতিটি ফিল্ডের ব্যাখ্যা
ডেটা অভিধান, আর কোন ফিল্ড কোন স্কোরে যায়।
একটি পায়রার রেকর্ডে বিশটি ফিল্ড আছে, যার মাত্র একটি বাদ দেওয়া যায় না। নিচের টেবিলটিই পুরো রেকর্ড: কোন ফিল্ড কী কাজে লাগে, আর — যে কলামের জন্য বেশিরভাগ মানুষ এখানে আসেন — সেটি অ্যাপের অন্য কোথাও কোনো সংখ্যা বদলায় কি না।
Ring number হলো পাখির পরিচয়পত্র। Race sheet এর সাথেই মেলানো হয়, ক্রেতা এটি দিয়েই certificate যাচাই করেন, আর QR পাতাও এটিই প্রমাণ করে।
একটি ফিল্ড আলাদা অনুচ্ছেদের দাবি রাখে। চার প্রজন্মের গাছ বানাতে হলে এমন চৌদ্দটি পাখি লিখতে হয় যেগুলো আপনার কখনো ছিল না। সেগুলো যদি আপনার পায়রার তালিকায় ঢোকে, তাহলে চল্লিশটি আসল পাখির loft তিনশো রেকর্ড হয়ে দাঁড়ায়। তাই আপনি যে পাখি রাখেন সেটি loft bird, আর যে পাখি শুধু গাছে আছে সেটি ancestor — নিয়ম এক, গাছ এক, শুধু আপনার তালিকা ও গণনার বাইরে। এক ক্লিকেই যেকোনো সময় একটিকে অন্যটি করা যায়।
অংশ 5
বাবা-মা যুক্ত করা ও বংশতালিকা
Sire, dam, আর গাছ কীভাবে নিজে থেকেই তৈরি হয়।
আপনি কখনো গাছ আঁকেন না। আপনি শুধু প্রতিটি পাখির বাবা ও মা কে, তা বলে দেন — সেই সংযোগগুলো উপরের দিকে পড়লে যা দেখায়, তাই গাছ।
- Sire অবশ্যই নর, dam অবশ্যই মাদি। উল্টো দিলে সেটি চুপচাপ ঠিক না করে বাতিল করা হয়।
- যে পাখির sex এখনো U, সে বাবা বা মা হতে পারে না এবং কোনো তালিকাতেই আসে না। আগে তার sex ঠিক করুন।
- বাবা বা মা আপনার নিজের loft-এ থাকতে হবে। না থাকলে তালিকার ভেতর থেকেই ancestor হিসেবে যোগ করুন।
- কোনো পায়রা নিজের পূর্বপুরুষ হতে পারে না। তালিকা থেকে পাখির নিজের বংশধরদের লুকিয়ে রাখা হয়, আর সংরক্ষণের আগে সার্ভার আবার পুরো শিকল পরীক্ষা করে।
যে পাখি কারো বাবা বা মা, তাকে মুছে ফেলা যায় না — কারণ তাতে বাচ্চাদের গাছে ফাঁক পড়বে। বদলে status deceased বা sold করে দিন — রেকর্ড থাকে, গাছ থাকে, আর পাখিটি আপনার সক্রিয় তালিকা থেকে সরে যায়।
অংশ 6
AI pedigree স্ক্যানার
কাগজের কার্ডের ছবি তুলুন; সব মিলিয়ে দেখুন; তারপর import করুন।
কাগজের pedigree certificate-এর ছবি তুলুন — প্ল্যাটফর্ম তার লেখা পড়ে, কোনটি কোন পাখি বুঝে নেয়, আর মিলিয়ে দেখার জন্য একটি টেবিল দেয়। এটি টাইপ করার শর্টকাট, ভবিষ্যদ্বাণী নয়।
স্ক্যানের পাঁচটি স্ট্যাটাস
| স্ট্যাটাস | এর মানে কী |
|---|---|
| আপলোড হয়েছেuploaded | ছবিটি সার্ভারে পৌঁছেছে। এখনো কিছু পড়া হয়নি। |
| লেখা পড়া হচ্ছেocr | OCR কার্ড থেকে লেখা তুলে আনছে। |
| কার্ড বোঝা হচ্ছেparsing | AI ওই লেখাকে পাখি, বাবা-মা ও ring number-এ রূপ দিচ্ছে। |
| পর্যালোচনার জন্য প্রস্তুতready | Import করার আগে স্ক্যানটি খুলে প্রতিটি ফিল্ড মিলিয়ে নিন। |
| ব্যর্থfailed | স্ক্যানে কারণটি পড়ুন, তারপর অন্য ছবি দিন বা হাতে লিখুন। ব্যর্থ স্ক্যান কোনো error page নয় — এটি একটি স্বাভাবিক উত্তর। |
আপনার loft-এ আগে থেকেই থাকা ring number নতুন করে না বানিয়ে পুরোনোটির সাথেই যুক্ত হয়, তাই একই দাদাওয়ালা দ্বিতীয় কার্ড স্ক্যান করলে দুটি দাদা তৈরি হয় না।
অংশ 7
স্প্রেডশিট থেকে একসাথে import
একটি CSV, দুই ধাপ, আর কী কী ব্যর্থ হলো তার রিপোর্ট।
আপনার loft যদি আগে থেকেই কোনো স্প্রেডশিটে থাকে, সেটি CSV হিসেবে রপ্তানি করে আপলোড করুন। শুধু একটি কলাম আবশ্যক — এক ফাইলে সর্বোচ্চ পাঁচ হাজার সারি।
CSV কলাম
| কলাম | এর মানে কী |
|---|---|
| আবশ্যকringNumber | পাখির ring। এটি ছাড়া সারি বাদ পড়ে এবং রিপোর্টে আসে। |
| ঐচ্ছিকname | পাখির ডাকনাম। |
| ঐচ্ছিকsex | M, F বা U। অন্য যা কিছু, এমনকি ফাঁকা, সব U হয়ে যায়। |
| ঐচ্ছিকbirthYear | পূর্ণ সাল, যেমন 2020। |
| ঐচ্ছিকbreed | মুক্ত লেখা। |
| ঐচ্ছিকcolor | মুক্ত লেখা। |
| ঐচ্ছিকsireRingNumber | বাবার ring। দ্বিতীয় ধাপে যুক্ত হয়, তাই ফাইলের যেকোনো জায়গায় থাকতে পারে। |
| ঐচ্ছিকdamRingNumber | মায়ের ring। একই দুই-ধাপ নিয়ম। |
ফাইলটি দুবার পড়া হয়। প্রথম ধাপে বাবা-মা ছাড়াই সব পাখি তৈরি হয়; দ্বিতীয় ধাপে ring number দেখে sire ও dam যুক্ত করা হয়। সে কারণেই ফাইলে বাচ্চা তার বাবার উপরে থাকলেও সংযোগ ঠিকঠাক হয় — ক্রম কোনো ব্যাপার নয়।
অংশ 8
রেস ফলাফল
কী লিখবেন, আর কেন totalBirds-ই আসল ফিল্ড।
একটি ফলাফল মানে এক রেসে একটি পাখি। পাখির নিজের পাতা থেকে একটি একটি করে যোগ করতে পারেন, অথবা ক্লাবের race sheet আপলোড করে দিলে প্রতিটি সারি ring number দেখে নিজের পাখি খুঁজে নেবে।
Race sheet শুধু আপনার loft bird-দের ring number-এর সাথে মেলানো হয়। শুধু pedigree-র জন্য লেখা ancestor আপনার হয়ে ওড়েনি, তাই সে বিবেচনায় আসে না — তবে আপলোড করা ring যদি আপনার কোনো ancestor-এর হয়, প্ল্যাটফর্ম সেটি জানিয়ে দেয় এবং তখনই পাখিটিকে loft-এ আনার সুযোগ দেয়।
অংশ 9 · কীভাবে হিসাব হয়
রেস স্কোর ও Producer র্যাংকিং
একটি ফলাফলের মূল্য কত, আর কোন পাখি সেরা বাচ্চা দেয়।
একে কখনো কখনো "সেরা পায়রা" র্যাংকিং বলা হয় — প্ল্যাটফর্ম আসলে কী মাপে, তা এখানে।
যে পাখি বেশি পাখিকে হারায়, তার স্কোর বেশি। ২,০০০-এর মধ্যে ৫ম হওয়া ৫০-এর মধ্যে ৫ম হওয়ার চেয়ে অনেক বেশি মূল্যবান, আর একই মাঠে club রেসের চেয়ে national বেশি মূল্যবান। এই দুটো ভাবনাই পুরো মডেল। নিচে যা আছে তা এগুলোরই বিস্তারিত রূপ — এতটাই স্পষ্ট করে লেখা যে আপনি নিজের হিসাবের সাথে প্ল্যাটফর্মের হিসাব মিলিয়ে নিতে পারবেন।
একটি রেস ফলাফলের মূল্য
score = max(0, 1 − position / totalBirds) × categoryWeightধ্রুবকগুলো
- club ×1
- regional ×1.5
- national ×2.5
- international ×3
- position
- আপনার পাখির অবস্থান
- totalBirds
- ওই রেসে মোট কত পাখি ছিল
- categoryWeight
- নিচের category ওজন
১,৯৯৫টি পাখিকে হারানো ৪৫টিকে হারানোর চেয়ে কঠিন — স্কোর সেটাই বলে।
উৎস: server/src/modules/performance/scoring.service.ts:72-77
দুটি পঞ্চম স্থান, যাদের মূল্য এক নয়
দুটো পাখিই ৫ম হয়েছে। একটি national-এ ১,৯৯৫টি পাখিকে হারিয়েছে, অন্যটি club রেসে ৪৫টিকে।
ধাপ 1
পাখি A — ২,০০০-এর মধ্যে ৫ম, national
1 − 5/2000 = 0.9975ফলাফল:0.9975 × 2.5 = 2.49375ধাপ 2
পাখি B — ৫০-এর মধ্যে ৫ম, club
1 − 5/50 = 0.9ফলাফল:0.9 × 1.0 = 0.9
পাখি A-র একটি ফলাফল পাখি B-র প্রায় তিন গুণ — এর বেশিরভাগ এসেছে মাঠের আকার থেকে, বাকিটা national ওজন থেকে।
একটি পাখির স্কোর
birdScore = mean( score(r) ) for every SCORABLE result r
races = every result, scorable or not
unscored = results with no usable totalBirdsধ্রুবকগুলো
- MIN_RACES_FOR_CONFIDENCE 3
- TOP_FRACTION 0.1
- mean
- স্কোরযোগ্য ফলাফলের গড় — কখনো যোগফল নয়
- scorable
- যে ফলাফলে position ও totalBirds দুটোই আছে
যোগফল হলে loft-এর সবচেয়ে বয়স্ক পাখিই প্রতিবার জিতত — সেটা মাপে কত দিন উড়েছে, কত ভালো উড়েছে তা নয়।
উৎস: server/src/modules/performance/scoring.service.ts:115-143
একটি producer-এর স্কোর
producerScore = mean( birdScore(c) ) for every RACED child c
ranked = racedChildren ≥ 2
confident = total scored races ≥ 3ধ্রুবকগুলো
- MIN_RACED_OFFSPRING 2
- MIN_RACES_FOR_CONFIDENCE 3
- ELITE_SCORE 1.4
- STRONG_SCORE 0.8
- RACED child
- শুধু যেসব বাচ্চা সত্যিই রেস করেছে
- ranked
- র্যাংকে ঢুকতেই কমপক্ষে 2টি রেস-করা বাচ্চা লাগে
- confident
- পুরো দলের নিচে কমপক্ষে 3টি স্কোরযোগ্য রেস লাগে
একজন producer-কে বিচার করা হয় তার বাচ্চারা ঝুড়িতে কী করে তা দিয়ে, নিজে কী করেছিল তা দিয়ে নয়।
উৎস: server/src/modules/performance/scoring.service.ts:186-210
তিনটি বাচ্চাসহ একটি stock cock
তার দুটি বাচ্চা রেস করেছে। তৃতীয়টি এখনো অল্পবয়সী, মাঠে নামেনি।
ধাপ 1
বাচ্চা ১ — ১০০-এর মধ্যে ১০ম, ২০তম ও ৩০তম, club
(0.90 + 0.80 + 0.70) / 3ফলাফল:0.80ধাপ 2
বাচ্চা ২ — একই তিনটি ফলাফল
(0.90 + 0.80 + 0.70) / 3ফলাফল:0.80ধাপ 3
বাচ্চা ৩ — কখনো রেস করেনি
গড়ে ধরা হয় না — unproven হিসেবে গোনা হয়ফলাফল:—ধাপ 4
Producer স্কোর
(0.80 + 0.80) / 2 — দুটি রেস-করা বাচ্চা, তিনটি নয়ফলাফল:0.80 · ranked · strong
রেস না-করা বাচ্চাটিকে শূন্য ধরে গড় করলে স্কোর হতো 0.53 — এই বছর বাচ্চা তোলার অপরাধে পাখিটি একটি পুরো স্তর নেমে যেত।
পাঁচটি স্তর
| স্তর | পাখিটি সম্পর্কে এটি যা বলে |
|---|---|
| Eliteelite | স্কোর 1.4 বা তার বেশি, যথেষ্ট রেসের ভিত্তিতে। |
| Strongstrong | স্কোর 0.8 বা তার বেশি। ধারাবাহিক ভালো ফল। |
| Averageaverage | বিচার করার মতো যথেষ্ট রেস করেছে; মাঝারি। |
| Provisionalprovisional | ৩টির কম স্কোরযোগ্য রেস। স্কোর অনেক বদলাতে পারে — একে ইঙ্গিত ধরুন, রায় নয়। |
| Unracedunproven | কখনো রেস করেনি। এখনো স্কোর করার কিছু নেই। |
নিজে চেষ্টা করুন
রেস স্কোর ক্যালকুলেটর
সংখ্যাগুলো বদলে দেখুন আসল সূত্র কীভাবে চলে। সার্ভার ঠিক এই ধ্রুবকগুলোই ব্যবহার করে।
কী বদলালো: এখনো কিছু বদলায়নি।
অংশ 10 · কীভাবে হিসাব হয়
জোড়া মেলানো
ডিম আসার আগেই কোন দুটি পাখি একসাথে দেবেন।
আপনি যে জোড়াগুলো নিয়ে ভাবছেন, তাদের বেশিরভাগেরই কোনো বাচ্চা এখনো রেস করেনি — তাই স্কোর করার কিছু নেই। Stock loft-এর সামনে দাঁড়িয়ে আপনার আসল প্রশ্নের উত্তর দেয় এই মিল: এই দুটি পাখি নিজেরা যা করেছে, তার ভিত্তিতে তাদের আদৌ একসাথে দেওয়া উচিত কি না?
তিনটি বিষয় বিবেচনা করা হয়, আর এগুলো সেই তিনটিই যা একজন fancier এমনিতেই দেখেন: দুটো পাখিই কি একই দূরত্বে ভালো করে, চোখের রঙ কি আলাদা, আর বাবা-মায়ের নিজেদের ফলাফল কেমন। Form-এর ওজন সবচেয়ে বেশি, কারণ পুরো রেস রেকর্ড কেবল এটিরই ভিত্তি; চোখের ওজন সবচেয়ে কম, কারণ এটি মাপজোক নয়, প্রথা — আর প্ল্যাটফর্ম একে ঠিক সেভাবেই দেখে।
জোড়ার মিল
match = Σ( criterion × weight ) ÷ Σ( weight )
…over the criteria that ARE recorded
distance = agreement × strength weight 0.35
form = normalise(mean result) weight 0.45
eye = different ? 1 : 0 weight 0.2ধ্রুবকগুলো
- distance 0.35
- form 0.45
- eye 0.2
- FULL_MARK_SCORE 1.4
- STRONG_MATCH 0.72
- FAIR_MATCH 0.45
- distance
- দুটো পাখিই কি একই দূরত্বে ভালো করে?
- form
- বাবা-মায়ের নিজেদের ফলাফল কতটা ভালো?
- eye
- চোখের রঙ কি আলাদা? (বিপরীত eye sign পুরোনো নিয়ম)
- Σ( weight )
- যে শর্তের কোনো তথ্য নেই সেটি বাদ যায়, শূন্য ধরা হয় না
এটি producer স্কোরের চেয়ে আলাদা প্রশ্নের উত্তর দেয়: জোড়াটি আগে কী দিয়েছে তা নয়, বরং দুটো পাখি আদৌ একসাথে দেওয়া উচিত কি না।
উৎস: server/src/modules/performance/pair-match.service.ts:306-347
দূরত্বের ব্যান্ড
| ব্যান্ড | এর মানে কী |
|---|---|
| Sprintsprint | ২০০ km পর্যন্ত |
| Middlemiddle | ২০১ থেকে ৪০০ km |
| Longlong | ৪০১ থেকে ৬০০ km |
| Extremeextreme | ৬০০ km-এর বেশি |
যে জোড়ার চোখের রঙ লেখা নেই
দুটো পাখিই sprint দূরত্বে ভালো করে এবং দুজনেরই club রেকর্ড ভালো। কারো eyeColor লেখা নেই।
ধাপ 1
দূরত্ব — দুজনেরই সেরা sprint-এ
agreement 1.0 × strength 0.70ফলাফল:0.70 × ওজন 0.35ধাপ 2
Form — বাবা-মায়ের নিজেদের ফলাফল
গড় ফল স্কোর 0.98, 1.4-এর বিপরীতে normaliseফলাফল:0.70 × ওজন 0.45ধাপ 3
চোখ — কিছু লেখা নেই
ওজন 0.20 বাদ যায়, 0 ধরা হয় নাফলাফল:বাদধাপ 4
হরটাই বদলে যায়
(0.70×0.35 + 0.70×0.45) / (0.35 + 0.45)ফলাফল:0.70 — 0.80-এর মধ্যে, 1.00-এর মধ্যে নয়
চোখের রঙ না থাকায় জোড়াটি confident তকমা হারায়, স্কোর হারায় না। যে জোড়ার চোখের তথ্যই নেই, সে যেন সত্যিকারের বেমানান চোখওয়ালা জোড়ার নিচে না পড়ে।
জোড়া মিলের স্তর
| স্তর | পাখিটি সম্পর্কে এটি যা বলে |
|---|---|
| Strongstrong | 0.72 বা তার বেশি, বিশ্বাসযোগ্য পূর্ণ রেকর্ডের ভিত্তিতে। |
| Fairfair | 0.45 বা তার বেশি। বিবেচনার যোগ্য। |
| Weakweak | পূর্ণ রেকর্ডে 0.45-এর নিচে। শর্তগুলো সত্যিই মিলছে না। |
| Provisionalprovisional | কিছু একটা নেই — সাধারণত চোখের রঙ বা দূরত্বে যথেষ্ট রেস নেই। |
| মূল্যায়ন হয়নিunknown | কোনো পাখি সম্পর্কেই কিছু লেখা নেই। এটি কম স্কোর নয়; এটি স্কোরহীন। |
নিজে চেষ্টা করুন
জোড়া মিল ক্যালকুলেটর
একটি চোখের রঙ মুছে দিয়ে দেখুন হর কীভাবে বদলায় — এটাই renormalise নিয়মের কাজ।
কী বদলালো: এখনো কিছু বদলায়নি।
অংশ 11 · কীভাবে হিসাব হয়
ইন্সপেকশন রিপোর্ট
হাতে নিয়ে বারোটি সারি; দশটিতে ১০-এর মধ্যে নম্বর।
এটি সেই মূল্যায়ন যা পাখি হাতে নিয়ে করেন, হ্যান্ডলিং কার্ডের মতো সাজানো: সাধারণ (প্রথম দর্শন, পিঠ, পেশি, ভারসাম্য), ডানা, চোখ ও ভেন্টবোন। এই দশটি সারির প্রতিটিতে ১০-এর মধ্যে নম্বর — 9.25-এর মতো সিকি নম্বরও চলে — আর দশটি নম্বর যোগ করে ১০০-এর মধ্যে মোট। অর্ধেক পূরণ করা কার্ড আপনার দেওয়া সারিগুলো থেকে হিসাব হয়, তাই অর্ধেক থাকার জন্য শাস্তি পায় না।
বারোটি সারি
| বৈশিষ্ট্য | অংশ · কীভাবে নম্বর দেওয়া হয় |
|---|---|
| প্রথম দর্শনfirst_impression | সাধারণ · ১ থেকে ১০ নম্বর |
| পিঠback | সাধারণ · ১ থেকে ১০ নম্বর |
| পেশিmuscles | সাধারণ · ১ থেকে ১০ নম্বর |
| ভারসাম্যbalance | সাধারণ · ১ থেকে ১০ নম্বর |
| আকারsize | সাধারণ · ছোট, মাঝারি বা বড় — লেখা হয়, স্কোর হয় না |
| দৈর্ঘ্যlength | সাধারণ · ছোট, মাঝারি বা লম্বা — লেখা হয়, স্কোর হয় না |
| নমনীয়তাwing_flexibility | ডানা · ১ থেকে ১০ নম্বর |
| পালকের মানfeather_quality | ডানা · ১ থেকে ১০ নম্বর |
| কোমলতাfeather_softness | ডানা · ১ থেকে ১০ নম্বর |
| প্রজনন মানeye_breeding_value | চোখ · ১ থেকে ১০ নম্বর |
| দৃঢ়তাventbone_strength | ভেন্টবোন · ১ থেকে ১০ নম্বর |
| বন্ধ ভেন্টবোনventbone_closure | ভেন্টবোন · ১ থেকে ১০ নম্বর |
ইন্সপেকশন স্কোর
total = Σ( mark ) ÷ ( answered × 10 ) × 100 rounded to 2 places
…over MARKED rows only — a full card is just its ten marks added upধ্রুবকগুলো
- MIN_SCORED_TRAITS 5
- scoring traits 10
- excellent ≥ 90
- very_good ≥ 85
- good ≥ 80
- fair ≥ 70
- poor ≥ 0
- answered
- শুধু যে সারিগুলোতে আপনি আসলে নম্বর দিয়েছেন
- 10
- স্কেলের সর্বোচ্চ — প্রতিটি সারি ১০-এর মধ্যে
- gate
- 5টির কম সারিতে নম্বর থাকলে পুরোপুরি আটকে রাখা হয়
পূর্ণ কার্ডের মোট হলো শুধু দশটি নম্বরের যোগফল। আংশিক কার্ড আপনার দেওয়া সারিগুলো থেকে হিসাব করা হয়, খালি সারির জন্য শাস্তি পায় না — খালি সারিগুলো coverage হিসেবে জানানো হয়।
উৎস: server/src/modules/pigeon/inspection.service.ts
দশটি নম্বরের একটি পূর্ণ কার্ড
প্রথম দর্শন 9.5, পিঠ 9.25, পেশি 9.5, ভারসাম্য 9.25; ডানা 9.5, 9.5 ও 9.5; চোখ 9.5; ভেন্টবোন 9.5 ও 9.25। আকার ও দৈর্ঘ্য মাঝারি লেখা হয়েছে।
ধাপ 1
নম্বরগুলোর যোগফল
9.5 + 9.25 + 9.5 + 9.25 + 9.5 + 9.5 + 9.5 + 9.5 + 9.5 + 9.25ফলাফল:94.25ধাপ 2
কতর মধ্যে — শুধু নম্বর দেওয়া সারি
10 সারি × 10ফলাফল:100ধাপ 3
মোট
94.25 ÷ 100 × 100ফলাফল:94.25ধাপ 4
ব্যান্ড
94.25 ≥ 90ফলাফল:চমৎকার
আকার ও দৈর্ঘ্য যোগফলে কখনো ঢোকেনি। শুধু পাঁচটি সারিতে নম্বর থাকলে মোট হিসাব হতো ওই পাঁচটি থেকে — আর coverage বলত ১০-এর মধ্যে ৫।
গ্রেড ব্যান্ড
| গ্রেড | স্কোর কমপক্ষে |
|---|---|
| Excellentexcellent | ৯০ ও তার বেশি |
| Very goodvery_good | ৮৫ থেকে ৮৯.৭৫ |
| Goodgood | ৮০ থেকে ৮৪.৭৫ |
| Fairfair | ৭০ থেকে ৭৯.৭৫ |
| Poorpoor | ৭০-এর কম |
নিজে চেষ্টা করুন
ইন্সপেকশন মোট ক্যালকুলেটর
পাখি হাতে নিয়ে যেভাবে দিতেন সেভাবে নম্বরগুলো সরান, আর কয়টি সারিতে নম্বর দেওয়া হয়েছে তা বেছে নিন — নম্বরহীন সারি যোগফলের বাইরে থাকে।
কী বদলালো: এখনো কিছু বদলায়নি।
অংশ 12
Pedigree কার্ড — কী ছাপে, আর কী আপনি বদলান
প্রতিটি বাক্স নিজেই ভরে। কোথা থেকে, আর কোনটা আপনার হাতে — তাই এখানে।
কার্ডের বিন্যাস আপনাকে কখনো সাজাতে হয় না। এর প্রতিটি বাক্স আপনার আগে থেকেই রাখা তথ্য থেকে নিজেই ভরে — যে ring number আপনি লিখেছেন, যে বাবা-মা যুক্ত করেছেন, যে ফলাফল তুলেছেন। এই অংশটি পুরো পাতাটিই, অংশে অংশে: কোনটা নিজে থেকেই আসে, আর কোনটা বদলানোর ভার আপনার।
কার্ড নিজে থেকেই যা দিয়ে ভরে
| কার্ডের অংশ | নিজে থেকেই যা ছাপে |
|---|---|
| লেটারহেডheader | লেখা থাকে “Pedigree for pigeon”, তারপর মূল পাখির ring number। কার্ডটি ক্লাবের নয়, কাগজটির নাম বলে — ক্লাবের ছাপা প্রতিটি কার্ডেই একই ক্লাব থাকে, কিন্তু এই পাখিটি থাকে কেবল একটিতে। ক্লাবের লোগো পুরো পাতাজুড়ে খুব হালকা করে, জলছাপ হিসেবে, সবকিছুর পেছনে ছাপা হয়। |
| কলামের শিরোনামcolumnHeads | Subject · Parents · Grandparents · Great-Grandparents — বন্ধনীর উপরে রেখা টেনে, যতগুলো কলাম ছাপে ততগুলো শিরোনাম। তিন প্রজন্মে ছাঁটা গাছে তিনটি শিরোনামই ছাপে। |
| Loft প্যানেলloftPanel | প্রথম কলামের মাথায়: ফ্যান্সিয়ারের ছবি, loft-এর নাম, আর loft settings-এ আপনার লেখা সম্মাননার লাইনগুলো। কিছু না থাকলে কিছুই আঁকা হয় না — কোনো খালি ফ্রেম নয়, কোনো বিকল্প লেখা নয়, নিচের বাক্সগুলো বরং জায়গাটা পায়। |
| মূল পাখির বাক্সsubjectBox | যে পাখিকে নিয়ে কার্ড, তার নিজের ছবিসহ — loft প্যানেলের ঠিক নিচে। ছবি না থাকলে ফ্রেমটাই আঁকা হয় না, বাক্সটা শুধু ছোট হয়ে যায় — “ছবি নেই” লেখা খালি চৌকো পাঠককে পাখির কথা নয়, সফটওয়্যারের ঘাটতির কথা বলে। |
| পূর্বপুরুষের বাক্সancestorBoxes | দুই বাবা-মা, চার দাদা-দাদি আর আট প্রপিতামহ — প্রত্যেকটি ঐ পাখির নিজের রেকর্ড থেকে ভরে। ইনব্রিড গাছে যে পাখি দুইবার আসে সে দুটি বাক্স ভরে, আর প্রতিটি বাক্সে আলাদা করে লেখা যায়। কোন প্রজন্মে কী থাকে তা নিচের টেবিলে। |
| রেসের লাইনraceLines | প্রতিটি বাক্সে ঐ পাখির সেরা ফলাফলগুলো, সেরাটা আগে, কার্ডের নিজস্ব ধরনে — 3 CHOKORIYA 152KM 211P, আর দূরত্ব জানা না থাকলে সেটি বাদ যায়। ডিফল্টে বাক্সপ্রতি দুই লাইন। যে পাখি কখনো রেস করেনি তার কিছুই ছাপা হয় না, শূন্যও নয়। |
| ভাই-বোনের ফলাফলsiblings | শুধু মূল পাখির বাক্সে, আর থাকলে তবেই: সর্বোচ্চ চারটি শিরোনামসহ ব্লক — FULL BROTHER/SISTER, HALF BROTHER, HALF SISTER — প্রতিটিতে আত্মীয়ের ring number ও তার ফলাফল। সহোদররা আগে আসে। যে আত্মীয়ের কোনো ফলাফল নেই তাকে বাদ দেওয়া হয়, খালি শিরোনাম ছাপা হয় না। |
| ফুটারfooter | পাতার নিচে তিনটি অংশ: ব্রিডার ব্লক (loft-এর নাম, ক্লাব সদস্যপদ, ঠিকানা), স্বাক্ষর ও তার নিচের নাম, আর QR — তার নিচে যাচাই কোড এবং কোন ক্লাব কার্ডটি অনুমোদন করেছে সেই লাইন। স্বাক্ষরটি মালিকের — অর্থাৎ আপনার, loft settings থেকে — কারণ পাখি ও দাবি দুটোই ব্রিডারের। |
| নিচের পট্টিbottomBar | বাঁয়ে certificate নম্বর ও ইস্যুর তারিখ, ডানে প্ল্যাটফর্মের নাম আর যে ডোমেইনে স্ক্যান গিয়ে পৌঁছায় সেটি। যে কার্ড কখনো তৈরি হয়নি তার কোনো নম্বর নেই, তাই বানিয়ে না লিখে পট্টিতে একটি ড্যাশ ছাপে। |
একটি বাক্স উপর থেকে নিচে ঠিক সেই ক্রমে পড়া যায় যে ক্রমে একজন ফ্যান্সিয়ার খোঁজেন। ring number থাকে রেখা-টানা মাথায়, ডান কোণে ♂, ♀ বা ?। তার নিচে নীল রঙে strain · রং · সাল লাইন; তারপর পাখির নাম; তারপর রক্তধারার callout; তারপর নোট; তারপর ফলাফল। যে ফিল্ড আপনি কখনো ভরেননি সেটি ছাপেই না, বাক্সটা বরং ছোট হয় — কিছুই ফাঁপিয়ে ভরা হয় না, আর কোনো বাক্স নিজের অজানা কথা ঘোষণা করে না।
প্রতিটি বাক্সে ডিফল্টে কী থাকে
| বাক্স | কী থাকে, আর কতটা জায়গা |
|---|---|
| মূল পাখি — যাকে নিয়ে কার্ডsubject | প্রথম কলামে, loft প্যানেলের নিচে। তার ছবি, তারপর ring number-এর পাশে ♂, ♀ বা ?, নীল রঙে strain · রং · সাল লাইন, নাম, রক্তধারার callout, নোট, নিজের সেরা ফলাফল — আর কেবল এই বাক্সেই সর্বোচ্চ চারটি ব্লকে তার সহোদর ও সৎ ভাই-বোনের ফলাফল, নিজস্ব শিরোনামসহ। ছবিসহ প্রায় ত্রিশ লাইন আর ছবি ছাড়া প্রায় পঞ্চাশ লাইনের জায়গা, তাই মূল পাখির বাক্সে আপনার রাখা সবকিছু সাধারণত ধরে যায়। |
| Sire ও damparents | মূল পাখির মতোই সব ফিল্ড, কেবল দুটি বাদ: ছবি নেই, ভাই-বোনের ব্লকও নেই — অর্থাৎ ring number ও sex, strain · রং · সাল, নাম, callout, নোট, আর ঐ পাখির নিজের সেরা ফলাফল। কার্ডে কেবল এই দুটি বাক্সেই নাম-ফলক থাকে: উপরের রেখা ঘেঁষে ছোট করে SIRE বা DAM, যা বাছা হয় অবস্থান দেখে — তাই যে বাবা-মায়ের sex কখনো তোলা হয়নি, তাদের ক্ষেত্রেও এটি ঠিক থাকে। প্রতিটিতে প্রায় বিশ লাইনের জায়গা। |
| দাদা-দাদিgrandparents | একই ফিল্ডগুলোই, আরেকটু ছোট মাপে। কোনো ফলক নেই — এখান থেকে বাইরের দিকে বন্ধনীই বলে দেয় কোনটি কে, আর চৌদ্দটি বাক্সেই নাম বসানো মানে আসলে কিছুই আলাদা না করা। প্রায় দশ লাইনের জায়গা। |
| প্রপিতামহgreatGrandparents | সবচেয়ে বাইরের কলাম, আর এখানেই জায়গা ফুরায়: যত তথ্যই থাকুক, ছাপা হয় দুই লাইন। পরিচয় সবসময় ছাপে — ring number, sex, strain লাইন আর নাম — আর তার নিচের দুই লাইনে যা ধরে, আগে আপনার নোট। প্রপিতামহের ঘরে লম্বা নোট লিখলে তার রেসের লাইনটিই বাদ পড়ে। |
কার্ডের লেখা বদলানোর দুটি পথ আছে, আর এই পাতার আর সবকিছুর চেয়ে এই দুইয়ের পার্থক্যটাই বেশি জরুরি। রেকর্ড বদলানো — Pedigree ট্যাবে কোনো বাক্সে চাপ দেওয়া — পাখিটিকেই বদলায়: তার নিজের পাতায়, প্রতিটি তালিকায়, আর এরপর ছাপা প্রতিটি কার্ডে। খসড়া বানানো বদলায় কেবল ঐ একটি কার্ড: লেখা, কী লুকানো, রঙ। খসড়া কখনো একটি ফিল্ডও পায়রার রেকর্ডে ফিরিয়ে লেখে না — আর এজন্যই এই স্তরটি আছে: বিক্রির জন্য পাখি সাজাতে গিয়ে নিজের রেকর্ড বদলাতে হবে না।
কী বদলাতে পারেন, আর কোথায়
| যা বদলাতে পারেন | কোথায় — আর কীসে হাত পড়ে |
|---|---|
| পাখির নিজের তথ্যrecord | Pedigree ট্যাবে যেকোনো বাক্সে চাপ দিন — নাম, sex, সাল, রং, strain আর নোট। এটি রেকর্ড: বদলটি পাখির নিজের পাতায়, প্রতিটি তালিকায় আর এরপর ছাপা প্রতিটি কার্ডে দেখা যাবে। খালি বাক্সে চাপ দিলে সেটি সম্পাদনা নয়, ঐ পূর্বপুরুষকে যোগ করে। |
| গভীরতাgenerations | তিন বা চার প্রজন্ম — Pedigree ট্যাবে, certificate পাতায় আর খসড়ায়। কার্ডটি চার কলামের যন্ত্র, তাই বেশি চাইলে সেটি গ্রহণ করা হয় আর ছাপে চারটিই; আর তৈরি হওয়া certificate-এ যা লেখা থাকে তা ছাপা গভীরতা, চাওয়া গভীরতা নয়। |
| ছবিphotos | নিজ নিজ পাতা থেকে আপলোড হয়, খসড়ার ভেতরে কখনো নয়: পাখির ছবি তার নিজের পাতায়, ফ্যান্সিয়ারের ছবি ও আপনার স্বাক্ষর loft settings-এ, ক্লাবের লোগো admin settings-এ। এগুলো সরাসরি — একটি বদলালে এরপর ছাপা প্রতিটি কার্ডেই বদলে যায়। |
| বাক্সের লেখা বদলoverrides | খসড়ায়: নাম, সাল, রং ও strain, সাথে কেবল কাগজেই থাকা দুটি লেবেল — loft label আর breeder label। পূর্বপুরুষের ring number-ও বদলানো যায়; মূল পাখিরটি যায় না। বাক্স চেনা হয় গাছে তার অবস্থান দিয়ে, তাই একই পাখি দুই বাক্সে থাকলে প্রতিটিতে আলাদা লেখা যায়। |
| রক্তধারার calloutcallout | খসড়ায়: নামের নিচের এক লাইনের দাবি — G.GRANDSON WILLY, SON LUDU CLASSENS। এটি ক্লাবের অ্যাকসেন্ট রঙে ছাপে, আর এটি নোটের প্রথম বাক্য নয়, নিজেই একটি আলাদা লাইন। |
| রেসের লাইন ও শিরোনামraceBlocks | খসড়ায়। লাইনগুলো আপনার রাখা ফলাফল থেকেই আসে, আর সেই মুহূর্ত থেকেই মুক্ত লেখা: একটি লাইন বদলান, ক্রম পাল্টান, লুকান, সব মুছে দিন, কোনো একটিকে অ্যাকসেন্ট রঙে আলাদা করুন, কিংবা relatives তালিকা থেকে সৎ ভাইয়ের বা ছেলের ফলাফল টেনে এনে ব্লকটিকে নিজের শিরোনাম দিন। ছাপা লাইনের লেখা বদলালে তার নিচের race result-এ কখনো হাত পড়ে না। |
| বাক্সপ্রতি রেসের লাইনhighlights | খসড়ায়: শূন্য থেকে দশ, ডিফল্টে দুই। স্ন্যাপশটে বাক্সপ্রতি সবসময় দশটি লাইন তুলে রাখা হয়, তাই পরে সংখ্যা বাড়ালে ছাপার মতো ফলাফল ফুরিয়ে যায় না। |
| লুকানো ফিল্ডhiddenFields | খসড়ায়। লুকানো ফিল্ড বাক্সের বাকি লেখাকে উপরে টেনে না এনে ফাঁকা হয়ে ছাপে। Sex আর ছবি লুকানো যায়, কিন্তু বদলানো যায় না — এগুলো রেকর্ডের তথ্য, লেখা নয়। |
| লুকানো বাক্সhiddenNodes | খসড়ায়। একটি বাক্স লুকালে তার পুরো শাখাও যায় — ঐ পাখির বাবা-মা, দাদা-দাদিও আর ছাপে না। আবার দেখালে ভেতরের সব সম্পাদনা ঠিক আগের মতোই ফিরে আসে। মূল পাখির নিজের বাক্স লুকানো যায় না। |
| বাক্সের রঙboxStyles | খসড়ায়: গাছের যেকোনো বাক্স, আর পুরো প্রস্থজোড়া তিনটি পট্টি — লেটারহেড, ফুটার, নিচের পট্টি — প্যালেট থেকে রঙ নেয় বা আপনার নিজের hex মান নেয়। রিসেট করলে আবার সাদা। কার্ড ডিফল্টে সাদা কাগজ, গড়নটা ভরাট প্যানেল নয়, সরু রেখা দিয়ে আসে — কারণ ফটোকপিতে ওটাই টেকে। |
| কার্ডের হেডার ও ফুটারfurniture | খসড়ায়: প্যানেলের loft নাম ও সম্মাননার লাইন, আর ফুটারের loft নাম, ক্লাব সদস্যপদ, ঠিকানা ও ফোন। দুটোরই পুরোটা লুকানো যায়, আর লুকানো ফুটার সরাসরি তথ্যে ফিরে না গিয়ে কিছুই ছাপে না। দুটোই খসড়া বানানোর সময়ের একটি কপি, তাই ক্লাবের নতুন ব্র্যান্ডিং বা loft-এর নাম বদল আগে মিলিয়ে দেখা কার্ডকে আর লেখে না। |
অংশ 13
Certificate, QR ও শেয়ার
কার্ড সাজান, ছাপুন, আর ক্রেতাকে যাচাই করতে দিন।
Certificate হলো এক পাতার A4-তে চার প্রজন্মের pedigree, সাথে আপনার loft-এর তথ্য, স্বাক্ষর ও একটি QR কোড। এটি একটি স্ন্যাপশট হিসেবে তৈরি হয়: PDF ও ছবি ঠিক যে মুহূর্তে বানান সেই মুহূর্তেই তুলে রাখা হয়, তাই পরে কার্ডের নকশা বদলালেও কারো হাতে থাকা কার্ড বদলায় না।
আগে সাজান
কোনো বাক্সের লেখা বদলাতে, কোনো শাখা লুকাতে বা কোনো অংশে রঙ দিতে চাইলে একটি খসড়া বানান। এতে পাখির নিজের রেকর্ডে কোনো হাত পড়ে না।
তৈরি করুন
একবারেই একটি PDF ও একটি ছবি পাবেন, সাথে একটি QR কোড যা একটি পাবলিক পাতায় নিয়ে যায়।
হস্তান্তর করুন
ছাপুন, অথবা ছবিটি পাঠান। দুটোই ঠিক তাই দেখায় যা আপনি মিলিয়ে দেখেছেন।
ক্রেতা যাচাই করেন
QR স্ক্যান করলে লগইন ছাড়াই ওয়েবে একই কার্ড খোলে। তাঁরা যা দেখেন, তা তাঁদের হাতের কাগজের সাথে মেলে।
QR ঠিক একটি জিনিস প্রমাণ করে: এই ring number এই ক্লাবের খাতায় এই pedigree-সহ লেখা আছে। মূল পাখির ring number ও verify code কোনো কার্ডেই বদলানো বা লুকানো যায় না — যে certificate-এর ring number জাল করা যায়, তার কোনো মূল্য নেই।
অংশ 14
স্বাস্থ্য রেকর্ড
কী দিয়েছেন, কবে, আর কোন পাখিকে।
স্বাস্থ্য রেকর্ড পাখির সাথে যুক্ত থাকে, তাই পাখির পাতাতেই তার নিজের ইতিহাস দেখায়। পুরো loft-এর একটি তালিকাও আছে — রেসের আগের সপ্তাহে পুরো দল কী কী পেয়েছে দেখতে চাইলে সেটিই দরকার।
স্বাস্থ্য রেকর্ডের ধরন
| স্ট্যাটাস | এর মানে কী |
|---|---|
| টিকাvaccination | Paramyxo, paratyphoid ও প্রোগ্রামের বাকি টিকা। |
| চিকিৎসাtreatment | কিছু ধরা পড়ায় যে চিকিৎসা দেওয়া হলো। |
| পরীক্ষাcheckup | নিয়মিত পরীক্ষা বা পশুচিকিৎসকের কাছে নেওয়া। |
অংশ 15
ব্রিডিং জোড়া ও বাচ্চা
একটি জোড়া, তার ডিম, আর যা ফুটল তা নিবন্ধন করা।
একটি জোড়া লিখে রাখে কোন নর কোন মাদির সাথে গেছে, কোন মৌসুমে ও কোন রাউন্ডে। এর নিচে ডিমের হিসাব থাকে, আর কোনো ডিম ফুটলে আপনি বাচ্চাটি নিবন্ধন করেন — এতে একটি আসল পায়রা তৈরি হয়, বাবা-মা দুজনেই আগে থেকেই যুক্ত থাকে।
ব্রিডিং জোড়ার স্ট্যাটাস
| স্ট্যাটাস | এর মানে কী |
|---|---|
| জোড়া বাঁধাpaired | দুটি পাখি একসাথে আছে। এখনো ডিম নেই। |
| ডিম পাড়াeggs_laid | জোড়ার নামে ডিম লেখা হয়েছে। |
| ফুটেছেhatched | অন্তত একটি ডিম ফুটেছে। এখন বাচ্চা নিবন্ধন করা যাবে। |
| সম্পন্নcompleted | রাউন্ডটি শেষ ও বন্ধ। |
| ব্যর্থfailed | রাউন্ড থেকে কিছু হয়নি। |
প্রতিটি ফোটা ডিমে ঠিক একটি বাচ্চার জায়গা, তাই যে জোড়ার ডিমের হিসাব নেই তার কোনো জায়গাও নেই। নিবন্ধনের বোতাম না দেখলে বুঝবেন জোড়াটি এখনো hatched হয়নি, অথবা প্রতিটি ফোটা ডিমের বাচ্চা আগেই নিবন্ধিত।
অংশ 16
ক্লাব অ্যাডমিনদের জন্য
অনুমোদন, ব্র্যান্ডিং, আর অনুমোদন আসলে কী করে।
অ্যাডমিন হলেন এমন একজন সদস্য যাঁর বাড়তি দুটি কাজ: কে ঢুকবেন তা ঠিক করা, আর ক্লাবের ছাপা প্রতিটি certificate-এ ক্লাবের নাম ও ব্যাজ কেমন দেখাবে তা ঠিক করা।
- Members পাতা থেকে সদস্যপদের আবেদন অনুমোদন, বাতিল বা স্থগিত করুন। বাতিল করলে এমন একটি কারণ যায় যা সদস্য পড়তে পারেন।
- ক্লাবের নাম, অবস্থান, ব্যাজ আর certificate-এ তার নিচে যে লাইনগুলো ছাপা হয় সেগুলো ঠিক করুন।
- অ্যাডমিনও একজন সদস্য, তাঁর নিজের loft ও নিজের পাখি আছে। দুটি ভূমিকা একে অন্যের পথে আসে না।
- একজন অ্যাডমিন অন্য সদস্যের loft-এর ভেতরে দেখতে পারেন না। এই ভূমিকা ক্লাব পর্যায়ের settings দেয়, কারো রেকর্ডে ঢোকার অধিকার নয়।
অংশ 17
কিছু ভুল হলে
প্ল্যাটফর্ম যত ধরনের error দেখাতে পারে, সহজ ভাষায়।
প্ল্যাটফর্ম যত বার্তা দেখাতে পারে সবই এখানে আছে — মানে কী আর কী করতে হবে সহ। সংস্করণ বদলালেও code অংশটি বদলায় না, তাই খোঁজার সময় সেটিই কাজে লাগে।
| Code | HTTP | এর মানে কী | কী করবেন |
|---|---|---|---|
UNAUTHORIZED | 401 | আপনি সাইন ইন করা নেই। | আবার লগ ইন করুন। |
TOKEN_EXPIRED | 401 | ট্যাব খোলা থাকা অবস্থায় আপনার সেশন পুরোনো হয়ে গেছে। | কিছুই না — অ্যাপ নিজেই নবায়ন করে আবার চেষ্টা করে। পাতা আটকে থাকলে রিলোড করুন। |
REFRESH_TOKEN_INVALID | 401 | সেশন নবায়ন করা যায়নি। | আবার লগ ইন করুন। |
INVALID_CREDENTIALS | 401 | এই ইমেইল ও পাসওয়ার্ড মিলছে না। | দুটোই মিলিয়ে দেখুন। কোনটি ভুল, অ্যাপ ইচ্ছে করেই তা বলে না। |
EMAIL_EXISTS | 409 | এই ইমেইলে ইতিমধ্যে একটি অ্যাকাউন্ট আছে। | লগ ইন করুন, বা Forgot password ব্যবহার করুন। |
FORBIDDEN | 403 | আপনার ভূমিকায় এটি করা যায় না, অথবা রেকর্ডটি অন্য loft-এর। | আপনার মনে হলে এটি আপনারই, ক্লাব অ্যাডমিনের সাথে যোগাযোগ করুন। |
MEMBERSHIP_PENDING | 403 | আপনার অ্যাকাউন্ট আছে, কিন্তু অ্যাডমিন এখনো অনুমোদন দেননি। | অনুমোদনের ইমেইলের জন্য অপেক্ষা করুন। ততক্ষণ পড়তে পারবেন, লিখতে পারবেন না। |
MEMBERSHIP_REJECTED | 403 | আপনার সদস্যপদের আবেদন বাতিল হয়েছে। | কারণটি আপনার membership পাতায় আছে, সেখান থেকেই আবার আবেদন করতে পারেন। |
MEMBERSHIP_SUSPENDED | 403 | আপনার সদস্যপদ স্থগিত করা হয়েছে। | ক্লাব অ্যাডমিনের সাথে যোগাযোগ করুন। |
NOT_FOUND | 404 | এটি নেই — অথবা এটি অন্য সদস্যের। | লিংকটি মিলিয়ে দেখুন। প্ল্যাটফর্ম কখনো অন্য loft-এর রেকর্ড দেখায় না, তাই দুটো ক্ষেত্রই একরকম দেখায়। |
VALIDATION_ERROR | 400 | আপনার পাঠানো কোনো একটি ফিল্ড গ্রহণযোগ্য নয়। | বার্তাটি ফিল্ডের নাম বলে। সাধারণ কারণ: ভবিষ্যতের তারিখ, ১৮০০ থেকে বর্তমানের বাইরের জন্মসাল, বা totalBirds-এর চেয়ে বড় position। |
RING_NUMBER_EXISTS | 409 | আপনার loft-এ এই ring number-এর একটি পাখি আগেই আছে। | নতুন একটি যোগ না করে পুরোনো পাখিটি খুলুন। অনন্যতা প্রতি loft-এ — অন্য ক্লাবে একই নম্বর থাকতে পারে। |
SELF_ANCESTOR | 400 | আপনি যাকে বাবা/মা করতে চাইছেন, সে আগে থেকেই এই পাখির বংশধর। | কোনো পায়রা নিজের পূর্বপুরুষ হতে পারে না। কে কার, সেটি মিলিয়ে দেখুন। |
SEX_MISMATCH | 400 | বাবার জায়গায় মাদি, বা মায়ের জায়গায় নর দিয়েছেন। | Sire অবশ্যই M এবং dam অবশ্যই F হতে হবে। |
SEX_UNKNOWN_FOR_PARENT | 400 | আপনি যে পাখিটি বেছেছেন তার sex এখনো U। | ওই পাখিটি খুলে sex ঠিক করুন, তারপর যুক্ত করুন। |
PIGEON_HAS_DESCENDANTS | 409 | এই পাখিটি কারো বাবা/মা, তাই মুছলে বাচ্চাদের গাছ ভেঙে যাবে। | আগে বাচ্চাদের সংযোগ সরান, অথবা মুছে না দিয়ে deceased বা sold করে দিন। |
INVALID_SHARE_TOKEN | 404 | ওই পাবলিক লিংক বা ছাপা QR বাতিল করা হয়েছে। | মালিকের কাছে নতুন লিংক চান। শেয়ার বন্ধ করলে পুরোনো ছাপা কার্ড আর কাজ করে না। |
FILE_TOO_LARGE | 413 | ছবিটি সীমার চেয়ে বড়। | বেশিরভাগ ছবির জন্য 5 MB, চোখের ছবির জন্য 2 MB। |
UNSUPPORTED_FILE_TYPE | 415 | ফাইলটি JPG, PNG বা WebP নয়। | এই তিনটির যেকোনো একটিতে রূপান্তর করুন। ফাইলের ভেতরটাই পরীক্ষা হয়, তাই নাম বদলে লাভ নেই। |
SCAN_NOT_READY | 409 | স্ক্যান পড়া শেষ হওয়ার আগেই import করতে চেয়েছেন। | স্ট্যাটাস ready হওয়া পর্যন্ত অপেক্ষা করুন। পাতাটি নিজেই খোঁজ নিতে থাকে। |
SCAN_ALREADY_IMPORTED | 409 | এই স্ক্যানের পাখিগুলো আগেই আপনার loft-এ এসেছে। | দ্বিতীয়বার import না করে মূল পাখিটি খুলুন। |
EGG_ALREADY_REGISTERED | 409 | ওই ডিম থেকে আগেই একটি বাচ্চা নিবন্ধিত হয়েছে। | যে বাচ্চাটি আছে সেটি খুলুন। প্রতিটি ফোটা ডিমে ঠিক একটি বাচ্চার জায়গা। |
PAIR_NOT_HATCHED | 409 | জোড়াটি এখনো hatched বা completed হয়নি। | আগে একটি ডিম hatched করুন। অন্য সব স্ট্যাটাসে এই কাজটি লুকানো থাকে। |
OFFSPRING_LIMIT | 409 | এই জোড়ার প্রতিটি ফোটা ডিমের বিপরীতে আগেই বাচ্চা লেখা আছে। | আরেকটি ডিম hatched করুন। আবার চেষ্টা করে লাভ নেই। |
DRAFT_NOT_FOUND | 404 | ওই certificate draft নেই, বা অন্য loft-এর। | Drafts তালিকায় ফিরে গিয়ে সেখান থেকে খুলুন। |
CERT_FIELD_LOCKED | 400 | Certificate-এ যা বদলানো যায় না, তা লুকাতে বা বদলাতে চেয়েছেন। | মূল পাখির ring number ও verify code ইচ্ছে করেই তালাবদ্ধ — যে কার্ডের ring number বদলানো যায়, তার কোনো মূল্য নেই। |
IMPORT_PARSE_ERROR | 422 | ফাইলটি CSV হিসেবে পড়া যায়নি। | হেডার সারি, বিভাজক, আর ফাইলটি ৫,০০০ সারির কম কি না মিলিয়ে দেখুন। |
RATE_LIMITED | 429 | অল্প সময়ে অনেক বেশি অনুরোধ। | একটু অপেক্ষা করে আবার চেষ্টা করুন। ঘণ্টায় সর্বোচ্চ ৩০টি certificate ও ১০টি স্ক্যান আপলোড। |
DUPLICATE_RACE_RESULT | 409 | এই পাখির ওই রেস ও তারিখে আগেই একটি ফলাফল আছে। | যে ফলাফলটি আছে সেটি সম্পাদনা করুন। হাতে যোগ করা আটকে দেওয়া হয়; race sheet আবার আপলোড করলে সেটি বদলে যায়, কারণ সংশোধিত sheet দুবার পাঠানো স্বাভাবিক। |
INTERNAL_ERROR | 500 | সার্ভারে কিছু একটা ভেঙেছে। | আবার চেষ্টা করুন। বারবার হলে কী করছিলেন তা ক্লাব অ্যাডমিনকে জানান। |
অংশ 18
শব্দকোষ
এই অ্যাপ যে শব্দগুলো ব্যবহার করে, দুই ভাষায়।
এর কিছু শব্দ বাংলা বাক্যের ভেতরেও ইংরেজিই থাকে, কারণ ক্লাবঘরে fancier-রা সেভাবেই বলেন। দুটি কলামই রাখা হয়েছে, যাতে যে অভ্যাসই হোক পড়তে অসুবিধা না হয়।
- Ring numberরিং নম্বরইংরেজি / বাংলা
- পাখির পরিচয় নম্বর, তার রিং-এ ছাপা।
- Loftলফটইংরেজি / বাংলা
- আপনার সব পাখি ও রেকর্ড মিলিয়ে।
- Pedigreeবংশতালিকাইংরেজি / বাংলা
- বংশের গাছ, ছাপা কার্ডে চার প্রজন্ম।
- Sireবাবা পায়রাইংরেজি / বাংলা
- বাবা। অবশ্যই নর হতে হবে।
- Damমা পায়রাইংরেজি / বাংলা
- মা। অবশ্যই মাদি হতে হবে।
- Cockনরইংরেজি / বাংলা
- পুরুষ পাখি — sex M।
- Henমাদিইংরেজি / বাংলা
- স্ত্রী পাখি — sex F।
- Strainরক্তধারাইংরেজি / বাংলা
- পাখিটি যে রক্তধারা থেকে এসেছে।
- Eye signচোখের চিহ্নইংরেজি / বাংলা
- চোখের রঙ ও নকশা, হাতে দেখে বিচার করা।
- Velocityগতিইংরেজি / বাংলা
- মিটার প্রতি মিনিট — পাখি কত দ্রুত ঘরে ফিরেছে।
- Basketঝুড়িইংরেজি / বাংলা
- পাখিকে রেসে পাঠানো — "basketed" মানে অংশ নিয়েছে।
- Clutchএক দফার ডিমইংরেজি / বাংলা
- একটি জোড়া এক রাউন্ডে যত ডিম পাড়ে।
- Roundরাউন্ডইংরেজি / বাংলা
- মৌসুমের কত নম্বর দফা — প্রথম, দ্বিতীয়, তৃতীয়।
- Ancestor recordশুধু গাছের পাখিইংরেজি / বাংলা
- যে পাখি শুধু pedigree-তে আছে, আপনার loft-এ নেই।
- Loft birdনিজের পাখিইংরেজি / বাংলা
- যে পাখি আপনি সত্যিই রাখেন। "N পায়রা" বলতে এদেরই বোঝায়।
- Producerবাচ্চাদাতা পাখিইংরেজি / বাংলা
- যে পাখিকে তার নিজের নয়, বাচ্চাদের ফলাফল দিয়ে বিচার করা হয়।
- Share linkশেয়ার লিংকইংরেজি / বাংলা
- একটি পাখির pedigree-র পাবলিক ঠিকানা। বাতিলযোগ্য।
- Certificateসনদইংরেজি / বাংলা
- QR কোডসহ ছাপার উপযোগী A4 pedigree কার্ড।
অংশ 19
সাধারণ প্রশ্ন
প্রথম সপ্তাহে সদস্যরা যে দশটি প্রশ্ন করেন।
নিবন্ধন করেছি, কিন্তু পাখি যোগ করতে পারছি না।
আপনার অ্যাকাউন্ট এখনো pending। ক্লাব অ্যাডমিনকে অনুমোদন দিতে হবে, আর ঠিক তখনই আপনার loft তৈরি হয়। ততক্ষণ সাইন ইন করে পড়তে পারবেন, তবে সংরক্ষণের বোতামগুলো লুকানো থাকবে।
Breeder-দের কি কোনো star রেটিং আছে?
না। এই সংস্করণে কোনো ধরনের সদস্য রেটিং নেই — star নেই, clubScore নেই, কোনো ব্যক্তির raceScore নেই। এর জায়গা নিয়েছে Producer তালিকা, যা পাখিদের বাচ্চারা ঝুড়িতে কী করে তা দিয়ে র্যাংক করে। পুরোনো কোনো API নথিতে breeder rating-এর কথা পড়ে থাকলে জেনে রাখুন, ওই অংশটি বাদ দেওয়া হয়েছে।
Ring number-এ দাগ বা ফাঁক কীভাবে দিচ্ছি, তাতে কি কিছু যায় আসে?
Race sheet মেলানোর ক্ষেত্রে যায় আসে না — NL 20-1739393, NL20.1739393 আর nl201739393 সবই একই পাখির সাথে মেলে। তবে আপনার নিজের তালিকার জন্য যায় আসে, কারণ পাখিটি ঠিক যেভাবে লিখেছেন সেভাবেই থাকে — তাই একটি ধরন বেছে সেটিতেই থাকুন।
আমার সেরা পাখির কোনো স্কোর নেই কেন?
তিনটি সম্ভাবনা। হয় সে কখনো রেস করেনি, তাই স্কোর করার কিছু নেই। অথবা তার রেস-করা বাচ্চা দুটির কম, তাই producer হিসেবে র্যাংকে নেই। অথবা তার ফলাফলে totalBirds নেই, যার ফলে সেগুলো কোনো গড়েই ঢোকে না। Producer পাতাটি বলে দেয় এর মধ্যে কোনটি।
এ বছরের অল্পবয়সী পাখিরা কি আমার stock cock-এর স্কোর নামিয়ে দেবে?
না। Producer-এর স্কোর শুধু তার রেস-করা বাচ্চাদের গড়। রেস না-করা বাচ্চারা unproven হিসেবে গোনা ও দেখানো হয়, কিন্তু গড়ে কখনো ঢোকে না — এ বছর বাচ্চা তোলার জন্য আপনার কোনো ক্ষতি হবে না।
১২তম স্থান কি top 10 ফলাফল?
সেটি পুরোপুরি মাঠের উপর নির্ভর করে। Top 10% মানে সেরা দশ শতাংশ, সেরা দশ স্থান নয়: ২০০-এর মধ্যে ১২তম গোনা হয়, ৬০-এর মধ্যে ১২তম হয় না।
যাকে বাবা করতে চাই সেই পাখিটি তালিকায় নেই।
প্রায় সবসময়ই তার sex এখনো U — অজানা sex-এর পাখি কখনো বাবা বা মা হতে পারে না। পাখিটি খুলে sex ঠিক করলেই তালিকায় আসবে। বাকি সম্ভাবনা দুটি: সে এই পাখিরই কোনো বংশধর, যাতে একটি চক্র তৈরি হতো; অথবা সে এখনো আপনার loft-এ নেই।
আমি কি ছয় প্রজন্ম ছাপতে পারি?
না, আর অ্যাপ ইচ্ছে করেই সেই সুযোগ দেয় না। কার্ডটি চার-কলামের: হাত-দূরত্ব থেকে পড়া যায় এমন আকারে A4 কাগজে চার প্রজন্মই ধরে। যে গভীরতা কার্ডে ছাপা যায় না, তার প্রতিশ্রুতি কাগজ রাখতে পারত না।
স্ক্যানার একটি ring number ভুল পড়েছে।
Import চাপার আগেই review টেবিলে ঠিক করে নিন — তার আগে আপনার loft-এ কিছুই লেখা হয় না। পার্সার যেগুলো নিয়ে নিশ্চিত ছিল না সেগুলো অ্যাম্বার রঙে চিহ্নিত, তবে নিশ্চিতগুলোও মিলিয়ে দেখুন; ওই চিহ্ন একটি ইঙ্গিত, নিশ্চয়তা নয়।
একটি পাখি বিক্রি করেছি, পুরোনো লিংকটি আর কাজ করুক চাই না।
ওই পায়রার শেয়ার বন্ধ করে দিন। পাবলিক পাতা ও আগে ছাপা যেকোনো QR সাথে সাথেই কাজ করা বন্ধ করে, আর পুরোনো লিংক খুললে পাখি না দেখিয়ে জানানো হয় লিংকটি বাতিল করা হয়েছে।