Method: forecast.lookup

يعرض التطبيق معلومات عن حبوب اللقاح يوميًا خلال مدة تصل إلى 5 أيام في أكثر من 65 بلدًا، بدقة تصل إلى 1 كلم.

طلب HTTP

GET https://pollen.googleapis.com/v1/forecast:lookup

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

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

المَعلمات
location

object (LatLng)

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

days

integer

مطلوبة. رقم يشير إلى عدد أيام التوقعات المطلوب طلبها (الحد الأدنى للقيمة 1، والحد الأقصى للقيمة هو 5).

pageSize

integer

اختياريّ. الحد الأقصى لعدد سجلّات المعلومات اليومية المطلوب عرضها في كل صفحة القيمة التلقائية والحد الأقصى هي 5 (5 أيام من البيانات).

pageToken

string

اختياريّ. رمز مميّز للصفحة تم تلقّيه من مكالمة يومية سابقة. ويتم استخدامه لاسترداد الصفحة التالية.

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

languageCode

string

اختياريّ. تسمح للعميل باختيار لغة الرد. إذا تعذّر تقديم بيانات لتلك اللغة، ستستخدم واجهة برمجة التطبيقات أقرب محتوى مطابق. تعتمد القيم المسموح بها على معيار IETF BCP-47. القيمة التلقائية هي "en".

plantsDescription

boolean

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

نص الطلب

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

نص الاستجابة

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

تمثيل JSON
{
  "regionCode": string,
  "dailyInfo": [
    {
      object (DayInfo)
    }
  ],
  "nextPageToken": string
}
الحقول
regionCode

string

رمز ISO_3166-1 alpha-2 للبلد/المنطقة المتوافقة مع الموقع الجغرافي المقدَّم في الطلب. قد يتم حذف هذا الحقل من الردّ إذا كان الموقع الجغرافي المقدَّم في الطلب يقع في منطقة متنازع عليها.

dailyInfo[]

object (DayInfo)

مطلوبة. يحتوي هذا العنصر على معلومات التوقعات اليومية لكل يوم مطلوب.

nextPageToken

string

اختياريّ. الرمز المميز لاسترداد الصفحة التالية.

نطاقات التفويض

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

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

لمزيد من المعلومات، راجِع نظرة عامة على بروتوكول OAuth 2.0.

LatLng

تمثّل هذه السمة كائنًا يمثّل زوجًا من خطوط الطول/العرض. يتم التعبير عن ذلك كزوج من الازدواج لتمثيل درجات خطوط الطول والعرض. يجب أن يتوافق هذا الكائن مع معيار WGS84 ما لم يتم تحديد خلاف ذلك. يجب أن تكون القيم ضمن نطاقات تمت تسويتها.

تمثيل JSON
{
  "latitude": number,
  "longitude": number
}
الحقول
latitude

number

تمثّل هذه السمة خط العرض بالدرجات. يجب أن يكون ضِمن نطاق [ -90.0 أو +90.0].

longitude

number

خط الطول بالدرجات. يجب أن يكون ضمن النطاق [-180.0، +180.0].

DayInfo

يحتوي هذا العنصر على معلومات التوقعات اليومية لكل يوم مطلوب.

تمثيل JSON
{
  "date": {
    object (Date)
  },
  "pollenTypeInfo": [
    {
      object (PollenTypeInfo)
    }
  ],
  "plantInfo": [
    {
      object (PlantInfo)
    }
  ]
}
الحقول
date

object (Date)

التاريخ بالتوقيت العالمي المنسّق الذي يتم فيه عرض بيانات توقّعات حبوب اللقاح.

pollenTypeInfo[]

object (PollenTypeInfo)

تتضمّن هذه القائمة (حتى) ثلاثة أنواع من حبوب اللقاح (العشب والأعشاب الضارة والأشجار) التي تؤثر في الموقع الجغرافي المحدّد في الطلب.

plantInfo[]

object (PlantInfo)

ستشمل هذه القائمة (ما يصل إلى) 15 نوعًا من حبوب اللقاح التي تؤثر في الموقع الجغرافي المحدّد في الطلب.

التاريخ

تمثّل تاريخًا كاملاً أو جزئيًا في التقويم، مثل تاريخ الميلاد. تم تحديد الوقت من اليوم والمنطقة الزمنية في مكان آخر أو هما غير مهمين. التاريخ مرتبط بالتقويم الميلادي. يمكن أن يمثّل ذلك أحد الأنواع التالية:

  • تاريخ كامل، مع قيم غير صفرية للسنة والشهر واليوم.
  • شهر ويوم مع السنة صفر (على سبيل المثال، ذكرى سنوية).
  • سنة من تلقاء نفسها، مع عدم تحديد شهر ويوم صفر.
  • سنة وشهر بدون يوم (على سبيل المثال، تاريخ انتهاء صلاحية بطاقة الائتمان).

