Platform
Domain Examples
Agriculture

Agriculture

ธุรกิจเกษตรมีความซับซ้อนที่ข้อมูลกระจายอยู่ใน 3 ส่วน: ไร่/สวน (IoT + แรงงาน), ตลาด (ราคา + คำสั่งซื้อ), และ supply chain (logistics + คุณภาพ) PBCP รวม events จากทั้ง 3 ส่วนไว้ใน Crop Story และ Farm Story เดียวกัน

Business problems solved

ปัญหาPBCP แก้อย่างไร
ไม่รู้ว่าแปลงนี้ผลผลิตดีหรือแย่กว่าปีที่แล้วCrop Story → yield history per plot per season
ดูแล sensor หลายร้อยตัวไม่ไหวIoT event stream → anomaly detection → alert
ราคาตลาดวันนี้เท่าไหร่ ควรขายหรือเก็บMarket Intelligence → ราคาเฉลี่ย + แนวโน้ม + recommend
ผลผลิตล็อตนี้ส่งไปที่ไหน คุณภาพผ่านไหมHarvest Story → traceability ตั้งแต่แปลงถึงผู้ซื้อ
เกษตรกรรายย่อยเข้าถึงสินเชื่อยากFarm Context → track record ผลผลิต → credit scoring

Story types

Farm Story

ฟาร์มนี้มีแปลงกี่แปลง ปีที่แล้ว yield เฉลี่ยเท่าไหร่

Crop Story

พืชล็อตนี้ปลูกเมื่อไหร่ ใส่ปุ๋ยอะไร เก็บเกี่ยวได้เท่าไหร่

Harvest Story

ล็อตนี้ส่งให้ใคร ราคาเท่าไหร่ คุณภาพผ่านมาตรฐานไหม

IoT Story

เซ็นเซอร์แปลงนี้อ่านค่าปกติไหม มีช่วงไหนน้ำน้อยหรือมากเกิน

Key events

Eventactor.typeเกิดเมื่อ
farm.registeredsystemลงทะเบียนฟาร์มใหม่ในระบบ
plot.createdfarmerเพิ่มแปลงใหม่ พร้อม GPS boundary
crop.plantedfarmerเริ่มปลูก ระบุพืช สายพันธุ์ พื้นที่
crop.fertilizedfarmerใส่ปุ๋ย (ชนิด + ปริมาณ + วิธี)
crop.irrigatedfarmer / deviceรดน้ำ (manual หรือระบบอัตโนมัติ)
crop.sprayedfarmerฉีดยา (ชนิด + ปริมาณ + เหตุผล)
crop.disease_detectedfarmer / systemพบโรคหรือแมลง
crop.disease_treatedfarmerทำการรักษา
sensor.readingdeviceIoT อ่านค่า (soil moisture, temp, pH, humidity)
sensor.alertsystemค่า sensor เกิน threshold → แจ้งเตือน
weather.eventsystemฝนตกหนัก, แล้ง, พายุ — จาก weather API
crop.harvest_startedfarmerเริ่มเก็บเกี่ยว
crop.harvestedfarmerเก็บเกี่ยวเสร็จ ระบุ yield (กิโลกรัม)
harvest.quality_checkedstaff / buyerตรวจคุณภาพ ระบุ grade
harvest.soldfarmerขาย ระบุผู้ซื้อ ราคา น้ำหนัก
harvest.delivereddriverส่งถึงผู้ซื้อ / โรงงาน / ตลาด
payment.receivedsystemได้รับเงินจากการขาย
loan.appliedfarmerยื่นขอสินเชื่อ
loan.approvedsystemอนุมัติสินเชื่อ (อ้างอิง yield history)
input.purchasedfarmerซื้อปัจจัยการผลิต (เมล็ด, ปุ๋ย, ยา)
certification.appliedfarmerยื่นขอ GAP / Organic cert
certification.approvedsystemได้รับ certification

Intelligence use cases

Use caseSignalAction
Irrigation alertsensor.reading soil_moisture < thresholdแจ้ง LINE: "แปลง A3 ดินแห้ง ควรรดน้ำ"
Harvest timingDays since crop.planted + degree-day modelแนะนำช่วงเก็บเกี่ยวที่เหมาะสม
Disease early warningอุณหภูมิ + ความชื้นสูง → high-risk patternแจ้งเตือนเกษตรกรตรวจแปลง
Market price alertราคาตลาดสูงกว่าค่าเฉลี่ย 15%"วันนี้ราคามะนาวดี ควรขาย?"
Credit scoringYield history + on-time payment recordBank ใช้ประเมินสินเชื่อ
Input optimizationปริมาณปุ๋ย vs yield ย้อนหลังแนะนำ dosage ที่ efficient ที่สุด
Yield forecastWeather + historical pattern + growth stageประมาณ yield ก่อนเก็บเกี่ยว 2 สัปดาห์

