Method: buildingInsights.findClosest

تحدّد هذه الدالة موقع المبنى الذي تكون نقطته المركزية أقرب إلى نقطة طلب البحث. يتم عرض خطأ يحمل الرمز NOT_FOUND في حال عدم توفّر مبانٍ ضمن مسافة 50 مترًا تقريبًا من نقطة طلب البحث.

طلب HTTP

GET https://solar.googleapis.com/v1/buildingInsights:findClosest

يستخدم عنوان URL بنية تحويل الترميز إلى gRPC.

مَعلمات طلب البحث

المعلمات
location

object (LatLng)

الحقل مطلوب. خط الطول وخط العرض اللذان تبحث منهما واجهة برمجة التطبيقات عن أقرب مبنى معروف.

requiredQuality

enum (ImageryQuality)

اختيارية: الحد الأدنى لمستوى الجودة المسموح به في النتائج ولن يتم عرض أي نتيجة بجودة أقل من هذه. ويعادل عدم تحديد هذه السمة حصر الجودة على "عالية" فقط.

exactQualityRequired

boolean

اختيارية: ما إذا كان يجب طلب جودة دقيقة للصور إذا تم ضبطها على "خطأ"، يتم تفسير الحقل requiredQuality على أنّه الحد الأدنى للجودة المطلوبة، بحيث يمكن عرض صور بجودة عالية عندما يتم ضبط requiredQuality على "متوسطة". في حال ضبطها على "صحيح"، يتم تفسير requiredQuality على أنّها الجودة المطلوبة بالضبط، ويتم عرض صور بجودة MEDIUM فقط إذا تم ضبط requiredQuality على MEDIUM.

experiments[]

enum (Experiment)

اختيارية: يحدِّد هذا الإعداد تجارب مرحلة ما قبل التوفّر للجمهور العام التي يجب تفعيلها. يتم تصنيف الطلبات التي تستخدم هذا الحقل كعرض لمرحلة ما قبل التوفّر للجمهور العام بموجب بنود الخدمة المحدّدة في "منصة خرائط Google". لمزيد من التفاصيل، يُرجى الاطّلاع على أوصاف مراحل الإطلاق.

additionalInsights[]

enum (AdditionalInsights)

اختيارية: قائمة بـ additionalInsights المطلوب تضمينها في الردّ

نص الطلب

يجب أن يكون نص الطلب فارغًا.

نص الاستجابة

رسالة الردّ على Solar.FindClosestBuildingInsights معلومات عن الموقع الجغرافي لمبنى وأبعاده وقدرته المقدّرة على إنتاج الطاقة الشمسية

إذا كانت الاستجابة ناجحة، سيحتوي نص الاستجابة على بيانات بالبنية التالية:

تمثيل JSON
{
  "name": string,
  "center": {
    object (LatLng)
  },
  "boundingBox": {
    object (LatLngBox)
  },
  "imageryDate": {
    object (Date)
  },
  "imageryProcessedDate": {
    object (Date)
  },
  "postalCode": string,
  "administrativeArea": string,
  "statisticalArea": string,
  "regionCode": string,
  "solarPotential": {
    object (SolarPotential)
  },
  "imageryQuality": enum (ImageryQuality),
  "detectedArrays": {
    object (DetectedArrays)
  }
}
الحقول
name

string

اسم المورد للمبنى، بالتنسيق buildings/{place_id}.

center

object (LatLng)

نقطة بالقرب من وسط المبنى

boundingBox

object (LatLngBox)

مربّع الإحاطة الخاص بالمبنى

imageryDate

object (Date)

تاريخ الحصول على الصور الأساسية هذا تقدير تقريبي.

imageryProcessedDate

object (Date)

تاريخ اكتمال معالجة هذه الصور

postalCode

string

الرمز البريدي (مثل الرمز البريدي في الولايات المتحدة) الذي يقع فيه هذا المبنى

administrativeArea

string

المنطقة الإدارية 1 (مثلاً، الولاية في الولايات المتحدة) التي يقع فيها هذا المبنى على سبيل المثال، في الولايات المتحدة، قد يكون الاختصار "MA" أو "CA".

