Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp19184ybt; Tue, 30 Jun 2020 13:56:27 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyhtgOib+/TzfXQ90497aKdJ9I7KWrJB2HMZKB269tl9Oe58hcIr5riAaCAjClpDsBZuYyB X-Received: by 2002:a05:6402:b84:: with SMTP id cf4mr1512370edb.21.1593550196909; Tue, 30 Jun 2020 13:49:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1593550196; cv=none; d=google.com; s=arc-20160816; b=K8bKRhJ5dkWg/8Q60cdjCip/hhC0sECCTonmnR+GgQsTE63EgzfLqEbrqt4Ck+FVzp RblKQlgnxLjZdIlIsmzMUwyI1Pt/jtdJZACPcRSN23AAOc5LeWOhROB5Vw/sBlJDtBwC WnwHiwk9gwX5PIs3t9NJixDCbA4MD4+gdqCIpo3Pck/1UfL10G9NObrm4o+ptOAfT2Mo k4ezOBGxkigz+/7+ghkZNdQDMVASL5Q+NT0wzOfEs2G257DeVCVAHirdSHMjTmAQNLBG nrSjSofw6PjTgZSpaFSRJzoh/lQPB5lqoigqGVoMStOXGtoUHKqUhmhKwxa4pYNyVOvZ waxQ== 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=mU4XpQdlzbfv1VXAC/VilArfJNn4QXbJBBqwXDVnL1eNUeZcMo2zGpkcEV3O3KB75H of0CgVZKPdLoa57uRw86bsWsNgS+/8VLWHtgFUR1H4V34Ey8eOowCGykeaRPhiiXKpWA bojx1DOxT1+l+8uV9BZ8oRp414aWTilywE6n+q/LH6tAEOvR6otqVakY9mDAe7Gy0vpE VFu3je6ywjJFZKH/5g+7iSNKfqi5y4/lel3lZWf4qw1+sR9KvqhZs6XVqs6qVNGxczQd tF2uNKT6dnnEhcl196qKuXTF6KF8nniu8yCkgn3nc7MbB0qBdEZoIvg48PS1h7tSSnyI tasA== 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 i6si2433147edv.52.2020.06.30.13.49.32; Tue, 30 Jun 2020 13:49:56 -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 S1726247AbgF3S4U (ORCPT + 99 others); Tue, 30 Jun 2020 14:56:20 -0400 Received: from mga05.intel.com ([192.55.52.43]:57132 "EHLO mga05.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726207AbgF3S4U (ORCPT ); Tue, 30 Jun 2020 14:56:20 -0400 IronPort-SDR: lSjb/vKyQfKfsiquppXIKvMymr3s/C6MqKMLtL4gOUKEigS4S5FfQX4vm5K5tIgj4ZkxQ41Wxx IePXfJPIJmnQ== X-IronPort-AV: E=McAfee;i="6000,8403,9668"; a="231222955" X-IronPort-AV: E=Sophos;i="5.75,298,1589266800"; d="scan'208";a="231222955" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Jun 2020 11:56:20 -0700 IronPort-SDR: L6rWgbEQzsSc2Y9vgiJc4OFQLTySxJd3KnZ2/HVDDGdQNaAUkOSSbOPDCpBGRDdcWLsgetYQ1f EtsSxNCbL9Rg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,298,1589266800"; d="scan'208";a="355864252" Received: from mlindstr-mobl1.amr.corp.intel.com (HELO ingas-nuc1.sea.intel.com) ([10.254.108.27]) by orsmga001.jf.intel.com with ESMTP; 30 Jun 2020 11:56:20 -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 v2 1/4] doc/mesh-api: Add dictionary to model properties Date: Tue, 30 Jun 2020 11:56:14 -0700 Message-Id: <20200630185617.14755-2-inga.stotland@intel.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200630185617.14755-1-inga.stotland@intel.com> References: <20200630185617.14755-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