Crop story timeline

crop.planted          → 15 มี.ค.  (มะเขือเทศ พันธุ์ SVR, แปลง B2, 2 ไร่)
  sensor.reading      → ทุก 1 ชม.  (soil_moisture, temp, humidity)
  crop.irrigated      → 17 มี.ค.  (auto-irrigate, 450 ลิตร)
  crop.fertilized     → 25 มี.ค.  (ปุ๋ยสูตร 15-15-15, 20 กก./ไร่)
  weather.event       → 2 เม.ย.   (ฝนตกหนัก 85 mm — risk waterlogging)
  sensor.alert        → 2 เม.ย.   (soil_moisture สูงเกิน threshold)
  crop.disease_detected → 10 เม.ย. (เพลี้ยไฟ)
  crop.disease_treated  → 11 เม.ย. (ฉีดสารชีวภัณฑ์)
  crop.harvest_started  → 20 พ.ค.
  crop.harvested      → 22 พ.ค.   (yield: 3,200 กก. / 2 ไร่ = 1,600 กก./ไร่)
  harvest.quality_checked → 22 พ.ค. (grade A: 80%, grade B: 20%)
  harvest.sold        → 23 พ.ค.   (ผู้ซื้อ: โรงงานแปรรูป, ราคา ฿18/กก.)
  harvest.delivered   → 24 พ.ค.
  payment.received    → 25 พ.ค.   (฿57,600)

Gross margin: ฿57,600 − ต้นทุน ฿24,000 = ฿33,600 (58%)
Yield vs last season: +12% (จาก 1,430 → 1,600 กก./ไร่)

IoT sensor context

PBCP รับ sensor.reading events ที่มีโครงสร้าง:

{
  "eventName": "sensor.reading",
  "actor": { "type": "device", "id": "sensor-B2-001" },
  "payload": {
    "plotId": "plot-B2",
    "readings": {
      "soil_moisture": 42.5,
      "soil_temp": 28.3,
      "air_temp": 33.1,
      "humidity": 68,
      "ph": 6.4,
      "ec": 1.2
    },
    "unit": { "soil_moisture": "%", "temp": "°C", "ph": "pH", "ec": "dS/m" }
  }
}

Alert thresholds ตั้งได้ต่อ tenant ต่อ crop type — Intelligence trigger sensor.alert เมื่อค่าเกิน/ต่ำกว่า range

Farm-to-market traceability

ทุก harvest lot มี harvestId ที่ trace กลับได้ถึงแปลง → วันปลูก → input ที่ใช้ → เกษตรกร:

harvestId: HRV-20260522-B2
  ↑ plotId: plot-B2 (ฟาร์ม: สวนสมชาย จ.นครปฐม)
    ↑ crop.planted: 15 มี.ค.
      ↑ สายพันธุ์: SVR-tomato-001
      ↑ ปุ๋ย: input.purchased INP-0325
      ↑ ยา: ชีวภัณฑ์ INP-0411
    harvest.quality_checked: grade A cert
    harvest.sold → โรงงาน ABC จ.ราชบุรี

ผู้บริโภคสแกน QR code บนบรรจุภัณฑ์ → เห็นข้อมูลครบ

Full event catalog →

Agriculture

Agricultural businesses face complexity because data is scattered across 3 areas: the farm (IoT + labor), the market (prices + orders), and the supply chain (logistics + quality). PBCP consolidates events from all 3 areas into a single Crop Story and Farm Story.

Business problems solved

ProblemHow PBCP solves it
No way to know if this season's plot yield is better or worse than last yearCrop Story → yield history per plot per season
Impossible to monitor hundreds of sensorsIoT event stream → anomaly detection → alert
No idea what today's market price is or whether to sell or holdMarket Intelligence → average price + trend + recommendation
No traceability for where this harvest lot went or whether it passed quality checksHarvest Story → traceability from field to buyer
Small-scale farmers struggle to access creditFarm Context → yield track record → credit scoring

Story types

Farm Story

How many plots does this farm have? What was the average yield last year?

Crop Story

When was this crop planted? What fertilizer was used? How much was harvested?

Harvest Story

Who received this lot? At what price? Did it pass quality standards?

IoT Story

Are this plot's sensor readings normal? Were there periods of too little or too much water?

Key events