statisticalArea

string

المنطقة الإحصائية (مثل منطقة التعداد السكاني في الولايات المتحدة) التي يقع فيها هذا المبنى

regionCode

string

رمز المنطقة للبلد (أو المنطقة) الذي يقع فيه هذا المبنى.

solarPotential

object (SolarPotential)

إمكانات توليد الطاقة الشمسية في المبنى

imageryQuality

enum (ImageryQuality)

جودة الصور المستخدَمة لحساب بيانات هذا المبنى

detectedArrays

object (DetectedArrays)

مجموعات ألواح الطاقة الشمسية التي تم رصدها على المبنى لا تتم تعبئة هذا الحقل إلا إذا تم تضمين DETECTED_ARRAYS في FindClosestBuildingInsightsRequest.additional_insights الطلب.

نطاقات الأذونات

يجب توفير نطاق OAuth التالي:

  • https://www.googleapis.com/auth/cloud-platform

AdditionalInsights

معلومات إضافية عن المبنى، مثل شكل السقف ومصفوفات الألواح الشمسية التي يمكن عرضها في BuildingInsights

عمليات التعداد
ADDITIONAL_INSIGHTS_UNSPECIFIED القيمة التلقائية سيتم عرض BuildingInsights التلقائية.
DETECTED_ARRAYS

تحدِّد ما إذا كانت الاستجابة ستتضمّن الصفائف التي تم رصدها.

في حال تحديد هذا الحقل، ستتم تعبئة الحقل detectedArrays في الردّ.

LatLngBox

مربّع إحاطة بإحداثيات خطوط العرض/الطول

تمثيل JSON
{
  "sw": {
    object (LatLng)
  },
  "ne": {
    object (LatLng)
  }
}
الحقول
sw

object (LatLng)

الزاوية الجنوبية الغربية للمربّع

ne

object (LatLng)

الركن الشمالي الشرقي من المربّع

SolarPotential

معلومات عن القدرة المقدّرة على إنتاج الطاقة الشمسية في مبنى معيّن يتم تحديد عدد من الحقول في هذا الملف من حيث "اللوحات". تصف الحقول panelCapacityWatts وpanelHeightMeters وpanelWidthMeters مَعلمات نموذج اللوحة المستخدَمة في هذه العمليات الحسابية.

تمثيل JSON
{
  "maxArrayPanelsCount": integer,
  "panelCapacityWatts": number,
  "panelHeightMeters": number,
  "panelWidthMeters": number,
  "panelLifetimeYears": integer,
  "maxArrayAreaMeters2": number,
  "maxSunshineHoursPerYear": number,
  "carbonOffsetFactorKgPerMwh": number,
  "wholeRoofStats": {
    object (SizeAndSunshineStats)
  },
  "buildingStats": {
    object (SizeAndSunshineStats)
  },
  "roofSegmentStats": [
    {
      object (RoofSegmentSizeAndSunshineStats)
    }
  ],
  "solarPanels": [
    {
      object (SolarPanel)
    }
  ],
  "solarPanelConfigs": [
    {
      object (SolarPanelConfig)
    }
  ],
  "financialAnalyses": [
    {
      object (FinancialAnalysis)
    }
  ]
}
الحقول
maxArrayPanelsCount

integer

حجم المصفوفة القصوى، أي الحد الأقصى لعدد الألواح التي يمكن تركيبها على السطح

panelCapacityWatts

number

سعة اللوح المستخدم في العمليات الحسابية، بالواط

panelHeightMeters

number

ارتفاع اللوح المستخدَم في العمليات الحسابية، بالمتر في الاتجاه العمودي

panelWidthMeters

number

عرض اللوحة المستخدمة في العمليات الحسابية، بالمتر في الاتجاه العمودي

panelLifetimeYears

integer

العمر المتوقّع للألواح الشمسية بالسنوات يتم استخدام هذه القيمة في العمليات الحسابية المالية.

maxArrayAreaMeters2

number

حجم أكبر مصفوفة بالمتر المربّع

maxSunshineHoursPerYear

