# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: presence.proto
"""Generated protocol buffer code."""
from google.protobuf.internal import enum_type_wrapper
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2
from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
from . import definitions_pb2 as definitions__pb2
from . import miscellaneous_pb2 as miscellaneous__pb2
from . import peers_pb2 as peers__pb2
from .scalapb import scalapb_pb2 as scalapb_dot_scalapb__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='presence.proto',
  package='dialog',
  syntax='proto3',
  serialized_options=b'\n\024im.dlg.grpc.servicesZ\006dialog',
  create_key=_descriptor._internal_create_key,
  serialized_pb=b'\n\x0epresence.proto\x12\x06\x64ialog\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1egoogle/protobuf/wrappers.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x11\x64\x65\x66initions.proto\x1a\x13miscellaneous.proto\x1a\x0bpeers.proto\x1a\x15scalapb/scalapb.proto\"\xa4\x01\n\x12RequestStartTyping\x12,\n\x04peer\x18\x01 \x01(\x0b\x32\x0f.dialog.OutPeerB\r\x8a\xea\x30\t\n\x07visible\x12\x36\n\x0btyping_type\x18\x03 \x01(\x0e\x32\x12.dialog.TypingTypeB\r\x8a\xea\x30\t\n\x07visible:\x1c\xe2?\x19\n\x17im.dlg.grpc.GrpcRequestJ\x04\x08\x02\x10\x03J\x04\x08\x04\x10\x05\"\x97\x01\n\x11RequestStopTyping\x12,\n\x04peer\x18\x01 \x01(\x0b\x32\x0f.dialog.OutPeerB\r\x8a\xea\x30\t\n\x07visible\x12\x36\n\x0btyping_type\x18\x02 \x01(\x0e\x32\x12.dialog.TypingTypeB\r\x8a\xea\x30\t\n\x07visible:\x1c\xe2?\x19\n\x17im.dlg.grpc.GrpcRequest\"\xb0\x01\n\x10RequestSetOnline\x12 \n\tis_online\x18\x01 \x01(\x08\x42\r\x8a\xea\x30\t\n\x07visible\x12\x1e\n\x07timeout\x18\x02 \x01(\x03\x42\r\x8a\xea\x30\t\n\x07visible\x12\x36\n\x0b\x64\x65vice_type\x18\x03 \x01(\x0e\x32\x12.dialog.DeviceTypeB\r\x8a\xea\x30\t\n\x07visible:\x1c\xe2?\x19\n\x17im.dlg.grpc.GrpcRequestJ\x04\x08\x04\x10\x05\"\x91\x01\n\x0cUpdateTyping\x12)\n\x04peer\x18\x01 \x01(\x0b\x32\x0c.dialog.PeerB\r\x8a\xea\x30\t\n\x07visible\x12\x1e\n\x07user_id\x18\x02 \x01(\x05\x42\r\x8a\xea\x30\t\n\x07visible\x12\x36\n\x0btyping_type\x18\x03 \x01(\x0e\x32\x12.dialog.TypingTypeB\r\x8a\xea\x30\t\n\x07visible\"\x94\x01\n\x10UpdateTypingStop\x12)\n\x04peer\x18\x01 \x01(\x0b\x32\x0c.dialog.PeerB\r\x8a\xea\x30\t\n\x07visible\x12\x1e\n\x07user_id\x18\x02 \x01(\x05\x42\r\x8a\xea\x30\t\n\x07visible\x12\x35\n\x0btyping_type\x18\x03 \x01(\x0e\x32\x12.dialog.TypingTypeB\x0c\x8a\xea\x30\x08\n\x06hidden\"a\n\x10UpdateUserOnline\x12\x1e\n\x07user_id\x18\x01 \x01(\x05\x42\r\x8a\xea\x30\t\n\x07visible\x12\'\n\x0b\x64\x65vice_type\x18\x02 \x01(\x0e\x32\x12.dialog.DeviceTypeJ\x04\x08\x03\x10\x04\"^\n\x11UpdateUserOffline\x12\x1a\n\x03uid\x18\x01 \x01(\x05\x42\r\x8a\xea\x30\t\n\x07visible\x12\'\n\x0b\x64\x65vice_type\x18\x02 \x01(\x0e\x32\x12.dialog.DeviceTypeJ\x04\x08\x03\x10\x04\"\xa9\x01\n\x12UpdateUserLastSeen\x12\x1a\n\x03uid\x18\x01 \x01(\x05\x42\r\x8a\xea\x30\t\n\x07visible\x12#\n\x0clast_seen_at\x18\x02 \x01(\x03\x42\r\x8a\xea\x30\t\n\x07visible\x12\'\n\x0b\x64\x65vice_type\x18\x03 \x01(\x0e\x32\x12.dialog.DeviceType\x12#\n\x0c\x63urrent_time\x18\x05 \x01(\x03\x42\r\x8a\xea\x30\t\n\x07visibleJ\x04\x08\x04\x10\x05\"s\n\x11UpdateGroupOnline\x12\x1f\n\x08group_id\x18\x01 \x01(\x05\x42\r\x8a\xea\x30\t\n\x07visible\x12\x1c\n\x05\x63ount\x18\x02 \x01(\x05\x42\r\x8a\xea\x30\t\n\x07visible\x12\x1f\n\x08users_id\x18\x03 \x03(\x05\x42\r\x8a\xea\x30\t\n\x07visible\"\xe5\x01\n\x11UpdateGroupTyping\x12\x1f\n\x08group_id\x18\x01 \x01(\x05\x42\r\x8a\xea\x30\t\n\x07visible\x12I\n\x0cusers_typing\x18\x02 \x03(\x0b\x32$.dialog.UpdateGroupTyping.UserTypingB\r\x8a\xea\x30\t\n\x07visible\x1a\x64\n\nUserTyping\x12\x1e\n\x07user_id\x18\x01 \x01(\x05\x42\r\x8a\xea\x30\t\n\x07visible\x12\x36\n\x0btyping_type\x18\x02 \x01(\x0e\x32\x12.dialog.TypingTypeB\r\x8a\xea\x30\t\n\x07visible\"u\n\x1aRequestGetUserLastPresence\x12\x39\n\ruser_out_peer\x18\x01 \x01(\x0b\x32\x13.dialog.UserOutPeerB\r\x8a\xea\x30\t\n\x07visible:\x1c\xe2?\x19\n\x17im.dlg.grpc.GrpcRequest\"\xde\x01\n\x18ResponseUserLastPresence\x12\x34\n\x0elast_online_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x12M\n\x0fnot_found_error\x18\x02 \x01(\x0b\x32\x32.dialog.ResponseUserLastPresence.UserNotFoundErrorH\x00\x1a\x13\n\x11UserNotFoundError:\x1d\xe2?\x1a\n\x18im.dlg.grpc.GrpcResponseB\t\n\x07payload*O\n\nTypingType\x12\x16\n\x12TYPINGTYPE_UNKNOWN\x10\x00\x12\x13\n\x0fTYPINGTYPE_TEXT\x10\x01\x12\x14\n\x10TYPINGTYPE_VOICE\x10\x02*\xd4\x01\n\nDeviceType\x12\x16\n\x12\x44\x45VICETYPE_UNKNOWN\x10\x00\x12\x16\n\x12\x44\x45VICETYPE_GENERIC\x10\x01\x12\x11\n\rDEVICETYPE_PC\x10\x02\x12\x15\n\x11\x44\x45VICETYPE_MOBILE\x10\x03\x12\x15\n\x11\x44\x45VICETYPE_TABLET\x10\x04\x12\x14\n\x10\x44\x45VICETYPE_WATCH\x10\x05\x12\x15\n\x11\x44\x45VICETYPE_MIRROR\x10\x06\x12\x12\n\x0e\x44\x45VICETYPE_CAR\x10\x07\x12\x14\n\x10\x44\x45VICETYPE_TABLE\x10\x08\x32\xd2\x03\n\x08Presence\x12i\n\x0bStartTyping\x12\x1a.dialog.RequestStartTyping\x1a\x14.dialog.ResponseVoid\"(\x82\xd3\xe4\x93\x02\"\"\x1d/v1/grpc/Presence/StartTyping:\x01*\x12\x66\n\nStopTyping\x12\x19.dialog.RequestStopTyping\x1a\x14.dialog.ResponseVoid\"\'\x82\xd3\xe4\x93\x02!\"\x1c/v1/grpc/Presence/StopTyping:\x01*\x12\x63\n\tSetOnline\x12\x18.dialog.RequestSetOnline\x1a\x14.dialog.ResponseVoid\"&\x82\xd3\xe4\x93\x02 \"\x1b/v1/grpc/Presence/SetOnline:\x01*\x12\x8d\x01\n\x13GetUserLastPresence\x12\".dialog.RequestGetUserLastPresence\x1a .dialog.ResponseUserLastPresence\"0\x82\xd3\xe4\x93\x02*\"%/v1/grpc/Presence/GetUserLastPresence:\x01*B\x1e\n\x14im.dlg.grpc.servicesZ\x06\x64ialogb\x06proto3'
  ,
  dependencies=[google_dot_protobuf_dot_timestamp__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,google_dot_api_dot_annotations__pb2.DESCRIPTOR,definitions__pb2.DESCRIPTOR,miscellaneous__pb2.DESCRIPTOR,peers__pb2.DESCRIPTOR,scalapb_dot_scalapb__pb2.DESCRIPTOR,])