Eventactor.typeOccurs when
farm.registeredsystemNew farm registered in the system
plot.createdfarmerNew plot added with GPS boundary
crop.plantedfarmerPlanting begins; crop type, variety, and area specified
crop.fertilizedfarmerFertilizer applied (type + quantity + method)
crop.irrigatedfarmer / deviceIrrigation performed (manual or automated)
crop.sprayedfarmerPesticide applied (type + quantity + reason)
crop.disease_detectedfarmer / systemDisease or pest detected
crop.disease_treatedfarmerTreatment applied
sensor.readingdeviceIoT reading taken (soil moisture, temp, pH, humidity)
sensor.alertsystemSensor value exceeds threshold → alert triggered
weather.eventsystemHeavy rain, drought, storm — from weather API
crop.harvest_startedfarmerHarvest begins
crop.harvestedfarmerHarvest complete; yield specified (kg)
harvest.quality_checkedstaff / buyerQuality inspection performed; grade assigned
harvest.soldfarmerSale made; buyer, price, and weight specified
harvest.delivereddriverDelivered to buyer / factory / market
payment.receivedsystemPayment received from sale
loan.appliedfarmerLoan application submitted
loan.approvedsystemLoan approved (referencing yield history)
input.purchasedfarmerAgricultural inputs purchased (seeds, fertilizer, pesticide)
certification.appliedfarmerGAP / Organic certification application submitted
certification.approvedsystemCertification received

Intelligence use cases

Use caseSignalAction
Irrigation alertsensor.reading soil_moisture < thresholdLINE notification: "Plot A3 soil is dry — irrigate now"
Harvest timingDays since crop.planted + degree-day modelRecommend optimal harvest window
Disease early warningHigh temperature + humidity → high-risk patternAlert farmer to inspect the plot
Market price alertMarket price 15% above average"Today's lime price is good — time to sell?"
Credit scoringYield history + on-time payment recordUsed by banks to evaluate credit applications
Input optimizationFertilizer volume vs historical yieldRecommend most efficient dosage
Yield forecastWeather + historical pattern + growth stageEstimate yield 2 weeks before harvest

Crop story timeline

crop.planted          → 15 Mar  (Tomatoes, SVR variety, plot B2, 2 rai)
  sensor.reading      → every 1 hr  (soil_moisture, temp, humidity)
  crop.irrigated      → 17 Mar  (auto-irrigate, 450 liters)
  crop.fertilized     → 25 Mar  (15-15-15 formula, 20 kg/rai)
  weather.event       → 2 Apr   (heavy rain 85 mm — risk waterlogging)
  sensor.alert        → 2 Apr   (soil_moisture exceeds threshold)
  crop.disease_detected → 10 Apr (thrips detected)
  crop.disease_treated  → 11 Apr (biological pesticide applied)
  crop.harvest_started  → 20 May
  crop.harvested      → 22 May  (yield: 3,200 kg / 2 rai = 1,600 kg/rai)
  harvest.quality_checked → 22 May (grade A: 80%, grade B: 20%)
  harvest.sold        → 23 May  (buyer: processing plant, price ฿18/kg)
  harvest.delivered   → 24 May
  payment.received    → 25 May  (฿57,600)

Gross margin: ฿57,600 − cost ฿24,000 = ฿33,600 (58%)
Yield vs last season: +12% (from 1,430 → 1,600 kg/rai)

IoT sensor context

PBCP receives sensor.reading events with the following structure:

{
  "eventName": "sensor.reading",
  "actor": { "type": "device", "id": "sensor-B2-001" },
  "payload": {
    "plotId": "plot-B2",
    "readings": {
      "soil_moisture": 42.5,
      "soil_temp": 28.3,
      "air_temp": 33.1,
      "humidity": 68,
      "ph": 6.4,
      "ec": 1.2
    },
    "unit": { "soil_moisture": "%", "temp": "°C", "ph": "pH", "ec": "dS/m" }
  }
}

Alert thresholds are configurable per tenant and per crop type — Intelligence triggers sensor.alert when values exceed or fall below the specified range.

Farm-to-market traceability

Every harvest lot has a harvestId that traces back to the plot → planting date → inputs used → farmer:

harvestId: HRV-20260522-B2
  ↑ plotId: plot-B2 (Farm: Somchai Garden, Nakhon Pathom)
    ↑ crop.planted: 15 Mar
      ↑ Variety: SVR-tomato-001
      ↑ Fertilizer: input.purchased INP-0325
      ↑ Pesticide: biological INP-0411
    harvest.quality_checked: grade A cert
    harvest.sold → ABC Factory, Ratchaburi

Consumers scan the QR code on the packaging → full information displayed.

Full event catalog →