number

الحد الأقصى لعدد ساعات سطوع الشمس التي يتلقّاها أي جزء من السطح سنويًا ساعات سطوع الشمس هي مقياس لإجمالي كمية الإشعاع الشمسي (الطاقة) التي يتم تلقّيها سنويًا. ساعة واحدة من أشعة الشمس = 1 كيلوواط ساعة لكل كيلوواط (حيث يشير الكيلوواط إلى الكيلوواط من السعة في ظل ظروف الاختبار العادية).

carbonOffsetFactorKgPerMwh

number

الكمية المكافئة من ثاني أكسيد الكربون الناتج عن كل ميغاواط ساعة من كهرباء الشبكة هذا هو مقياس لكثافة الانبعاثات الكربونية للكهرباء في الشبكة التي تم استبدالها بالكهرباء الشمسية.

wholeRoofStats

object (SizeAndSunshineStats)

إجمالي الحجم والشرائح الربعية لأشعة الشمس للجزء من السقف الذي تم تخصيصه لبعض شرائح السقف على الرغم من الاسم، قد لا يشمل ذلك المبنى بأكمله. يمكنك الاطّلاع على buildingStats.

buildingStats

object (SizeAndSunshineStats)

تشير إلى حجم المبنى بالكامل وكمية أشعة الشمس التي يتلقّاها، بما في ذلك أجزاء السطح التي لم يتم تخصيصها لبعض أجزاء السطح. بما أنّ اتجاهات هذه الأجزاء غير محدّدة بشكل جيد، فإنّ تقدير مساحة السطح غير موثوق به، ولكن تقدير مساحة الأرض موثوق به. قد يكون من الممكن الحصول على مساحة سطح أكثر موثوقية للمبنى بأكمله من خلال تغيير حجم مساحة السطح من wholeRoofStats بنسبة مساحات الأرض في buildingStats وwholeRoofStats.

roofSegmentStats[]

object (RoofSegmentSizeAndSunshineStats)

الحجم والشرائح الربعية لضوء الشمس لكل جزء من السقف

solarPanels[]

object (SolarPanel)

يصف كل SolarPanel لوحًا شمسيًا واحدًا. ويتم إدراجها بالترتيب الذي وضعته خوارزمية تخطيط اللوحة. ويكون ذلك عادةً، ولكن ليس دائمًا، بترتيب تنازلي لإنتاج الطاقة السنوي.

solarPanelConfigs[]

object (SolarPanelConfig)

يصف كل SolarPanelConfig ترتيبًا مختلفًا للألواح الشمسية على السطح. ويتم ترتيبها حسب عدد الألواح تصاعديًا. يستند SolarPanelConfig الذي يتضمّن panelsCount=N إلى أول لوحات N في قائمة solarPanels. لا تتم تعبئة هذا الحقل إلا إذا كان من الممكن تركيب 4 ألواح على الأقل على السقف.

financialAnalyses[]

object (FinancialAnalysis)

يقدّم FinancialAnalysis نسبة التوفير الناتجة عن استخدام الطاقة الشمسية بافتراض فاتورة شهرية معيّنة ومقدّم خدمة كهرباء معيّن. ويتم ترتيبها تصاعديًا حسب مبلغ الفاتورة الشهرية. سيكون هذا الحقل فارغًا للمباني في المناطق التي لا تتوفّر فيها معلومات كافية لواجهة Solar API لإجراء العمليات الحسابية المالية.

SizeAndSunshineStats

تمثّل هذه السمة الشرائح الربعية لحجم السطح أو جزء منه ومدى تعرّضه لأشعة الشمس.

تمثيل JSON
{
  "areaMeters2": number,
  "sunshineQuantiles": [
    number
  ],
  "groundAreaMeters2": number
}
الحقول
areaMeters2

number

مساحة السطح أو جزء السطح بالمتر المربّع هذه هي مساحة السطح (مع مراعاة الميل)، وليست مساحة البصمة الأرضية.

sunshineQuantiles[]

number