_TYPINGTYPE = _descriptor.EnumDescriptor(
  name='TypingType',
  full_name='dialog.TypingType',
  filename=None,
  file=DESCRIPTOR,
  create_key=_descriptor._internal_create_key,
  values=[
    _descriptor.EnumValueDescriptor(
      name='TYPINGTYPE_UNKNOWN', index=0, number=0,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='TYPINGTYPE_TEXT', index=1, number=1,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='TYPINGTYPE_VOICE', index=2, number=2,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=2056,
  serialized_end=2135,
)
_sym_db.RegisterEnumDescriptor(_TYPINGTYPE)

TypingType = enum_type_wrapper.EnumTypeWrapper(_TYPINGTYPE)
_DEVICETYPE = _descriptor.EnumDescriptor(
  name='DeviceType',
  full_name='dialog.DeviceType',
  filename=None,
  file=DESCRIPTOR,
  create_key=_descriptor._internal_create_key,
  values=[
    _descriptor.EnumValueDescriptor(
      name='DEVICETYPE_UNKNOWN', index=0, number=0,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='DEVICETYPE_GENERIC', index=1, number=1,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='DEVICETYPE_PC', index=2, number=2,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='DEVICETYPE_MOBILE', index=3, number=3,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='DEVICETYPE_TABLET', index=4, number=4,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='DEVICETYPE_WATCH', index=5, number=5,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='DEVICETYPE_MIRROR', index=6, number=6,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='DEVICETYPE_CAR', index=7, number=7,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='DEVICETYPE_TABLE', index=8, number=8,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=2138,
  serialized_end=2350,
)
_sym_db.RegisterEnumDescriptor(_DEVICETYPE)

DeviceType = enum_type_wrapper.EnumTypeWrapper(_DEVICETYPE)
TYPINGTYPE_UNKNOWN = 0
TYPINGTYPE_TEXT = 1
TYPINGTYPE_VOICE = 2
DEVICETYPE_UNKNOWN = 0
DEVICETYPE_GENERIC = 1
DEVICETYPE_PC = 2
DEVICETYPE_MOBILE = 3
DEVICETYPE_TABLET = 4
DEVICETYPE_WATCH = 5
DEVICETYPE_MIRROR = 6
DEVICETYPE_CAR = 7
DEVICETYPE_TABLE = 8



_REQUESTSTARTTYPING = _descriptor.Descriptor(
  name='RequestStartTyping',
  full_name='dialog.RequestStartTyping',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='peer', full_name='dialog.RequestStartTyping.peer', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='typing_type', full_name='dialog.RequestStartTyping.typing_type', index=1,
      number=3, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=b'\342?\031\n\027im.dlg.grpc.GrpcRequest',
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=198,
  serialized_end=362,
)


_REQUESTSTOPTYPING = _descriptor.Descriptor(
  name='RequestStopTyping',
  full_name='dialog.RequestStopTyping',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='peer', full_name='dialog.RequestStopTyping.peer', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='typing_type', full_name='dialog.RequestStopTyping.typing_type', index=1,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=b'\342?\031\n\027im.dlg.grpc.GrpcRequest',
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=365,
  serialized_end=516,
)


_REQUESTSETONLINE = _descriptor.Descriptor(
  name='RequestSetOnline',
  full_name='dialog.RequestSetOnline',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='is_online', full_name='dialog.RequestSetOnline.is_online', index=0,
      number=1, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='timeout', full_name='dialog.RequestSetOnline.timeout', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='device_type', full_name='dialog.RequestSetOnline.device_type', index=2,
      number=3, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=b'\342?\031\n\027im.dlg.grpc.GrpcRequest',
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=519,
  serialized_end=695,
)


_UPDATETYPING = _descriptor.Descriptor(
  name='UpdateTyping',
  full_name='dialog.UpdateTyping',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='peer', full_name='dialog.UpdateTyping.peer', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='user_id', full_name='dialog.UpdateTyping.user_id', index=1,
      number=2, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='typing_type', full_name='dialog.UpdateTyping.typing_type', index=2,
      number=3, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=698,
  serialized_end=843,
)


_UPDATETYPINGSTOP = _descriptor.Descriptor(
  name='UpdateTypingStop',
  full_name='dialog.UpdateTypingStop',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='peer', full_name='dialog.UpdateTypingStop.peer', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='user_id', full_name='dialog.UpdateTypingStop.user_id', index=1,
      number=2, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='typing_type', full_name='dialog.UpdateTypingStop.typing_type', index=2,
      number=3, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\010\n\006hidden', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=846,
  serialized_end=994,
)


_UPDATEUSERONLINE = _descriptor.Descriptor(
  name='UpdateUserOnline',
  full_name='dialog.UpdateUserOnline',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='user_id', full_name='dialog.UpdateUserOnline.user_id', index=0,
      number=1, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='device_type', full_name='dialog.UpdateUserOnline.device_type', index=1,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=996,
  serialized_end=1093,
)


_UPDATEUSEROFFLINE = _descriptor.Descriptor(
  name='UpdateUserOffline',
  full_name='dialog.UpdateUserOffline',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='uid', full_name='dialog.UpdateUserOffline.uid', index=0,
      number=1, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='device_type', full_name='dialog.UpdateUserOffline.device_type', index=1,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1095,
  serialized_end=1189,
)


_UPDATEUSERLASTSEEN = _descriptor.Descriptor(
  name='UpdateUserLastSeen',
  full_name='dialog.UpdateUserLastSeen',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='uid', full_name='dialog.UpdateUserLastSeen.uid', index=0,
      number=1, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='last_seen_at', full_name='dialog.UpdateUserLastSeen.last_seen_at', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='device_type', full_name='dialog.UpdateUserLastSeen.device_type', index=2,
      number=3, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='current_time', full_name='dialog.UpdateUserLastSeen.current_time', index=3,
      number=5, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1192,
  serialized_end=1361,
)


_UPDATEGROUPONLINE = _descriptor.Descriptor(
  name='UpdateGroupOnline',
  full_name='dialog.UpdateGroupOnline',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='group_id', full_name='dialog.UpdateGroupOnline.group_id', index=0,
      number=1, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='count', full_name='dialog.UpdateGroupOnline.count', index=1,
      number=2, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='users_id', full_name='dialog.UpdateGroupOnline.users_id', index=2,
      number=3, type=5, cpp_type=1, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1363,
  serialized_end=1478,
)


_UPDATEGROUPTYPING_USERTYPING = _descriptor.Descriptor(
  name='UserTyping',
  full_name='dialog.UpdateGroupTyping.UserTyping',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='user_id', full_name='dialog.UpdateGroupTyping.UserTyping.user_id', index=0,
      number=1, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='typing_type', full_name='dialog.UpdateGroupTyping.UserTyping.typing_type', index=1,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1610,
  serialized_end=1710,
)

_UPDATEGROUPTYPING = _descriptor.Descriptor(
  name='UpdateGroupTyping',
  full_name='dialog.UpdateGroupTyping',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='group_id', full_name='dialog.UpdateGroupTyping.group_id', index=0,
      number=1, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='users_typing', full_name='dialog.UpdateGroupTyping.users_typing', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[_UPDATEGROUPTYPING_USERTYPING, ],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1481,
  serialized_end=1710,
)


_REQUESTGETUSERLASTPRESENCE = _descriptor.Descriptor(
  name='RequestGetUserLastPresence',
  full_name='dialog.RequestGetUserLastPresence',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='user_out_peer', full_name='dialog.RequestGetUserLastPresence.user_out_peer', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=b'\212\3520\t\n\007visible', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=b'\342?\031\n\027im.dlg.grpc.GrpcRequest',
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1712,
  serialized_end=1829,
)


_RESPONSEUSERLASTPRESENCE_USERNOTFOUNDERROR = _descriptor.Descriptor(
  name='UserNotFoundError',
  full_name='dialog.ResponseUserLastPresence.UserNotFoundError',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1993,
  serialized_end=2012,
)

_RESPONSEUSERLASTPRESENCE = _descriptor.Descriptor(
  name='ResponseUserLastPresence',
  full_name='dialog.ResponseUserLastPresence',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='last_online_at', full_name='dialog.ResponseUserLastPresence.last_online_at', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='not_found_error', full_name='dialog.ResponseUserLastPresence.not_found_error', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[_RESPONSEUSERLASTPRESENCE_USERNOTFOUNDERROR, ],
  enum_types=[
  ],
  serialized_options=b'\342?\032\n\030im.dlg.grpc.GrpcResponse',
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='payload', full_name='dialog.ResponseUserLastPresence.payload',
      index=0, containing_type=None,
      create_key=_descriptor._internal_create_key,
    fields=[]),
  ],
  serialized_start=1832,
  serialized_end=2054,
)

_REQUESTSTARTTYPING.fields_by_name['peer'].message_type = peers__pb2._OUTPEER
_REQUESTSTARTTYPING.fields_by_name['typing_type'].enum_type = _TYPINGTYPE
_REQUESTSTOPTYPING.fields_by_name['peer'].message_type = peers__pb2._OUTPEER
_REQUESTSTOPTYPING.fields_by_name['typing_type'].enum_type = _TYPINGTYPE
_REQUESTSETONLINE.fields_by_name['device_type'].enum_type = _DEVICETYPE
_UPDATETYPING.fields_by_name['peer'].message_type = peers__pb2._PEER
_UPDATETYPING.fields_by_name['typing_type'].enum_type = _TYPINGTYPE
_UPDATETYPINGSTOP.fields_by_name['peer'].message_type = peers__pb2._PEER
_UPDATETYPINGSTOP.fields_by_name['typing_type'].enum_type = _TYPINGTYPE
_UPDATEUSERONLINE.fields_by_name['device_type'].enum_type = _DEVICETYPE
_UPDATEUSEROFFLINE.fields_by_name['device_type'].enum_type = _DEVICETYPE
_UPDATEUSERLASTSEEN.fields_by_name['device_type'].enum_type = _DEVICETYPE
_UPDATEGROUPTYPING_USERTYPING.fields_by_name['typing_type'].enum_type = _TYPINGTYPE
_UPDATEGROUPTYPING_USERTYPING.containing_type = _UPDATEGROUPTYPING
_UPDATEGROUPTYPING.fields_by_name['users_typing'].message_type = _UPDATEGROUPTYPING_USERTYPING
_REQUESTGETUSERLASTPRESENCE.fields_by_name['user_out_peer'].message_type = peers__pb2._USEROUTPEER
_RESPONSEUSERLASTPRESENCE_USERNOTFOUNDERROR.containing_type = _RESPONSEUSERLASTPRESENCE
_RESPONSEUSERLASTPRESENCE.fields_by_name['last_online_at'].message_type = google_dot_protobuf_dot_timestamp__pb2._TIMESTAMP
_RESPONSEUSERLASTPRESENCE.fields_by_name['not_found_error'].message_type = _RESPONSEUSERLASTPRESENCE_USERNOTFOUNDERROR
_RESPONSEUSERLASTPRESENCE.oneofs_by_name['payload'].fields.append(
  _RESPONSEUSERLASTPRESENCE.fields_by_name['last_online_at'])
_RESPONSEUSERLASTPRESENCE.fields_by_name['last_online_at'].containing_oneof = _RESPONSEUSERLASTPRESENCE.oneofs_by_name['payload']
_RESPONSEUSERLASTPRESENCE.oneofs_by_name['payload'].fields.append(
  _RESPONSEUSERLASTPRESENCE.fields_by_name['not_found_error'])
_RESPONSEUSERLASTPRESENCE.fields_by_name['not_found_error'].containing_oneof = _RESPONSEUSERLASTPRESENCE.oneofs_by_name['payload']
DESCRIPTOR.message_types_by_name['RequestStartTyping'] = _REQUESTSTARTTYPING
DESCRIPTOR.message_types_by_name['RequestStopTyping'] = _REQUESTSTOPTYPING
DESCRIPTOR.message_types_by_name['RequestSetOnline'] = _REQUESTSETONLINE
DESCRIPTOR.message_types_by_name['UpdateTyping'] = _UPDATETYPING
DESCRIPTOR.message_types_by_name['UpdateTypingStop'] = _UPDATETYPINGSTOP
DESCRIPTOR.message_types_by_name['UpdateUserOnline'] = _UPDATEUSERONLINE
DESCRIPTOR.message_types_by_name['UpdateUserOffline'] = _UPDATEUSEROFFLINE
DESCRIPTOR.message_types_by_name['UpdateUserLastSeen'] = _UPDATEUSERLASTSEEN
DESCRIPTOR.message_types_by_name['UpdateGroupOnline'] = _UPDATEGROUPONLINE
DESCRIPTOR.message_types_by_name['UpdateGroupTyping'] = _UPDATEGROUPTYPING
DESCRIPTOR.message_types_by_name['RequestGetUserLastPresence'] = _REQUESTGETUSERLASTPRESENCE
DESCRIPTOR.message_types_by_name['ResponseUserLastPresence'] = _RESPONSEUSERLASTPRESENCE
DESCRIPTOR.enum_types_by_name['TypingType'] = _TYPINGTYPE
DESCRIPTOR.enum_types_by_name['DeviceType'] = _DEVICETYPE
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

RequestStartTyping = _reflection.GeneratedProtocolMessageType('RequestStartTyping', (_message.Message,), {
  'DESCRIPTOR' : _REQUESTSTARTTYPING,
  '__module__' : 'presence_pb2'
  # @@protoc_insertion_point(class_scope:dialog.RequestStartTyping)
  })
_sym_db.RegisterMessage(RequestStartTyping)

RequestStopTyping = _reflection.GeneratedProtocolMessageType('RequestStopTyping', (_message.Message,), {
  'DESCRIPTOR' : _REQUESTSTOPTYPING,
  '__module__' : 'presence_pb2'
  # @@protoc_insertion_point(class_scope:dialog.RequestStopTyping)
  })
_sym_db.RegisterMessage(RequestStopTyping)

RequestSetOnline = _reflection.GeneratedProtocolMessageType('RequestSetOnline', (_message.Message,), {
  'DESCRIPTOR' : _REQUESTSETONLINE,
  '__module__' : 'presence_pb2'
  # @@protoc_insertion_point(class_scope:dialog.RequestSetOnline)
  })
_sym_db.RegisterMessage(RequestSetOnline)

UpdateTyping = _reflection.GeneratedProtocolMessageType('UpdateTyping', (_message.Message,), {
  'DESCRIPTOR' : _UPDATETYPING,
  '__module__' : 'presence_pb2'
  # @@protoc_insertion_point(class_scope:dialog.UpdateTyping)
  })
_sym_db.RegisterMessage(UpdateTyping)

UpdateTypingStop = _reflection.GeneratedProtocolMessageType('UpdateTypingStop', (_message.Message,), {
  'DESCRIPTOR' : _UPDATETYPINGSTOP,
  '__module__' : 'presence_pb2'
  # @@protoc_insertion_point(class_scope:dialog.UpdateTypingStop)
  })
_sym_db.RegisterMessage(UpdateTypingStop)

UpdateUserOnline = _reflection.GeneratedProtocolMessageType('UpdateUserOnline', (_message.Message,), {
  'DESCRIPTOR' : _UPDATEUSERONLINE,
  '__module__' : 'presence_pb2'
  # @@protoc_insertion_point(class_scope:dialog.UpdateUserOnline)
  })
_sym_db.RegisterMessage(UpdateUserOnline)

UpdateUserOffline = _reflection.GeneratedProtocolMessageType('UpdateUserOffline', (_message.Message,), {
  'DESCRIPTOR' : _UPDATEUSEROFFLINE,
  '__module__' : 'presence_pb2'
  # @@protoc_insertion_point(class_scope:dialog.UpdateUserOffline)
  })
_sym_db.RegisterMessage(UpdateUserOffline)

UpdateUserLastSeen = _reflection.GeneratedProtocolMessageType('UpdateUserLastSeen', (_message.Message,), {
  'DESCRIPTOR' : _UPDATEUSERLASTSEEN,
  '__module__' : 'presence_pb2'
  # @@protoc_insertion_point(class_scope:dialog.UpdateUserLastSeen)
  })
_sym_db.RegisterMessage(UpdateUserLastSeen)

UpdateGroupOnline = _reflection.GeneratedProtocolMessageType('UpdateGroupOnline', (_message.Message,), {
  'DESCRIPTOR' : _UPDATEGROUPONLINE,
  '__module__' : 'presence_pb2'
  # @@protoc_insertion_point(class_scope:dialog.UpdateGroupOnline)
  })
_sym_db.RegisterMessage(UpdateGroupOnline)

UpdateGroupTyping = _reflection.GeneratedProtocolMessageType('UpdateGroupTyping', (_message.Message,), {

  'UserTyping' : _reflection.GeneratedProtocolMessageType('UserTyping', (_message.Message,), {
    'DESCRIPTOR' : _UPDATEGROUPTYPING_USERTYPING,
    '__module__' : 'presence_pb2'
    # @@protoc_insertion_point(class_scope:dialog.UpdateGroupTyping.UserTyping)
    })
  ,
  'DESCRIPTOR' : _UPDATEGROUPTYPING,
  '__module__' : 'presence_pb2'
  # @@protoc_insertion_point(class_scope:dialog.UpdateGroupTyping)
  })
_sym_db.RegisterMessage(UpdateGroupTyping)
_sym_db.RegisterMessage(UpdateGroupTyping.UserTyping)

RequestGetUserLastPresence = _reflection.GeneratedProtocolMessageType('RequestGetUserLastPresence', (_message.Message,), {
  'DESCRIPTOR' : _REQUESTGETUSERLASTPRESENCE,
  '__module__' : 'presence_pb2'
  # @@protoc_insertion_point(class_scope:dialog.RequestGetUserLastPresence)
  })
_sym_db.RegisterMessage(RequestGetUserLastPresence)

ResponseUserLastPresence = _reflection.GeneratedProtocolMessageType('ResponseUserLastPresence', (_message.Message,), {

  'UserNotFoundError' : _reflection.GeneratedProtocolMessageType('UserNotFoundError', (_message.Message,), {
    'DESCRIPTOR' : _RESPONSEUSERLASTPRESENCE_USERNOTFOUNDERROR,
    '__module__' : 'presence_pb2'
    # @@protoc_insertion_point(class_scope:dialog.ResponseUserLastPresence.UserNotFoundError)
    })
  ,
  'DESCRIPTOR' : _RESPONSEUSERLASTPRESENCE,
  '__module__' : 'presence_pb2'
  # @@protoc_insertion_point(class_scope:dialog.ResponseUserLastPresence)
  })
_sym_db.RegisterMessage(ResponseUserLastPresence)
_sym_db.RegisterMessage(ResponseUserLastPresence.UserNotFoundError)


DESCRIPTOR._options = None
_REQUESTSTARTTYPING.fields_by_name['peer']._options = None
_REQUESTSTARTTYPING.fields_by_name['typing_type']._options = None
_REQUESTSTARTTYPING._options = None
_REQUESTSTOPTYPING.fields_by_name['peer']._options = None
_REQUESTSTOPTYPING.fields_by_name['typing_type']._options = None
_REQUESTSTOPTYPING._options = None
_REQUESTSETONLINE.fields_by_name['is_online']._options = None
_REQUESTSETONLINE.fields_by_name['timeout']._options = None
_REQUESTSETONLINE.fields_by_name['device_type']._options = None
_REQUESTSETONLINE._options = None
_UPDATETYPING.fields_by_name['peer']._options = None
_UPDATETYPING.fields_by_name['user_id']._options = None
_UPDATETYPING.fields_by_name['typing_type']._options = None
_UPDATETYPINGSTOP.fields_by_name['peer']._options = None
_UPDATETYPINGSTOP.fields_by_name['user_id']._options = None
_UPDATETYPINGSTOP.fields_by_name['typing_type']._options = None
_UPDATEUSERONLINE.fields_by_name['user_id']._options = None
_UPDATEUSEROFFLINE.fields_by_name['uid']._options = None
_UPDATEUSERLASTSEEN.fields_by_name['uid']._options = None
_UPDATEUSERLASTSEEN.fields_by_name['last_seen_at']._options = None
_UPDATEUSERLASTSEEN.fields_by_name['current_time']._options = None
_UPDATEGROUPONLINE.fields_by_name['group_id']._options = None
_UPDATEGROUPONLINE.fields_by_name['count']._options = None
_UPDATEGROUPONLINE.fields_by_name['users_id']._options = None
_UPDATEGROUPTYPING_USERTYPING.fields_by_name['user_id']._options = None
_UPDATEGROUPTYPING_USERTYPING.fields_by_name['typing_type']._options = None
_UPDATEGROUPTYPING.fields_by_name['group_id']._options = None
_UPDATEGROUPTYPING.fields_by_name['users_typing']._options = None
_REQUESTGETUSERLASTPRESENCE.fields_by_name['user_out_peer']._options = None
_REQUESTGETUSERLASTPRESENCE._options = None
_RESPONSEUSERLASTPRESENCE._options = None

_PRESENCE = _descriptor.ServiceDescriptor(
  name='Presence',
  full_name='dialog.Presence',
  file=DESCRIPTOR,
  index=0,
  serialized_options=None,
  create_key=_descriptor._internal_create_key,
  serialized_start=2353,
  serialized_end=2819,
  methods=[
  _descriptor.MethodDescriptor(
    name='StartTyping',
    full_name='dialog.Presence.StartTyping',
    index=0,
    containing_service=None,
    input_type=_REQUESTSTARTTYPING,
    output_type=miscellaneous__pb2._RESPONSEVOID,
    serialized_options=b'\202\323\344\223\002\"\"\035/v1/grpc/Presence/StartTyping:\001*',
    create_key=_descriptor._internal_create_key,
  ),
  _descriptor.MethodDescriptor(
    name='StopTyping',
    full_name='dialog.Presence.StopTyping',
    index=1,
    containing_service=None,
    input_type=_REQUESTSTOPTYPING,
    output_type=miscellaneous__pb2._RESPONSEVOID,
    serialized_options=b'\202\323\344\223\002!\"\034/v1/grpc/Presence/StopTyping:\001*',
    create_key=_descriptor._internal_create_key,
  ),
  _descriptor.MethodDescriptor(
    name='SetOnline',
    full_name='dialog.Presence.SetOnline',
    index=2,
    containing_service=None,
    input_type=_REQUESTSETONLINE,
    output_type=miscellaneous__pb2._RESPONSEVOID,
    serialized_options=b'\202\323\344\223\002 \"\033/v1/grpc/Presence/SetOnline:\001*',
    create_key=_descriptor._internal_create_key,
  ),
  _descriptor.MethodDescriptor(
    name='GetUserLastPresence',
    full_name='dialog.Presence.GetUserLastPresence',
    index=3,
    containing_service=None,
    input_type=_REQUESTGETUSERLASTPRESENCE,
    output_type=_RESPONSEUSERLASTPRESENCE,
    serialized_options=b'\202\323\344\223\002*\"%/v1/grpc/Presence/GetUserLastPresence:\001*',
    create_key=_descriptor._internal_create_key,
  ),
])
_sym_db.RegisterServiceDescriptor(_PRESENCE)

DESCRIPTOR.services_by_name['Presence'] = _PRESENCE

# @@protoc_insertion_point(module_scope)
