1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171
|
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1">
<meta name="generator" content="pdoc3 0.11.6">
<title>pyControl4 API documentation</title>
<meta name="description" content="">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/10up-sanitize.css/13.0.0/sanitize.min.css" integrity="sha512-y1dtMcuvtTMJc1yPgEqF0ZjQbhnc/bFhyvIyVNb9Zk5mIGtqVaAB1Ttl28su8AvFMOY0EwRbAe+HCLqj6W7/KA==" crossorigin>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/10up-sanitize.css/13.0.0/typography.min.css" integrity="sha512-Y1DYSb995BAfxobCkKepB1BqJJTPrOp3zPL74AWFugHHmmdcvO+C48WLrUOlhGMc0QG7AE3f7gmvvcrmX2fDoA==" crossorigin>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/default.min.css" crossorigin>
<style>:root{--highlight-color:#fe9}.flex{display:flex !important}body{line-height:1.5em}#content{padding:20px}#sidebar{padding:1.5em;overflow:hidden}#sidebar > *:last-child{margin-bottom:2cm}.http-server-breadcrumbs{font-size:130%;margin:0 0 15px 0}#footer{font-size:.75em;padding:5px 30px;border-top:1px solid #ddd;text-align:right}#footer p{margin:0 0 0 1em;display:inline-block}#footer p:last-child{margin-right:30px}h1,h2,h3,h4,h5{font-weight:300}h1{font-size:2.5em;line-height:1.1em}h2{font-size:1.75em;margin:2em 0 .50em 0}h3{font-size:1.4em;margin:1.6em 0 .7em 0}h4{margin:0;font-size:105%}h1:target,h2:target,h3:target,h4:target,h5:target,h6:target{background:var(--highlight-color);padding:.2em 0}a{color:#058;text-decoration:none;transition:color .2s ease-in-out}a:visited{color:#503}a:hover{color:#b62}.title code{font-weight:bold}h2[id^="header-"]{margin-top:2em}.ident{color:#900;font-weight:bold}pre code{font-size:.8em;line-height:1.4em;padding:1em;display:block}code{background:#f3f3f3;font-family:"DejaVu Sans Mono",monospace;padding:1px 4px;overflow-wrap:break-word}h1 code{background:transparent}pre{border-top:1px solid #ccc;border-bottom:1px solid #ccc;margin:1em 0}#http-server-module-list{display:flex;flex-flow:column}#http-server-module-list div{display:flex}#http-server-module-list dt{min-width:10%}#http-server-module-list p{margin-top:0}.toc ul,#index{list-style-type:none;margin:0;padding:0}#index code{background:transparent}#index h3{border-bottom:1px solid #ddd}#index ul{padding:0}#index h4{margin-top:.6em;font-weight:bold}@media (min-width:200ex){#index .two-column{column-count:2}}@media (min-width:300ex){#index .two-column{column-count:3}}dl{margin-bottom:2em}dl dl:last-child{margin-bottom:4em}dd{margin:0 0 1em 3em}#header-classes + dl > dd{margin-bottom:3em}dd dd{margin-left:2em}dd p{margin:10px 0}.name{background:#eee;font-size:.85em;padding:5px 10px;display:inline-block;min-width:40%}.name:hover{background:#e0e0e0}dt:target .name{background:var(--highlight-color)}.name > span:first-child{white-space:nowrap}.name.class > span:nth-child(2){margin-left:.4em}.inherited{color:#999;border-left:5px solid #eee;padding-left:1em}.inheritance em{font-style:normal;font-weight:bold}.desc h2{font-weight:400;font-size:1.25em}.desc h3{font-size:1em}.desc dt code{background:inherit}.source > summary,.git-link-div{color:#666;text-align:right;font-weight:400;font-size:.8em;text-transform:uppercase}.source summary > *{white-space:nowrap;cursor:pointer}.git-link{color:inherit;margin-left:1em}.source pre{max-height:500px;overflow:auto;margin:0}.source pre code{font-size:12px;overflow:visible;min-width:max-content}.hlist{list-style:none}.hlist li{display:inline}.hlist li:after{content:',\2002'}.hlist li:last-child:after{content:none}.hlist .hlist{display:inline;padding-left:1em}img{max-width:100%}td{padding:0 .5em}.admonition{padding:.1em 1em;margin:1em 0}.admonition-title{font-weight:bold}.admonition.note,.admonition.info,.admonition.important{background:#aef}.admonition.todo,.admonition.versionadded,.admonition.tip,.admonition.hint{background:#dfd}.admonition.warning,.admonition.versionchanged,.admonition.deprecated{background:#fd4}.admonition.error,.admonition.danger,.admonition.caution{background:lightpink}</style>
<style media="screen and (min-width: 700px)">@media screen and (min-width:700px){#sidebar{width:30%;height:100vh;overflow:auto;position:sticky;top:0}#content{width:70%;max-width:100ch;padding:3em 4em;border-left:1px solid #ddd}pre code{font-size:1em}.name{font-size:1em}main{display:flex;flex-direction:row-reverse;justify-content:flex-end}.toc ul ul,#index ul ul{padding-left:1em}.toc > ul > li{margin-top:.5em}}</style>
<style media="print">@media print{#sidebar h1{page-break-before:always}.source{display:none}}@media print{*{background:transparent !important;color:#000 !important;box-shadow:none !important;text-shadow:none !important}a[href]:after{content:" (" attr(href) ")";font-size:90%}a[href][title]:after{content:none}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}@page{margin:0.5cm}p,h2,h3{orphans:3;widows:3}h1,h2,h3,h4,h5,h6{page-break-after:avoid}}</style>
<script defer src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js" integrity="sha512-D9gUyxqja7hBtkWpPWGt9wfbfaMGVt9gnyCvYa+jojwwPHLCzUm5i8rpk7vD7wNee9bA35eYIjobYPaQuKS1MQ==" crossorigin></script>
<script>window.addEventListener('DOMContentLoaded', () => {
hljs.configure({languages: ['bash', 'css', 'diff', 'graphql', 'ini', 'javascript', 'json', 'plaintext', 'python', 'python-repl', 'rust', 'shell', 'sql', 'typescript', 'xml', 'yaml']});
hljs.highlightAll();
/* Collapse source docstrings */
setTimeout(() => {
[...document.querySelectorAll('.hljs.language-python > .hljs-string')]
.filter(el => el.innerHTML.length > 200 && ['"""', "'''"].includes(el.innerHTML.substring(0, 3)))
.forEach(el => {
let d = document.createElement('details');
d.classList.add('hljs-string');
d.innerHTML = '<summary>"""</summary>' + el.innerHTML.substring(3);
el.replaceWith(d);
});
}, 100);
})</script>
</head>
<body>
<main>
<article id="content">
<header>
<h1 class="title">Package <code>pyControl4</code></h1>
</header>
<section id="section-intro">
</section>
<section>
<h2 class="section-title" id="header-submodules">Sub-modules</h2>
<dl>
<dt><code class="name"><a title="pyControl4.account" href="account.html">pyControl4.account</a></code></dt>
<dd>
<div class="desc"><p>Authenticates with the Control4 API, retrieves account and registered
controller info, and retrieves a bearer token for connecting to a Control4 …</p></div>
</dd>
<dt><code class="name"><a title="pyControl4.alarm" href="alarm.html">pyControl4.alarm</a></code></dt>
<dd>
<div class="desc"><p>Controls Control4 security panel and contact sensor (door, window, motion) devices.</p></div>
</dd>
<dt><code class="name"><a title="pyControl4.blind" href="blind.html">pyControl4.blind</a></code></dt>
<dd>
<div class="desc"><p>Controls Control4 blind devices.</p></div>
</dd>
<dt><code class="name"><a title="pyControl4.climate" href="climate.html">pyControl4.climate</a></code></dt>
<dd>
<div class="desc"><p>Controls Control4 Climate Control devices.</p></div>
</dd>
<dt><code class="name"><a title="pyControl4.director" href="director.html">pyControl4.director</a></code></dt>
<dd>
<div class="desc"><p>Handles communication with a Control4 Director, and provides functions for
getting details about items on the Director.</p></div>
</dd>
<dt><code class="name"><a title="pyControl4.error_handling" href="error_handling.html">pyControl4.error_handling</a></code></dt>
<dd>
<div class="desc"><p>Handles errors recieved from the Control4 API.</p></div>
</dd>
<dt><code class="name"><a title="pyControl4.fan" href="fan.html">pyControl4.fan</a></code></dt>
<dd>
<div class="desc"><p>Controls Control4 Fan devices.</p></div>
</dd>
<dt><code class="name"><a title="pyControl4.light" href="light.html">pyControl4.light</a></code></dt>
<dd>
<div class="desc"><p>Controls Control4 Light devices.</p></div>
</dd>
<dt><code class="name"><a title="pyControl4.relay" href="relay.html">pyControl4.relay</a></code></dt>
<dd>
<div class="desc"><p>Controls Control4 Relay devices. These can include locks, and potentially other types of devices.</p></div>
</dd>
<dt><code class="name"><a title="pyControl4.room" href="room.html">pyControl4.room</a></code></dt>
<dd>
<div class="desc"><p>Controls Control4 Room devices.</p></div>
</dd>
<dt><code class="name"><a title="pyControl4.websocket" href="websocket.html">pyControl4.websocket</a></code></dt>
<dd>
<div class="desc"><p>Handles Websocket connections to a Control4 Director, allowing for real-time updates using callbacks.</p></div>
</dd>
</dl>
</section>
<section>
</section>
<section>
</section>
<section>
<h2 class="section-title" id="header-classes">Classes</h2>
<dl>
<dt id="pyControl4.C4Entity"><code class="flex name class">
<span>class <span class="ident">C4Entity</span></span>
<span>(</span><span>C4Director, item_id)</span>
</code></dt>
<dd>
<details class="source">
<summary>
<span>Expand source code</span>
</summary>
<pre><code class="python">class C4Entity:
def __init__(self, C4Director, item_id):
"""Creates a Control4 object.
Parameters:
`C4Director` - A `pyControl4.director.C4Director` object that corresponds to the Control4 Director that the device is connected to.
`item_id` - The Control4 item ID.
"""
self.director = C4Director
self.item_id = int(item_id)</code></pre>
</details>
<div class="desc"><p>Creates a Control4 object.</p>
<h2 id="parameters">Parameters</h2>
<p><code>C4Director</code> - A <code><a title="pyControl4.director.C4Director" href="director.html#pyControl4.director.C4Director">C4Director</a></code> object that corresponds to the Control4 Director that the device is connected to.</p>
<p><code>item_id</code> - The Control4 item ID.</p></div>
<h3>Subclasses</h3>
<ul class="hlist">
<li><a title="pyControl4.alarm.C4SecurityPanel" href="alarm.html#pyControl4.alarm.C4SecurityPanel">C4SecurityPanel</a></li>
<li><a title="pyControl4.blind.C4Blind" href="blind.html#pyControl4.blind.C4Blind">C4Blind</a></li>
<li><a title="pyControl4.climate.C4Climate" href="climate.html#pyControl4.climate.C4Climate">C4Climate</a></li>
<li><a title="pyControl4.fan.C4Fan" href="fan.html#pyControl4.fan.C4Fan">C4Fan</a></li>
<li><a title="pyControl4.light.C4Light" href="light.html#pyControl4.light.C4Light">C4Light</a></li>
<li><a title="pyControl4.relay.C4Relay" href="relay.html#pyControl4.relay.C4Relay">C4Relay</a></li>
<li><a title="pyControl4.room.C4Room" href="room.html#pyControl4.room.C4Room">C4Room</a></li>
</ul>
</dd>
</dl>
</section>
</article>
<nav id="sidebar">
<div class="toc">
<ul></ul>
</div>
<ul id="index">
<li><h3><a href="#header-submodules">Sub-modules</a></h3>
<ul>
<li><code><a title="pyControl4.account" href="account.html">pyControl4.account</a></code></li>
<li><code><a title="pyControl4.alarm" href="alarm.html">pyControl4.alarm</a></code></li>
<li><code><a title="pyControl4.blind" href="blind.html">pyControl4.blind</a></code></li>
<li><code><a title="pyControl4.climate" href="climate.html">pyControl4.climate</a></code></li>
<li><code><a title="pyControl4.director" href="director.html">pyControl4.director</a></code></li>
<li><code><a title="pyControl4.error_handling" href="error_handling.html">pyControl4.error_handling</a></code></li>
<li><code><a title="pyControl4.fan" href="fan.html">pyControl4.fan</a></code></li>
<li><code><a title="pyControl4.light" href="light.html">pyControl4.light</a></code></li>
<li><code><a title="pyControl4.relay" href="relay.html">pyControl4.relay</a></code></li>
<li><code><a title="pyControl4.room" href="room.html">pyControl4.room</a></code></li>
<li><code><a title="pyControl4.websocket" href="websocket.html">pyControl4.websocket</a></code></li>
</ul>
</li>
<li><h3><a href="#header-classes">Classes</a></h3>
<ul>
<li>
<h4><code><a title="pyControl4.C4Entity" href="#pyControl4.C4Entity">C4Entity</a></code></h4>
</li>
</ul>
</li>
</ul>
</nav>
</main>
<footer id="footer">
<p>Generated by <a href="https://pdoc3.github.io/pdoc" title="pdoc: Python API documentation generator"><cite>pdoc</cite> 0.11.6</a>.</p>
</footer>
</body>
</html>
|