الكميات المئوية لسطوع الشمس في نقاط مختلفة في المنطقة إذا كانت هناك قيم N هنا، فإن هذا يمثل (N-1)-iles. على سبيل المثال، إذا كانت هناك 5 قيم، ستكون هي الأرباع (الحد الأدنى، %25، %50، %75، الحد الأقصى). تكون القيم بالكيلوواط ساعة لكل كيلوواط سنويًا، مثل maxSunshineHoursPerYear.

groundAreaMeters2

number

مساحة سطح الأرض التي يغطيها السقف أو جزء منه، بالمتر المربّع

RoofSegmentSizeAndSunshineStats

معلومات عن حجم جزء من السقف ومقدار تعرّضه لأشعة الشمس

تمثيل JSON
{
  "stats": {
    object (SizeAndSunshineStats)
  },
  "center": {
    object (LatLng)
  },
  "boundingBox": {
    object (LatLngBox)
  },
  "pitchDegrees": number,
  "azimuthDegrees": number,
  "planeHeightAtCenterMeters": number
}
الحقول
stats

object (SizeAndSunshineStats)

إجمالي حجم شرائح السقف والشرائح المئوية لأشعة الشمس التي تصل إليها

center

object (LatLng)

نقطة بالقرب من منتصف جزء السطح

boundingBox

object (LatLngBox)

مربّع الحدود لجزء السقف

pitchDegrees

number

زاوية جزء السقف بالنسبة إلى المستوى النظري للأرض ‫0 = موازٍ للأرض، 90 = عمودي على الأرض.

azimuthDegrees

number

اتجاه البوصلة الذي يشير إليه جزء السطح ‫0 = الشمال، 90 = الشرق، 180 = الجنوب. بالنسبة إلى جزء السقف "المسطّح" (pitchDegrees قريب جدًا من 0)، لا يتم تحديد السمت بشكل جيد، لذا من أجل الاتساق، نحدّده بشكل عشوائي على أنّه 0 (الشمال).

planeHeightAtCenterMeters

number

ارتفاع مستوى جزء السقف، بالأمتار فوق مستوى سطح البحر، عند النقطة المحدّدة بواسطة center. يحدّد هذا الحقل، إلى جانب الميل والسمت والموقع الجغرافي المركزي، مستوى جزء السقف بالكامل.

SolarPanel

يصف SolarPanel موضع لوح شمسي واحد واتجاهه وإنتاجه. يمكنك الاطّلاع على الحقول panelHeightMeters وpanelWidthMeters وpanelCapacityWatts في SolarPotential للحصول على معلومات حول مَعلمات اللوحة.

تمثيل JSON
{
  "center": {
    object (LatLng)
  },
  "orientation": enum (SolarPanelOrientation),
  "yearlyEnergyDcKwh": number,
  "segmentIndex": integer
}
الحقول
center

object (LatLng)

مركز اللوحة

orientation

enum (SolarPanelOrientation)

اتجاه اللوحة

yearlyEnergyDcKwh

number

مقدار طاقة أشعة الشمس التي يلتقطها هذا التخطيط على مدار عام، بالكيلوواط ساعة من التيار المستمر

segmentIndex

integer

الفهرس في roofSegmentStats من RoofSegmentSizeAndSunshineStats الذي يتوافق مع جزء السقف الذي تم وضع هذه اللوحة عليه.

SolarPanelOrientation

اتجاه اللوح الشمسي يجب تفسير ذلك بالنسبة إلى السمت الخاص بجزء السقف الذي توضع عليه اللوحة.

عمليات التعداد
SOLAR_PANEL_ORIENTATION_UNSPECIFIED ما مِن اتجاه معروف للوحة.
LANDSCAPE يكون الحافة الطويلة للّوح LANDSCAPE متعامدة مع اتجاه السمت لأجزاء السقف التي يتم وضعه عليها.
PORTRAIT يكون الحافة الطويلة للوح PORTRAIT موازية لاتجاه السمت لجزء السقف الذي يتم وضعه عليه.

SolarPanelConfig

يصف SolarPanelConfig موضعًا معيّنًا للألواح الشمسية على السطح.

