Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp3360785ybt; Tue, 30 Jun 2020 00:20:38 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxKAa+2hvqBsKwPo+Fvn82hiKXKrFY+kHRu8+LUHyE8gSwFj37uD5lStWt18KUG6We6aeQD X-Received: by 2002:a50:ec8f:: with SMTP id e15mr21046283edr.70.1593501638067; Tue, 30 Jun 2020 00:20:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1593501638; cv=none; d=google.com; s=arc-20160816; b=dV9GBcBs4V/YqBvriWJFRksQf53YCVoLe7zGrwysWkn/GcKhKeMjBEIXV+PBl1RBtd buzKDrJ06ifedBjo5Ce5bDOd6qaD1TBtpMfdZUFm2Y/6xsZ/wAcUOmPVacIAst/R20Ic BxyV1za1qgbqFaGLAK0Zj8jDcl1P1U8LMDlWeLDvSDpW8Hyo0aulcdPI9RYJrPWfyrw+ UuImkEktWbdQmaNPlEHEklPP5w7ZRm9fsaTB2W9h8mhPiI/oAS+h0z7wjG4MqIcJ+Xb7 2q0Kr2fuEXU2WBbQsQ18HQquoz537yLnlo7SYKLRkRV/7lAOL7VYMQb+72iUjdE3doMI PhLg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :ironport-sdr:ironport-sdr; bh=lEWN1OH1e0d1BMam2EPxV5gjTFP1pVgHCmqHQXsQZRo=; b=H1zJXgOPK/nyjvHZtH019/ErhEcz5gQu2vxe/xo/EM8TBCRhAehfZAHpJ/R0kzsOr4 YMeUHnBOMeQKw2dBfB0z9QbWUqiyaSmVOnvrqgkK2PI70otYRrAZBRW4U9VT1TgBqjIz AMMIu/EDdP99u5nZ5MhdBnkiG7VPKlMsbxlbI6qXpm3GJk+6JFUNDokTdEXCJfXlnsaR NLxR0fm2ZeWdp2+75G80g60RiytVEjpqA6wkisT0V3iRZF5Pm/FqAx4pofHJpP+xzU7I HaZ866Y1S+OwmtbIkXnR6cOXdmP8ejh81cShReh1Yd654sPOi5q98GYUXc10ydN9gFSr /4kQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-bluetooth-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id n1si1296777ejc.134.2020.06.30.00.19.58; Tue, 30 Jun 2020 00:20:38 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-bluetooth-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730772AbgF3HTj (ORCPT + 99 others); Tue, 30 Jun 2020 03:19:39 -0400 Received: from mga18.intel.com ([134.134.136.126]:22972 "EHLO mga18.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730637AbgF3HTi (ORCPT ); Tue, 30 Jun 2020 03:19:38 -0400 IronPort-SDR: PCUva+ChqwvKwLZxJIfA/y3pJue23KbZR8Y7qoQQySn9sCOMdGPUMV7l5uTEBuclS7GKCBrjk+ CmUliHyslYjQ== X-IronPort-AV: E=McAfee;i="6000,8403,9666"; a="133613600" X-IronPort-AV: E=Sophos;i="5.75,296,1589266800"; d="scan'208";a="133613600" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Jun 2020 00:19:38 -0700 IronPort-SDR: jbDsrz4VkK7LuNbGdpzqJm5OOFDZdpVIg+or/QHeOukAsjtEGJVAiQWzTHOfS3hPdK03Ip21St eJA7Gu8x258A== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,296,1589266800"; d="scan'208";a="355698463" Received: from sdkini-mobl1.amr.corp.intel.com (HELO ingas-nuc1.sea.intel.com) ([10.254.110.226]) by orsmga001.jf.intel.com with ESMTP; 30 Jun 2020 00:19:38 -0700 From: Inga Stotland To: linux-bluetooth@vger.kernel.org Cc: brian.gix@intel.com, michal.lowas-rzechonek@silvair.com, Inga Stotland Subject: [PATCH BlueZ 1/4] doc/mesh-api: Add dictionary to model properties Date: Tue, 30 Jun 2020 00:19:33 -0700 Message-Id: <20200630071936.40437-2-inga.stotland@intel.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200630071936.40437-1-inga.stotland@intel.com> References: <20200630071936.40437-1-inga.stotland@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-bluetooth-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-bluetooth@vger.kernel.org This changes the signature of "Models" and "VendorModels" properties on org.bluez.mesh.Element1 interface to contain a dictionary with model options. Models: signature change "aq" -> "a(qa{sv})" VendorModels: signature change "a(qq)" -> "a(qqa{sv})" Currently, the defined keywords for the options dictionary are "Publish" - indicates whether the model supports publication mechanism. If not present, publication is enabled. "Subscribe" - indicates whether the model supports subscription mechanism. If not present, subscriptions are enabled. The dictionary allowed to be empty. --- doc/mesh-api.txt | 40 ++++++++++++++++++++++++++++++++++------ 1 file changed, 34 insertions(+), 6 deletions(-) diff --git a/doc/mesh-api.txt b/doc/mesh-api.txt index 3be11e342..495f95b0b 100644 --- a/doc/mesh-api.txt +++ b/doc/mesh-api.txt @@ -888,15 +888,43 @@ Properties: Element index. It is required that the application follows sequential numbering scheme for the elements, starting with 0. - array{uint16} Models [read-only] + array{(uint16 id, dict caps)} Models [read-only] - An array of SIG Model Identifiers. The array may be empty. + An array of SIG Models: - array{(uint16, uint16)} VendorModels [read-only] + id - SIG Model Identifier - An array of pairs (vendor, model ID): vendor is a 16-bit - Bluetooth-assigned Company ID as defined by Bluetooth SIG. - model ID is a 16-bit vendor-assigned Model Identifier + options - a dictionary that may contain additional model + info. The following keys are defined: + + boolean Publish - indicates whether the model + supports publication mechanism. If not + present, publication is enabled. + + boolean Subscribe - indicates whether the model + supports subscription mechanism. If not + present, subscriptons are enabled. + + The array may be empty. + + + array{(uint16 vendor, uint16 id, dict options)} VendorModels [read-only] + + An array of Vendor Models: + + vendor - a 16-bit Bluetooth-assigned Company ID as + defined by Bluetooth SIG. + + id - a 16-bit vendor-assigned Model Identifier + + options - a dictionary that may contain additional model + info. The following keys are defined: + + boolean Publish - indicates whether the model + supports publication mechanism + + boolean Subscribe - indicates whether the model + supports subscription mechanism The array may be empty. -- 2.26.2