code: def begin_connection(self, connection_id, internal_id, callback, context, timeout):
          
  
          data = {
              'callback': callback,
              'connection_id': connection_id,
              'internal_id': internal_id,
              'context': context
          }
  
          action = ConnectionAction('begin_connection', data, timeout=timeout, sync=False)
          self._actions.put(action)
docs: Asynchronously begin a connection attempt
  
          Args:
              connection_id (int): The external connection id
              internal_id (string): An internal identifier for the connection
              callback (callable): The function to be called when the connection
                  attempt finishes
              context (dict): Additional information to associate with this context
              timeout (float): How long to allow this connection attempt to proceed
                  without timing it out