تمثيل JSON
{
  "panelsCount": integer,
  "yearlyEnergyDcKwh": number,
  "roofSegmentSummaries": [
    {
      object (RoofSegmentSummary)
    }
  ]
}
الحقول
panelsCount

integer

إجمالي عدد الألواح يُرجى العِلم أنّ هذا الحقل مكرّر (مجموع) الحقول المقابلة في roofSegmentSummaries.

yearlyEnergyDcKwh

number

مقدار الطاقة الشمسية التي يلتقطها هذا التصميم على مدار عام، بالكيلوواط ساعة من التيار المستمر، بافتراض استخدام الألواح الموضّحة أعلاه

roofSegmentSummaries[]

object (RoofSegmentSummary)

معلومات عن إنتاج كل جزء من السقف يحمل لوحة واحدة على الأقل في هذا التنسيق يصف roofSegmentSummaries[i] الجزء i من السقف، بما في ذلك حجمه والإنتاج المتوقّع واتجاهه.

RoofSegmentSummary

معلومات حول جزء من سطح المبنى، مع عدد من الألواح الموضوعة عليه.

تمثيل JSON
{
  "panelsCount": integer,
  "yearlyEnergyDcKwh": number,
  "pitchDegrees": number,
  "azimuthDegrees": number,
  "segmentIndex": integer
}
الحقول
panelsCount

integer

إجمالي عدد اللوحات في هذه الشريحة

yearlyEnergyDcKwh

number

مقدار طاقة أشعة الشمس التي يلتقطها هذا الجزء من التخطيط على مدار عام، بالكيلوواط ساعة من التيار المستمر، بافتراض الألواح الموضّحة أعلاه

pitchDegrees

number

زاوية جزء السقف بالنسبة إلى المستوى النظري للأرض ‫0 = موازٍ للأرض، 90 = عمودي على الأرض.

azimuthDegrees

number

اتجاه البوصلة الذي يشير إليه جزء السطح ‫0 = الشمال، 90 = الشرق، 180 = الجنوب. بالنسبة إلى جزء السقف "المسطّح" (pitchDegrees قريب جدًا من 0)، لا يتم تحديد السمت بشكل جيد، لذا من أجل الاتساق، نحدّده بشكل عشوائي على أنّه 0 (الشمال).

segmentIndex

integer

فهرس في roofSegmentStats لـ RoofSegmentSizeAndSunshineStats المقابل

FinancialAnalysis

تحليل تكلفة وفوائد التصميم الأمثل للألواح الشمسية لقيمة فاتورة كهرباء معيّنة

تمثيل JSON
{
  "monthlyBill": {
    object (Money)
  },
  "defaultBill": boolean,
  "averageKwhPerMonth": number,
  "financialDetails": {
    object (FinancialDetails)
  },
  "leasingSavings": {
    object (LeasingSavings)
  },
  "cashPurchaseSavings": {
    object (CashPurchaseSavings)
  },
  "financedPurchaseSavings": {
    object (FinancedPurchaseSavings)
  },
  "panelConfigIndex": integer
}
الحقول
monthlyBill

object (Money)

فاتورة الكهرباء الشهرية التي يفترضها هذا التحليل

defaultBill

boolean

ما إذا كان هذا هو حجم الفاتورة الذي تم اختياره ليكون الفاتورة التلقائية للمنطقة التي يقع فيها هذا المبنى. يجب ضبط defaultBill لسمة FinancialAnalysis واحدة بالضبط في BuildingSolarPotential.

averageKwhPerMonth

number

مقدار الكهرباء التي يستهلكها المنزل في شهر عادي، استنادًا إلى قيمة الفاتورة وأسعار الكهرباء المحلية

financialDetails

object (FinancialDetails)

المعلومات المالية التي تنطبق بغض النظر عن طريقة التمويل المستخدَمة

leasingSavings

object (LeasingSavings)

تكلفة استئجار الألواح الشمسية ومزاياها

cashPurchaseSavings

object (CashPurchaseSavings)

تكلفة شراء الألواح الشمسية نقدًا وفائدتها

financedPurchaseSavings

