# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
"""Client and server classes corresponding to protobuf-defined services."""
import grpc

import web_pb2 as web__pb2


class GrpcWebServiceStub(object):
    """Missing associated documentation comment in .proto file."""

    def __init__(self, channel):
        """Constructor.

        Args:
            channel: A grpc.Channel.
        """
        self.AuthToken = channel.unary_unary(
                '/com.elarian.hera.proto.GrpcWebService/AuthToken',
                request_serializer=web__pb2.AuthTokenRequest.SerializeToString,
                response_deserializer=web__pb2.AuthTokenReply.FromString,
                )
        self.GetCustomerState = channel.unary_unary(
                '/com.elarian.hera.proto.GrpcWebService/GetCustomerState',
                request_serializer=web__pb2.GetCustomerStateRequest.SerializeToString,
                response_deserializer=web__pb2.GetCustomerStateReply.FromString,
                )
        self.AdoptCustomerState = channel.unary_unary(
                '/com.elarian.hera.proto.GrpcWebService/AdoptCustomerState',
                request_serializer=web__pb2.AdoptCustomerStateRequest.SerializeToString,
                response_deserializer=web__pb2.UpdateCustomerStateReply.FromString,
                )
        self.AddCustomerReminder = channel.unary_unary(
                '/com.elarian.hera.proto.GrpcWebService/AddCustomerReminder',
                request_serializer=web__pb2.AddCustomerReminderRequest.SerializeToString,
                response_deserializer=web__pb2.UpdateCustomerStateReply.FromString,
                )
        self.AddCustomerReminderByTag = channel.unary_unary(
                '/com.elarian.hera.proto.GrpcWebService/AddCustomerReminderByTag',
                request_serializer=web__pb2.AddCustomerReminderTagRequest.SerializeToString,
                response_deserializer=web__pb2.TagCommandReply.FromString,
                )
        self.CancelCustomerReminder = channel.unary_unary(
                '/com.elarian.hera.proto.GrpcWebService/CancelCustomerReminder',
                request_serializer=web__pb2.CancelCustomerReminderRequest.SerializeToString,
                response_deserializer=web__pb2.UpdateCustomerStateReply.FromString,
                )
        self.CancelCustomerReminderByTag = channel.unary_unary(
                '/com.elarian.hera.proto.GrpcWebService/CancelCustomerReminderByTag',
                request_serializer=web__pb2.CancelCustomerReminderTagRequest.SerializeToString,
                response_deserializer=web__pb2.TagCommandReply.FromString,
                )
        self.UpdateCustomerTag = channel.unary_unary(
                '/com.elarian.hera.proto.GrpcWebService/UpdateCustomerTag',
                request_serializer=web__pb2.UpdateCustomerTagRequest.SerializeToString,
                response_deserializer=web__pb2.UpdateCustomerStateReply.FromString,
                )
        self.DeleteCustomerTag = channel.unary_unary(
                '/com.elarian.hera.proto.GrpcWebService/DeleteCustomerTag',
                request_serializer=web__pb2.DeleteCustomerTagRequest.SerializeToString,
                response_deserializer=web__pb2.UpdateCustomerStateReply.FromString,
                )
        self.UpdateCustomerSecondaryId = channel.unary_unary(
                '/com.elarian.hera.proto.GrpcWebService/UpdateCustomerSecondaryId',
                request_serializer=web__pb2.UpdateCustomerSecondaryIdRequest.SerializeToString,
                response_deserializer=web__pb2.UpdateCustomerStateReply.FromString,
                )
        self.DeleteCustomerSecondaryId = channel.unary_unary(
                '/com.elarian.hera.proto.GrpcWebService/DeleteCustomerSecondaryId',
                request_serializer=web__pb2.DeleteCustomerSecondaryIdRequest.SerializeToString,
                response_deserializer=web__pb2.UpdateCustomerStateReply.FromString,
                )
        self.UpdateCustomerMetadata = channel.unary_unary(
                '/com.elarian.hera.proto.GrpcWebService/UpdateCustomerMetadata',
                request_serializer=web__pb2.UpdateCustomerMetadataRequest.SerializeToString,
                response_deserializer=web__pb2.UpdateCustomerStateReply.FromString,
                )
        self.DeleteCustomerMetadata = channel.unary_unary(
                '/com.elarian.hera.proto.GrpcWebService/DeleteCustomerMetadata',
                request_serializer=web__pb2.DeleteCustomerMetadataRequest.SerializeToString,
                response_deserializer=web__pb2.UpdateCustomerStateReply.FromString,
                )
        self.SendMessage = channel.unary_unary(
                '/com.elarian.hera.proto.GrpcWebService/SendMessage',
                request_serializer=web__pb2.SendMessageRequest.SerializeToString,
                response_deserializer=web__pb2.SendMessageReply.FromString,
                )
        self.SendMessageByTag = channel.unary_unary(
                '/com.elarian.hera.proto.GrpcWebService/SendMessageByTag',
                request_serializer=web__pb2.SendMessageTagRequest.SerializeToString,
                response_deserializer=web__pb2.TagCommandReply.FromString,
                )
        self.ReplyToMessage = channel.unary_unary(
                '/com.elarian.hera.proto.GrpcWebService/ReplyToMessage',
                request_serializer=web__pb2.ReplyToMessageRequest.SerializeToString,
                response_deserializer=web__pb2.SendMessageReply.FromString,
                )
        self.MessagingConsent = channel.unary_unary(
                '/com.elarian.hera.proto.GrpcWebService/MessagingConsent',
                request_serializer=web__pb2.MessagingConsentRequest.SerializeToString,
                response_deserializer=web__pb2.MessagingConsentReply.FromString,
                )
        self.SendPayment = channel.unary_unary(
                '/com.elarian.hera.proto.GrpcWebService/SendPayment',
                request_serializer=web__pb2.SendPaymentRequest.SerializeToString,
                response_deserializer=web__pb2.SendPaymentReply.FromString,
                )
        self.CheckoutPayment = channel.unary_unary(
                '/com.elarian.hera.proto.GrpcWebService/CheckoutPayment',
                request_serializer=web__pb2.CheckoutPaymentRequest.SerializeToString,
                response_deserializer=web__pb2.CheckoutPaymentReply.FromString,
                )
        self.MakeVoiceCall = channel.unary_unary(
                '/com.elarian.hera.proto.GrpcWebService/MakeVoiceCall',
                request_serializer=web__pb2.MakeVoiceCallRequest.SerializeToString,
                response_deserializer=web__pb2.MakeVoiceCallReply.FromString,
                )
        self.StreamNotifications = channel.unary_stream(
                '/com.elarian.hera.proto.GrpcWebService/StreamNotifications',
                request_serializer=web__pb2.StreamNotificationRequest.SerializeToString,
                response_deserializer=web__pb2.WebhookRequest.FromString,
                )
        self.SendWebhookResponse = channel.unary_unary(
                '/com.elarian.hera.proto.GrpcWebService/SendWebhookResponse',
                request_serializer=web__pb2.WebhookResponse.SerializeToString,
                response_deserializer=web__pb2.WebhookResponseReply.FromString,
                )