أنواع ذات صلة:

تمثيل JSON
{
  "year": integer,
  "month": integer,
  "day": integer
}
الحقول
year

integer

سنة من التاريخ. يجب أن تتراوح القيمة بين 1 و9999، أو 0 لتحديد تاريخ بدون سنة.

month

integer

شهر من السنة يجب أن تتراوح القيمة من 1 إلى 12 أو 0 لتحديد عام بدون شهر ويوم.

day

integer

يوم من الشهر. يجب أن تتراوح القيمة من 1 إلى 31 وأن تكون صالحة للسنة والشهر أو يجب أن تكون القيمة 0 لتحديد سنة بحد ذاتها أو عام وشهر لا يكون فيه اليوم مهمًا.

PollenTypeInfo

يحتوي هذا العنصر على مؤشر نوع حبوب اللقاح ومعلومات الاقتراحات الصحية حول نوع معيّن من حبوب اللقاح.

تمثيل JSON
{
  "code": enum (PollenType),
  "displayName": string,
  "indexInfo": {
    object (IndexInfo)
  },
  "healthRecommendations": [
    string
  ],
  "inSeason": boolean
}
الحقول
code

enum (PollenType)

الاسم الرمزي لنوع حبوب اللقاح. على سبيل المثال: "GRASS"

displayName

string

تمثيل يمكن للإنسان فهم اسم نوع حبوب اللقاح مثال: "عشب"

indexInfo

object (IndexInfo)

يحتوي على بيانات مؤشر حبوب اللقاح العام (UPI) الخاص بنوع حبوب اللقاح.

healthRecommendations[]

string

قائمة تفسيرات نصية، ذات صلة بالإحصاءات الصحية استنادًا إلى مستويات حبوب اللقاح الحالية

inSeason

boolean

الإشارة إلى ما إذا كان النبات في الموسم أم لا.

PollenType

رمز نوع حبوب اللقاح

عمليات التعداد
POLLEN_TYPE_UNSPECIFIED نوع النبات غير محدَّد.
GRASS إنّه نوع حبوب لقاح الأعشاب.
TREE نوع حبوب لقاح الأشجار
WEED نوع حبوب لقاح الأعشاب الضارة.

IndexInfo

يحتوي هذا الكائن على بيانات تمثّل قيمة معيّنة لمؤشر حبوب اللقاح والفئة والوصف.

تمثيل JSON
{
  "code": enum (Index),
  "displayName": string,
  "category": string,
  "indexDescription": string,
  "color": {
    object (Color)
  },
  "value": integer
}
الحقول
code

enum (Index)

هو رمز الفهرس. يمثل هذا الحقل الفهرس لأغراض البرمجة باستخدام حالات الثعبان بدلاً من المسافات. مثال: "UPI".

displayName

string

تمثيل لاسم الفهرس يمكن لشخص عادي قراءته. مثال: "مؤشر حبوب اللقاح العالمي".

category

string

التصنيف النصي لتفسير النتيجة الرقمية للفهرس. يتألف الفهرس من ست فئات:

  • 0: "لا شيء"
  • 1: "منخفض جدًا"
  • 2: "منخفض"
  • 3: "معتدل"
  • 4: "مرتفع"
  • 5: "مرتفع جدًا
indexDescription

string

شرح نصي لمستوى الفهرس الحالي.

color

object (Color)

اللون المستخدَم لتمثيل النتيجة الرقمية لمؤشر حبوب اللقاح.

value

integer

هي النتيجة الرقمية للفهرس. يتراوح النطاق الرقمي بين 0 و5.

الفهرس

رمز الفهرس

عمليات التعداد
INDEX_UNSPECIFIED فهرس غير محدَّد.
UPI مؤشر حبوب اللقاح العام.

اللون

يمثل لونًا في مساحة اللون RGBA. تم تصميم هذا التمثيل لتبسيط التحويل من تمثيلات الألوان وإليها بلغات مختلفة بدلاً من المكثف. على سبيل المثال، يمكن توفير حقول هذا التمثيل بشكل متعدد في دالة إنشاء java.awt.Color في Java، ويمكن أيضًا توفيرها بشكل غير متكلّف في طريقة +colorWithRed:green:blue:alpha لـ UIColor في iOS. ومع بذل مجهود بسيط، يمكن تنسيقها بسهولة إلى سلسلة CSS rgba() في JavaScript.