object (FinancedPurchaseSavings)

تكلفة شراء الألواح الشمسية وفائدتها من خلال تمويل عملية الشراء

panelConfigIndex

integer

الفهرس في solarPanelConfigs للتصميم الأمثل لنظام الطاقة الشمسية لحجم الفاتورة هذا يمكن أن تكون هذه القيمة ‎-1، ما يشير إلى عدم توفّر تنسيق. في هذه الحالة، سيتم حذف الرسائل الفرعية المتبقية.

المال

تمثّل هذه السمة مبلغًا ماليًا مع نوع العملة.

تمثيل JSON
{
  "currencyCode": string,
  "units": string,
  "nanos": integer
}
الحقول
currencyCode

string

رمز العملة المكوّن من ثلاثة أحرف والمحدّد في ISO 4217.

units

string (int64 format)

الوحدات الكاملة للمبلغ على سبيل المثال، إذا كانت قيمة currencyCode هي "USD"، تكون الوحدة الواحدة دولارًا أمريكيًا واحدًا.

nanos

integer

عدد وحدات النانو (10^-9) من المبلغ يجب أن تتراوح القيمة بين ‎-999,999,999 و‎+999,999,999 (بما يشمل هذين الرقمَين). إذا كانت قيمة units موجبة، يجب أن تكون قيمة nanos موجبة أو صفرًا. إذا كانت قيمة units صفرًا، يمكن أن تكون قيمة nanos موجبة أو صفرًا أو سالبة. إذا كانت قيمة units سالبة، يجب أن تكون قيمة nanos سالبة أو صفرًا. على سبيل المثال، يتم تمثيل ‎ $-1.75 على النحو التالي: units=-1 وnanos=-750,000,000.

FinancialDetails

تفاصيل التحليل المالي يتم تخزين بعض هذه التفاصيل مسبقًا في مستويات أعلى (مثل التكلفة الشخصية). يتم احتساب إجمالي المبالغ المالية على مدار فترة زمنية محدّدة في الحقل panelLifetimeYears في SolarPotential. ملاحظة: يتم تحديد التكلفة الفعلية لشراء الألواح في الحقل outOfPocketCost في CashPurchaseSavings.

تمثيل JSON
{
  "initialAcKwhPerYear": number,
  "remainingLifetimeUtilityBill": {
    object (Money)
  },
  "federalIncentive": {
    object (Money)
  },
  "stateIncentive": {
    object (Money)
  },
  "utilityIncentive": {
    object (Money)
  },
  "lifetimeSrecTotal": {
    object (Money)
  },
  "costOfElectricityWithoutSolar": {
    object (Money)
  },
  "netMeteringAllowed": boolean,
  "solarPercentage": number,
  "percentageExportedToGrid": number
}
الحقول
initialAcKwhPerYear

number

عدد الكيلوواط في الساعة من التيار المتردد الذي نعتقد أنّ الألواح الشمسية ستولّده في عامها الأول

remainingLifetimeUtilityBill

object (Money)

فاتورة الخدمات للكهرباء غير المولَّدة من الطاقة الشمسية، طوال عمر الألواح

federalIncentive

object (Money)

مقدار الأموال المتاحة من الحوافز الفيدرالية، وينطبق ذلك إذا اشترى المستخدم الألواح (بقرض أو بدونه).

stateIncentive

object (Money)

المبلغ المتاح من الحوافز الحكومية، وينطبق ذلك إذا اشترى المستخدم الألواح (بقرض أو بدونه).

utilityIncentive

object (Money)

المبلغ المتاح من حوافز المرافق، وينطبق ذلك إذا اشترى المستخدم الألواح (بقرض أو بدونه).

lifetimeSrecTotal

object (Money)

المبلغ المالي الذي سيحصل عليه المستخدم من أرصدة الطاقة الشمسية المتجددة على مدار عمر اللوحة، وينطبق ذلك إذا اشترى المستخدم اللوحات (بقرض أو بدونه).

costOfElectricityWithoutSolar

object (Money)

إجمالي تكلفة الكهرباء التي كان المستخدم سيدفعها خلال فترة العمر الافتراضي إذا لم يركّب ألواح الطاقة الشمسية

