async def METHOD_NAME(  # noqa: PLR0913
    rabbitmq_client: RabbitMQClient,
    service_run_id: str,
    *,
    wallet_id: WalletID | None,
    wallet_name: str | None,
    pricing_plan_id: int | None,
    pricing_detail_id: int | None,
    product_name: str,
    simcore_user_agent: str,
    user_id: UserID,
    user_email: str,
    project_id: ProjectID,
    project_name: str,
    node_id: NodeID,
    node_name: str,
    service_key: ServiceKey,
    service_version: ServiceVersion,
    service_type: ServiceType,
    service_resources: ServiceResourcesDict,
    service_additional_metadata: dict[str, Any],
) -> None:
    message = RabbitResourceTrackingStartedMessage(
        service_run_id=service_run_id,
        wallet_id=wallet_id,
        wallet_name=wallet_name,
        pricing_plan_id=pricing_plan_id,
        pricing_detail_id=pricing_detail_id,
        product_name=product_name,
        simcore_user_agent=simcore_user_agent,
        user_id=user_id,
        user_email=user_email,
        project_id=project_id,
        project_name=project_name,
        node_id=node_id,
        node_name=node_name,
        service_key=service_key,
        service_version=service_version,
        service_type=service_type,
        service_resources=service_resources,
        service_additional_metadata=service_additional_metadata,
    )
    await rabbitmq_client.publish(message.channel_name, message)