def _send_data( self, data: Dict[Any, Any], result_id: Optional[str] = None, block: bool = False, ) -> AsyncResult: """ Sends data to tdlib. If `block`is True, waits for the result """ if '@extra' not in data: data['@extra'] = {} if not result_id and 'request_id' in data['@extra']: result_id = data['@extra']['request_id'] async_result = AsyncResult(client=self, result_id=result_id) data['@extra']['request_id'] = async_result.id self._results[async_result.id] = async_result self._tdjson.send(data) async_result.request = data if block: async_result.wait(raise_exc=True) return async_result
def _send_data(self, data: dict, result_id: str = None) -> AsyncResult: if '@extra' not in data: data['@extra'] = {} if not result_id and 'request_id' in data['@extra']: result_id = data['@extra']['request_id'] async_result = AsyncResult(client=self, result_id=result_id) data['@extra']['request_id'] = async_result.id self._tdjson.send(data) self._results[async_result.id] = async_result async_result.request = data return async_result