netMeteringAllowed

boolean

ما إذا كان قياس صافي الطاقة مسموحًا به

solarPercentage

number

النسبة المئوية (0-100) للطاقة التي يحصل عليها المستخدم من الطاقة الشمسية صالحة للسنة الأولى ولكنها صحيحة تقريبًا للسنوات المقبلة.

percentageExportedToGrid

number

النسبة المئوية (0-100) لإنتاج الكهرباء من الطاقة الشمسية التي افترضنا أنّه تم تصديرها إلى الشبكة، استنادًا إلى الربع الأول من الإنتاج. ويؤثر ذلك في العمليات الحسابية إذا لم يكن خيار قياس صافي الطاقة مسموحًا به.

LeasingSavings

تكلفة استئجار إعدادات معيّنة للألواح الشمسية مع استخدام معيّن للكهرباء وفائدتها

تمثيل JSON
{
  "leasesAllowed": boolean,
  "leasesSupported": boolean,
  "annualLeasingCost": {
    object (Money)
  },
  "savings": {
    object (SavingsOverTime)
  }
}
الحقول
leasesAllowed

boolean

ما إذا كان مسموحًا بعقود الإيجار في هذه الولاية القضائية (لا يُسمح بعقود الإيجار في بعض الولايات). إذا كان هذا الحقل خطأ، فيجب تجاهل القيم في هذه الرسالة.

leasesSupported

boolean

ما إذا كانت عقود الإيجار متاحة في هذه الولاية القضائية من خلال محرّك العمليات الحسابية المالية إذا كان هذا الحقل خطأ، فيجب تجاهل القيم في هذه الرسالة. هذا مستقل عن leasesAllowed: في بعض المناطق، يُسمح بعقود الإيجار، ولكن في ظل شروط لا تتعامل معها النماذج المالية.

annualLeasingCost

object (Money)

التكلفة السنوية المقدَّرة للإيجار

savings

object (SavingsOverTime)

مقدار ما يتم توفيره (أو لا) على مدار فترة الاستخدام.

SavingsOverTime

المعلومات المالية التي تتم مشاركتها بين طرق التمويل المختلفة

تمثيل JSON
{
  "savingsYear1": {
    object (Money)
  },
  "savingsYear20": {
    object (Money)
  },
  "presentValueOfSavingsYear20": {
    object (Money)
  },
  "savingsLifetime": {
    object (Money)
  },
  "presentValueOfSavingsLifetime": {
    object (Money)
  },
  "financiallyViable": boolean
}
الحقول
savingsYear1

object (Money)

التوفير في السنة الأولى بعد تركيب الألواح الشمسية

savingsYear20

object (Money)

التوفير في أول عشرين عامًا بعد تركيب الألواح الشمسية

presentValueOfSavingsYear20

object (Money)

باستخدام معدّل الخصم المفترض، ما هي القيمة الحالية للمبالغ التراكمية التي سيتم توفيرها على مدار 20 عامًا؟

savingsLifetime

object (Money)

المبالغ التي سيتم توفيرها خلال فترة صلاحية الاستخدام الكاملة للّوحة

presentValueOfSavingsLifetime

object (Money)

باستخدام معدّل الخصم المفترض، ما هي القيمة الحالية للمبالغ التراكمية التي سيتم توفيرها خلال فترة صلاحية الاستخدام؟

financiallyViable

boolean

يشير إلى ما إذا كان هذا السيناريو قابلاً للتطبيق ماليًا. ستكون القيمة "خطأ" للسيناريوهات ذات الجدوى المالية الضعيفة (مثل الخسارة المالية).

CashPurchaseSavings

تكلفة الشراء المباشر لإعدادات معيّنة من الألواح الشمسية مع استخدام معيّن للكهرباء، وفائدتها

تمثيل JSON
{
  "outOfPocketCost": {
    object (Money)
  },
  "upfrontCost": {
    object (Money)
  },
  "rebateValue": {
    object (Money)
  },
  "savings": {
    object (SavingsOverTime)
  },
  "paybackYears": number
}
الحقول
outOfPocketCost