class GrpcWebServiceServicer(object):
    """Missing associated documentation comment in .proto file."""

    def AuthToken(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetCustomerState(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def AdoptCustomerState(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def AddCustomerReminder(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def AddCustomerReminderByTag(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CancelCustomerReminder(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CancelCustomerReminderByTag(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UpdateCustomerTag(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteCustomerTag(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UpdateCustomerSecondaryId(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteCustomerSecondaryId(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UpdateCustomerMetadata(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteCustomerMetadata(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SendMessage(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SendMessageByTag(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ReplyToMessage(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def MessagingConsent(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SendPayment(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CheckoutPayment(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def MakeVoiceCall(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def StreamNotifications(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SendWebhookResponse(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')


def add_GrpcWebServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'AuthToken': grpc.unary_unary_rpc_method_handler(
                    servicer.AuthToken,
                    request_deserializer=web__pb2.AuthTokenRequest.FromString,
                    response_serializer=web__pb2.AuthTokenReply.SerializeToString,
            ),
            'GetCustomerState': grpc.unary_unary_rpc_method_handler(
                    servicer.GetCustomerState,
                    request_deserializer=web__pb2.GetCustomerStateRequest.FromString,
                    response_serializer=web__pb2.GetCustomerStateReply.SerializeToString,
            ),
            'AdoptCustomerState': grpc.unary_unary_rpc_method_handler(
                    servicer.AdoptCustomerState,
                    request_deserializer=web__pb2.AdoptCustomerStateRequest.FromString,
                    response_serializer=web__pb2.UpdateCustomerStateReply.SerializeToString,
            ),
            'AddCustomerReminder': grpc.unary_unary_rpc_method_handler(
                    servicer.AddCustomerReminder,
                    request_deserializer=web__pb2.AddCustomerReminderRequest.FromString,
                    response_serializer=web__pb2.UpdateCustomerStateReply.SerializeToString,
            ),
            'AddCustomerReminderByTag': grpc.unary_unary_rpc_method_handler(
                    servicer.AddCustomerReminderByTag,
                    request_deserializer=web__pb2.AddCustomerReminderTagRequest.FromString,
                    response_serializer=web__pb2.TagCommandReply.SerializeToString,
            ),
            'CancelCustomerReminder': grpc.unary_unary_rpc_method_handler(
                    servicer.CancelCustomerReminder,
                    request_deserializer=web__pb2.CancelCustomerReminderRequest.FromString,
                    response_serializer=web__pb2.UpdateCustomerStateReply.SerializeToString,
            ),
            'CancelCustomerReminderByTag': grpc.unary_unary_rpc_method_handler(
                    servicer.CancelCustomerReminderByTag,
                    request_deserializer=web__pb2.CancelCustomerReminderTagRequest.FromString,
                    response_serializer=web__pb2.TagCommandReply.SerializeToString,
            ),
            'UpdateCustomerTag': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateCustomerTag,
                    request_deserializer=web__pb2.UpdateCustomerTagRequest.FromString,
                    response_serializer=web__pb2.UpdateCustomerStateReply.SerializeToString,
            ),
            'DeleteCustomerTag': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteCustomerTag,
                    request_deserializer=web__pb2.DeleteCustomerTagRequest.FromString,
                    response_serializer=web__pb2.UpdateCustomerStateReply.SerializeToString,
            ),
            'UpdateCustomerSecondaryId': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateCustomerSecondaryId,
                    request_deserializer=web__pb2.UpdateCustomerSecondaryIdRequest.FromString,
                    response_serializer=web__pb2.UpdateCustomerStateReply.SerializeToString,
            ),
            'DeleteCustomerSecondaryId': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteCustomerSecondaryId,
                    request_deserializer=web__pb2.DeleteCustomerSecondaryIdRequest.FromString,
                    response_serializer=web__pb2.UpdateCustomerStateReply.SerializeToString,
            ),
            'UpdateCustomerMetadata': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateCustomerMetadata,
                    request_deserializer=web__pb2.UpdateCustomerMetadataRequest.FromString,
                    response_serializer=web__pb2.UpdateCustomerStateReply.SerializeToString,
            ),
            'DeleteCustomerMetadata': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteCustomerMetadata,
                    request_deserializer=web__pb2.DeleteCustomerMetadataRequest.FromString,
                    response_serializer=web__pb2.UpdateCustomerStateReply.SerializeToString,
            ),
            'SendMessage': grpc.unary_unary_rpc_method_handler(
                    servicer.SendMessage,
                    request_deserializer=web__pb2.SendMessageRequest.FromString,
                    response_serializer=web__pb2.SendMessageReply.SerializeToString,
            ),
            'SendMessageByTag': grpc.unary_unary_rpc_method_handler(
                    servicer.SendMessageByTag,
                    request_deserializer=web__pb2.SendMessageTagRequest.FromString,
                    response_serializer=web__pb2.TagCommandReply.SerializeToString,
            ),
            'ReplyToMessage': grpc.unary_unary_rpc_method_handler(
                    servicer.ReplyToMessage,
                    request_deserializer=web__pb2.ReplyToMessageRequest.FromString,
                    response_serializer=web__pb2.SendMessageReply.SerializeToString,
            ),
            'MessagingConsent': grpc.unary_unary_rpc_method_handler(
                    servicer.MessagingConsent,
                    request_deserializer=web__pb2.MessagingConsentRequest.FromString,
                    response_serializer=web__pb2.MessagingConsentReply.SerializeToString,
            ),
            'SendPayment': grpc.unary_unary_rpc_method_handler(
                    servicer.SendPayment,
                    request_deserializer=web__pb2.SendPaymentRequest.FromString,
                    response_serializer=web__pb2.SendPaymentReply.SerializeToString,
            ),
            'CheckoutPayment': grpc.unary_unary_rpc_method_handler(
                    servicer.CheckoutPayment,
                    request_deserializer=web__pb2.CheckoutPaymentRequest.FromString,
                    response_serializer=web__pb2.CheckoutPaymentReply.SerializeToString,
            ),
            'MakeVoiceCall': grpc.unary_unary_rpc_method_handler(
                    servicer.MakeVoiceCall,
                    request_deserializer=web__pb2.MakeVoiceCallRequest.FromString,
                    response_serializer=web__pb2.MakeVoiceCallReply.SerializeToString,
            ),
            'StreamNotifications': grpc.unary_stream_rpc_method_handler(
                    servicer.StreamNotifications,
                    request_deserializer=web__pb2.StreamNotificationRequest.FromString,
                    response_serializer=web__pb2.WebhookRequest.SerializeToString,
            ),
            'SendWebhookResponse': grpc.unary_unary_rpc_method_handler(
                    servicer.SendWebhookResponse,
                    request_deserializer=web__pb2.WebhookResponse.FromString,
                    response_serializer=web__pb2.WebhookResponseReply.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'com.elarian.hera.proto.GrpcWebService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


 # This class is part of an EXPERIMENTAL API.
class GrpcWebService(object):
    """Missing associated documentation comment in .proto file."""

    @staticmethod
    def AuthToken(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/com.elarian.hera.proto.GrpcWebService/AuthToken',
            web__pb2.AuthTokenRequest.SerializeToString,
            web__pb2.AuthTokenReply.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetCustomerState(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/com.elarian.hera.proto.GrpcWebService/GetCustomerState',
            web__pb2.GetCustomerStateRequest.SerializeToString,
            web__pb2.GetCustomerStateReply.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def AdoptCustomerState(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/com.elarian.hera.proto.GrpcWebService/AdoptCustomerState',
            web__pb2.AdoptCustomerStateRequest.SerializeToString,
            web__pb2.UpdateCustomerStateReply.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def AddCustomerReminder(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/com.elarian.hera.proto.GrpcWebService/AddCustomerReminder',
            web__pb2.AddCustomerReminderRequest.SerializeToString,
            web__pb2.UpdateCustomerStateReply.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def AddCustomerReminderByTag(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/com.elarian.hera.proto.GrpcWebService/AddCustomerReminderByTag',
            web__pb2.AddCustomerReminderTagRequest.SerializeToString,
            web__pb2.TagCommandReply.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CancelCustomerReminder(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/com.elarian.hera.proto.GrpcWebService/CancelCustomerReminder',
            web__pb2.CancelCustomerReminderRequest.SerializeToString,
            web__pb2.UpdateCustomerStateReply.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CancelCustomerReminderByTag(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/com.elarian.hera.proto.GrpcWebService/CancelCustomerReminderByTag',
            web__pb2.CancelCustomerReminderTagRequest.SerializeToString,
            web__pb2.TagCommandReply.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateCustomerTag(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/com.elarian.hera.proto.GrpcWebService/UpdateCustomerTag',
            web__pb2.UpdateCustomerTagRequest.SerializeToString,
            web__pb2.UpdateCustomerStateReply.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteCustomerTag(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/com.elarian.hera.proto.GrpcWebService/DeleteCustomerTag',
            web__pb2.DeleteCustomerTagRequest.SerializeToString,
            web__pb2.UpdateCustomerStateReply.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateCustomerSecondaryId(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/com.elarian.hera.proto.GrpcWebService/UpdateCustomerSecondaryId',
            web__pb2.UpdateCustomerSecondaryIdRequest.SerializeToString,
            web__pb2.UpdateCustomerStateReply.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteCustomerSecondaryId(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/com.elarian.hera.proto.GrpcWebService/DeleteCustomerSecondaryId',
            web__pb2.DeleteCustomerSecondaryIdRequest.SerializeToString,
            web__pb2.UpdateCustomerStateReply.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateCustomerMetadata(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/com.elarian.hera.proto.GrpcWebService/UpdateCustomerMetadata',
            web__pb2.UpdateCustomerMetadataRequest.SerializeToString,
            web__pb2.UpdateCustomerStateReply.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteCustomerMetadata(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/com.elarian.hera.proto.GrpcWebService/DeleteCustomerMetadata',
            web__pb2.DeleteCustomerMetadataRequest.SerializeToString,
            web__pb2.UpdateCustomerStateReply.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SendMessage(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/com.elarian.hera.proto.GrpcWebService/SendMessage',
            web__pb2.SendMessageRequest.SerializeToString,
            web__pb2.SendMessageReply.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SendMessageByTag(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/com.elarian.hera.proto.GrpcWebService/SendMessageByTag',
            web__pb2.SendMessageTagRequest.SerializeToString,
            web__pb2.TagCommandReply.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ReplyToMessage(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/com.elarian.hera.proto.GrpcWebService/ReplyToMessage',
            web__pb2.ReplyToMessageRequest.SerializeToString,
            web__pb2.SendMessageReply.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def MessagingConsent(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/com.elarian.hera.proto.GrpcWebService/MessagingConsent',
            web__pb2.MessagingConsentRequest.SerializeToString,
            web__pb2.MessagingConsentReply.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SendPayment(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/com.elarian.hera.proto.GrpcWebService/SendPayment',
            web__pb2.SendPaymentRequest.SerializeToString,
            web__pb2.SendPaymentReply.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CheckoutPayment(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/com.elarian.hera.proto.GrpcWebService/CheckoutPayment',
            web__pb2.CheckoutPaymentRequest.SerializeToString,
            web__pb2.CheckoutPaymentReply.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def MakeVoiceCall(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/com.elarian.hera.proto.GrpcWebService/MakeVoiceCall',
            web__pb2.MakeVoiceCallRequest.SerializeToString,
            web__pb2.MakeVoiceCallReply.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def StreamNotifications(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_stream(request, target, '/com.elarian.hera.proto.GrpcWebService/StreamNotifications',
            web__pb2.StreamNotificationRequest.SerializeToString,
            web__pb2.WebhookRequest.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SendWebhookResponse(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/com.elarian.hera.proto.GrpcWebService/SendWebhookResponse',
            web__pb2.WebhookResponse.SerializeToString,
            web__pb2.WebhookResponseReply.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)
