مشخصات ServiceClass

هنگام افزودن کلاس‌های جدید به ServiceClassType ، مطمئن شوید که آنها از دستورالعمل‌های زیر پیروی می‌کنند:

  • استانداردهای محلی : کلاس‌ها باید استاندارد محلی کلاس‌های خدماتی را برای شیوه حمل و نقل مورد نظر در بازار هدف نشان دهند.
  • متمرکز بر سخت‌افزار : آن‌ها باید ویژگی‌های فیزیکی و امکانات رفاهی وسیله نقلیه ("سخت‌افزار") را به جای ساختار قیمت‌گذاری خاص یا شرایط کرایه یک شریک (مثلاً قابلیت استرداد وجه، انعطاف‌پذیری) نشان دهند.
  • قابلیت استفاده مجدد : شرکای مختلف باید بتوانند هنگام ارائه قیمت برای یک نوع وسیله نقلیه، از کلاس‌های یکسانی استفاده کنند. این امر از تکثیر enumهای خاص هر شریک جلوگیری کرده و ثبات را تضمین می‌کند.

تعریف پروتو

// Attributes characterizing the amenities and ride comfort of a journey on a
// vehicle.
message ServiceClass {
  // A high level enum describing the service class type.
  enum ServiceClassType {
    // Global service classes
    FIRST_CLASS = 1;
    SECOND_CLASS = 2;

    // Only a single service class is offered by the operator. The service class
    // may not even have a name because there is no distinction to be made.
    SINGLE_CLASS = 3;
    BUSINESS_CLASS = 4;

    // Additional global or per-market service classes can be added.  Please
    // reach out to the Google Transport team if additional service classes are
    // needed for your use case.

    // Japan specific train ticket classes
    NON_RESERVED_SECOND_CLASS = 201;
    RESERVED_SECOND_CLASS = 202;
    RESERVED_GREEN_CAR_CLASS = 203;
    RESERVED_GRAN_CLASS = 204;

    // Brazil specific service classes.
    CONVENCIONAL = 205;
    EXECUTIVO = 206;
    SEMILEITO = 207;
    LEITO = 208;
    CAMA = 209;

    // Bus specific service classes (commonly used in India).
    // Air-conditioned sleeper class.
    AC_SLEEPER_CLASS = 301;
    // Air-conditioned seater class.
    AC_SEATER_CLASS = 302;
    // Air-conditioned semi-sleeper class.
    AC_SEMI_SLEEPER_CLASS = 303;
    // Air-conditioned sleeper and seater class.
    AC_SLEEPER_SEATER_CLASS = 304;
    // Non-air-conditioned sleeper class.
    NON_AC_SLEEPER_CLASS = 305;
    // Non-air-conditioned seater class.
    NON_AC_SEATER_CLASS = 306;
    // Non-air-conditioned semi-sleeper class.
    NON_AC_SEMI_SLEEPER_CLASS = 307;
    // Non-air-conditioned sleeper and seater class.
    NON_AC_SLEEPER_SEATER_CLASS = 308;
  }

  ServiceClassType type = 1 [features.field_presence = IMPLICIT];
}

نمونه JSON

{
  "type": "FIRST_CLASS"
}