لا تتضمّن هذه الصفحة المرجعية معلومات عن مساحة اللون المطلقة التي يجب استخدامها لتفسير قيمة نموذج أحمر أخضر أزرق، على سبيل المثال، sRGB وAdobe RGB وDCI-P3 وBT.2020. بشكل تلقائي، يجب أن تفترض التطبيقات مساحة اللون sRGB.

عند الحاجة إلى تحديد تساوي الألوان، يجب التعامل مع لونَين على قدم المساواة إذا اختلفت جميع قيمهما الأحمر والأخضر والأزرق وألفا بنسبة 1e-5 على الأكثر، ما لم يرِد خلاف ذلك.

مثال (Java):

 import com.google.type.Color;

 // ...
 public static java.awt.Color fromProto(Color protocolor) {
   float alpha = protocolor.hasAlpha()
       ? protocolor.getAlpha().getValue()
       : 1.0;

   return new java.awt.Color(
       protocolor.getRed(),
       protocolor.getGreen(),
       protocolor.getBlue(),
       alpha);
 }

 public static Color toProto(java.awt.Color color) {
   float red = (float) color.getRed();
   float green = (float) color.getGreen();
   float blue = (float) color.getBlue();
   float denominator = 255.0;
   Color.Builder resultBuilder =
       Color
           .newBuilder()
           .setRed(red / denominator)
           .setGreen(green / denominator)
           .setBlue(blue / denominator);
   int alpha = color.getAlpha();
   if (alpha != 255) {
     result.setAlpha(
         FloatValue
             .newBuilder()
             .setValue(((float) alpha) / denominator)
             .build());
   }
   return resultBuilder.build();
 }
 // ...

مثال (iOS / Obj-C):

 // ...
 static UIColor* fromProto(Color* protocolor) {
    float red = [protocolor red];
    float green = [protocolor green];
    float blue = [protocolor blue];
    FloatValue* alpha_wrapper = [protocolor alpha];
    float alpha = 1.0;
    if (alpha_wrapper != nil) {
      alpha = [alpha_wrapper value];
    }
    return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];
 }

 static Color* toProto(UIColor* color) {
     CGFloat red, green, blue, alpha;
     if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) {
       return nil;
     }
     Color* result = [[Color alloc] init];
     [result setRed:red];
     [result setGreen:green];
     [result setBlue:blue];
     if (alpha <= 0.9999) {
       [result setAlpha:floatWrapperWithValue(alpha)];
     }
     [result autorelease];
     return result;
}
// ...

مثال (JavaScript):

// ...

var protoToCssColor = function(rgb_color) {
   var redFrac = rgb_color.red || 0.0;
   var greenFrac = rgb_color.green || 0.0;
   var blueFrac = rgb_color.blue || 0.0;
   var red = Math.floor(redFrac * 255);
   var green = Math.floor(greenFrac * 255);
   var blue = Math.floor(blueFrac * 255);

   if (!('alpha' in rgb_color)) {
      return rgbToCssColor(red, green, blue);
   }

   var alphaFrac = rgb_color.alpha.value || 0.0;
   var rgbParams = [red, green, blue].join(',');
   return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');
};

var rgbToCssColor = function(red, green, blue) {
  var rgbNumber = new Number((red << 16) | (green << 8) | blue);
  var hexString = rgbNumber.toString(16);
  var missingZeros = 6 - hexString.length;
  var resultBuilder = ['#'];
  for (var i = 0; i < missingZeros; i++) {
     resultBuilder.push('0');
  }
  resultBuilder.push(hexString);
  return resultBuilder.join('');
};

// ...
تمثيل JSON
{
  "red": number,
  "green": number,
  "blue": number,
  "alpha": number
}
الحقول
red

number

مقدار اللون الأحمر في اللون كقيمة في الفاصل [0، 1].

green

number

مقدار اللون الأخضر في اللون كقيمة في الفاصل [0، 1].

blue

number

مقدار اللون الأزرق في اللون كقيمة في الفاصل [0، 1].

alpha

number

جزء هذا اللون الذي يجب تطبيقه على وحدة البكسل. بمعنى أنه يتم تحديد لون البكسل النهائي من خلال المعادلة:

pixel color = alpha * (this color) + (1.0 - alpha) * (background color)