object (Money)

التكلفة الأولية قبل الحوافز الضريبية: المبلغ الذي يجب دفعه من جيبك الخاص. يُرجى مقارنة ذلك بـ "upfrontCost"، وهو المبلغ بعد خصم الحوافز الضريبية.

upfrontCost

object (Money)

التكلفة الأولية بعد الحوافز الضريبية: هي المبلغ الذي يجب دفعه خلال السنة الأولى. يختلف هذا عن outOfPocketCost الذي لا يشمل الحوافز الضريبية.

rebateValue

object (Money)

قيمة جميع الخصومات الضريبية

savings

object (SavingsOverTime)

مقدار ما يتم توفيره (أو لا) على مدار فترة الاستخدام.

paybackYears

number

عدد السنوات حتى استرداد قيمة الاستثمار وتعني القيمة السالبة أنّ فترة الاسترداد لا تحدث أبدًا خلال فترة القيمة الدائمة.

FinancedPurchaseSavings

تكلفة وفائدة استخدام قرض لشراء إعدادات معيّنة من الألواح الشمسية مع استخدام معيّن للكهرباء

تمثيل JSON
{
  "annualLoanPayment": {
    object (Money)
  },
  "rebateValue": {
    object (Money)
  },
  "loanInterestRate": number,
  "savings": {
    object (SavingsOverTime)
  }
}
الحقول
annualLoanPayment

object (Money)

تمثّل الدفعات السنوية للقرض.

rebateValue

object (Money)

قيمة جميع الخصومات الضريبية (بما في ذلك الائتمان الضريبي للاستثمار الفيدرالي (ITC)).

loanInterestRate

number

معدّل الفائدة على القروض المفترَض في هذه المجموعة من العمليات الحسابية

savings

object (SavingsOverTime)

مقدار ما يتم توفيره (أو لا) على مدار فترة الاستخدام.

DetectedArrays

معلومات عن مصفوفات الألواح الشمسية التي تم رصدها على المبنى

تمثيل JSON
{
  "detectionStatus": enum (DetectionStatus),
  "arrays": [
    {
      object (SolarArray)
    }
  ],
  "latestCaptureDate": {
    object (Date)
  }
}
الحقول
detectionStatus

enum (DetectionStatus)

تشير إلى حالة رصد مصفوفات الألواح الشمسية لهذا المبنى.

arrays[]

object (SolarArray)

قائمة بمصفوفات الألواح الشمسية التي تم رصدها في المبنى

latestCaptureDate

object (Date)

التاريخ الذي يشير إلى وقت التقاط أحدث بيانات لمصفوفة الألواح الشمسية

DetectionStatus

تشير إلى حالة رصد مصفوفات الألواح الشمسية لهذا المبنى.

عمليات التعداد
DETECTION_STATUS_UNSPECIFIED حالة غير محدّدة
DETECTION_STATUS_DATA_UNAVAILABLE لا تتوفّر بيانات مصفوفة الألواح الشمسية التي تم رصدها لهذا المبنى.
DETECTION_STATUS_ARRAYS_DETECTED تم رصد مصفوفة شمسية واحدة على الأقل لهذا المبنى.
DETECTION_STATUS_NO_ARRAYS_DETECTED لم يتم رصد أي مصفوفات شمسية لهذا المبنى.

SolarArray

تفاصيل مصفوفة شمسية واحدة تم رصدها

تمثيل JSON
{
  "polygonGeojson": {
    object
  }
}
الحقول
polygonGeojson

object (Struct format)

تمثيل GeoJSON لمساحة المبنى التي تم رصد الألواح الشمسية فيها

يجب أن تكون بيانات GeoJSON بتنسيق RFC 7946 وأن تمثّل مضلّعًا لمنطقة واحدة متجاورة.

سيتم تمثيل المضلّع بعدة حلقات عندما يحتوي على ثقوب.

مثال:

{ "type": "Polygon", "coordinates": [ [ [-1, -1], [-1, 0], [0, 0], [-1, -1] ] ] }