code: async def open_clients_async(self):
          
          await self.partition_context.get_initial_offset_async()
          # Create event hub client and receive handler and set options
          self.eh_client = EventHubClientAsync(
              self.host.eh_config.client_address,
              debug=self.host.eph_options.debug_trace,
              http_proxy=self.host.eph_options.http_proxy)
          self.partition_receive_handler = self.eh_client.add_async_receiver(
              self.partition_context.consumer_group_name,
              self.partition_context.partition_id,
              Offset(self.partition_context.offset),
              prefetch=self.host.eph_options.prefetch_count,
              keep_alive=self.host.eph_options.keep_alive_interval,
              auto_reconnect=self.host.eph_options.auto_reconnect_on_error,
              loop=self.loop)
          self.partition_receiver = PartitionReceiver(self)
docs: Responsible for establishing connection to event hub client
          throws EventHubsException, IOException, InterruptedException, ExecutionException.