هذا يعني أن القيمة 1.0 تتجاوب مع لون ثابت، في حين أن القيمة 0.0 تتجاوب مع لون شفاف تمامًا. يستخدم هذا رسالة برنامج تضمين بدلاً من مقياس عائم بسيط بحيث يمكن التمييز بين قيمة افتراضية والقيمة التي يتم إلغاء تعيينها. في حال حذفه، يتم عرض كائن اللون هذا كلون خالص (كما لو تم منح قيمة ألفا القيمة 1.0 بشكل صريح).

PlantInfo

يحتوي هذا الكائن على المعلومات اليومية حول نبات معين.

تمثيل JSON
{
  "code": enum (Plant),
  "displayName": string,
  "indexInfo": {
    object (IndexInfo)
  },
  "plantDescription": {
    object (PlantDescription)
  },
  "inSeason": boolean
}
الحقول
code

enum (Plant)

تمثّل هذه السمة اسم رمز النبات. على سبيل المثال: "COTTONWOOD". يمكن العثور هنا على قائمة بجميع الرموز المتاحة.

displayName

string

تمثيل لاسم النبات يمكن لشخص عادي قراءته. على سبيل المثال: "خشب القطن".

indexInfo

object (IndexInfo)

يحتوي هذا الكائن على بيانات تمثّل قيمة معيّنة لمؤشر حبوب اللقاح والفئة والوصف.

plantDescription

object (PlantDescription)

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

inSeason

boolean

الإشارة إلى إما النبات في الموسم أم لا.

نبتة

يسرد النباتات المتاحة بتوفّر متفاوت في مواقع جغرافية مختلفة.

عمليات التعداد
PLANT_UNSPECIFIED رمز نبات غير محدّد.
ALDER يعتبر جار الماء نوعًا من حبوب لقاح الأشجار.
ASH يُصنف الرماد ضمن أنواع حبوب لقاح الأشجار.
BIRCH تم تصنيف البتولا كنوع من حبوب لقاح الأشجار.
COTTONWOOD تم تصنيف خشب القطن ضمن أنواع حبوب لقاح الأشجار.
ELM تم تصنيف الدردار كنوع من حبوب لقاح الأشجار.
MAPLE يتم تصنيف القيقب على أنّه من أنواع حبوب لقاح الأشجار.
OLIVE تم تصنيف الزيتون على أنّه من أنواع حبوب لقاح الأشجار.
JUNIPER تم تصنيف العرعر ضمن أنواع حبوب لقاح الأشجار.
OAK يصنف البلوط على أنه نوع من حبوب لقاح الأشجار.
PINE يتم تصنيف الصنوبر على أنّه من أنواع حبوب لقاح الأشجار.
CYPRESS_PINE يُصنّف صنوبر السرو ضمن أنواع حبوب لقاح الأشجار.
HAZEL تم تصنيف البندق ضمن أنواع حبوب لقاح الأشجار.
GRAMINALES يتم تصنيف الحبيبات على أنّها نوع من حبوب لقاح الأعشاب.
RAGWEED يصنف الرغيد كنوع من حبوب لقاح الأعشاب الضارة.
MUGWORT يصنف الشيح الدارج كنوع من حبوب لقاح الأعشاب الضارة.

PlantDescription

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

تمثيل JSON
{
  "type": enum (PollenType),
  "family": string,
  "season": string,
  "specialColors": string,
  "specialShapes": string,
  "crossReaction": string,
  "picture": string,
  "pictureCloseup": string
}
الحقول
type

enum (PollenType)

نوع حبوب لقاح النبات. على سبيل المثال: "GRASS". يمكن العثور هنا على قائمة بجميع الرموز المتاحة.

family

string

تمثيل يمكن للإنسان فهم اسم عائلة النبات. على سبيل المثال: "البيتولاي (عائلة البتولا)".

season

string

قائمة نصية تفسيرات للمواسم التي تكون فيها حبوب اللقاح نشطة. مثال: "أواخر فصل الشتاء، فصل الربيع".

specialColors

string

وصف نصي لألوان النباتات لأوراقها أو لحاءها أو زهورها أو بذورها يساعد في التعرّف على النبات.

specialShapes

string

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

crossReaction

string

وصف نصي لنباتات التفاعل المتقاطع لحبوب اللقاح. مثال: حبوب لقاح جار الماء والبندق والشرد والزان والصفصاف والبلوط

picture

string

رابط إلى صورة النبات.

pictureCloseup

string

رابط إلى صورة مقرَّبة للنبات.