def transmit(self, payload, **kwargs):
items_to_create, items_to_update, items_to_delete, transmission_map = self._partition_items(payload)<EOL>self._prepare_items_for_delete(items_to_delete)<EOL>prepared_items = {}<EOL>prepared_items.update(items_to_create)<EOL>prepared_items.update(items_to_update)<EOL>prepared_items.update(items_to_delete)<EOL>skip_metadata_transmission = False<EOL>for chunk in chunks(prepared_items, self.enterprise_configuration.transmission_chunk_size):<EOL><INDENT>chunked_items = list(chunk.values())<EOL>if skip_metadata_transmission:<EOL><INDENT>self._remove_failed_items(chunked_items, items_to_create, items_to_update, items_to_delete)<EOL><DEDENT>else:<EOL><INDENT>try:<EOL><INDENT>self.client.update_content_metadata(self._serialize_items(chunked_items))<EOL><DEDENT>except ClientError as exc:<EOL><INDENT>LOGGER.error(<EOL>'<STR_LIT>',<EOL>len(chunked_items),<EOL>self.enterprise_configuration.enterprise_customer.name,<EOL>self.enterprise_configuration.channel_code,<EOL>)<EOL>LOGGER.error(exc)<EOL>self._remove_failed_items(chunked_items, items_to_create, items_to_update, items_to_delete)<EOL>skip_metadata_transmission = True<EOL><DEDENT><DEDENT><DEDENT>self._create_transmissions(items_to_create)<EOL>self._update_transmissions(items_to_update, transmission_map)<EOL>self._delete_transmissions(items_to_delete.keys())<EOL>
Transmit content metadata items to the integrated channel.