mirror of
https://github.com/fhem/fhem-mirror.git
synced 2024-11-22 02:59:49 +00:00
5ec28cb793
git-svn-id: https://svn.fhem.de/fhem/trunk@19190 2b470e98-0d58-463d-a4d8-8e2adae1ed80
271 lines
7.7 KiB
Plaintext
271 lines
7.7 KiB
Plaintext
###############################################################################
|
|
# About metadata in FHEM
|
|
#------------------------------------------------------------------------------
|
|
#
|
|
# This aims to be a full example of all possible options to document
|
|
# a FHEM module or FHEM package.
|
|
# It does not necessarially mean that every attribute will need to be used or
|
|
# makes sense in every case. Also, some combinations might be weird, depending
|
|
# on the actual use case. That is, if your module is part of FHEM core
|
|
# (hosted on svn.fhem.de) or externally on a different plattform, which is then
|
|
# considered a 3rd-party module.
|
|
#
|
|
# Please consult https://wiki.fhem.de/wiki/Meta for more information.
|
|
#
|
|
|
|
=pod
|
|
|
|
=encoding utf8
|
|
|
|
=item [helper|device|command]
|
|
=item summary Short description in English
|
|
=item summary_DE Kurzbeschreibung in Deutsch
|
|
|
|
=begin html
|
|
|
|
<a name="myModule" id="myModule"></a>
|
|
<h3>
|
|
myModule
|
|
</h3>
|
|
<ul>
|
|
Long description about what this module does and what it is for.<br />
|
|
<br />
|
|
<a name="myModuledefine" id="myModuledefine"></a><b>Define</b>
|
|
<ul>
|
|
<code>define <name> myModule</code><br />
|
|
<br />
|
|
Describe a little bit what this define command will do and how the device instance will behave afterwards.<br />
|
|
</ul><br />
|
|
<a name="myModuleset" id="myModuleset"></a><b>Set</b>
|
|
<ul>
|
|
<li>setCommand1<br />
|
|
This command does xyz.
|
|
</li>
|
|
<li>setCommand2 <parameter><br />
|
|
This command does abc and requires a parameter. Example:
|
|
<ul>
|
|
<code>get myModule getCommand1 on</code>
|
|
</ul>
|
|
</li>
|
|
</ul><br />
|
|
<a name="myModuleget" id="myModuleget"></a><b>Get</b>
|
|
<ul>
|
|
<li>getCommand1<br />
|
|
This command does xyz.
|
|
</li>
|
|
<li>getCommand2 <parameter><br />
|
|
This command does abc and requires a parameter. Example:
|
|
<ul>
|
|
<code>get myModule getCommand1 on</code>
|
|
</ul>
|
|
</li>
|
|
</ul><a name="myModuleattr" id="myModuleattr"></a><b>Attributes</b>
|
|
<ul>
|
|
<a name="myAttribute1" id="myAttribute1"></a>
|
|
<li>myAttribute1<br />
|
|
This attribute configures xyz.
|
|
</li><br />
|
|
</ul>
|
|
</ul>
|
|
|
|
=end html
|
|
|
|
=begin html_DE
|
|
|
|
<a name="myModule" id="myModule"></a>
|
|
<h3>
|
|
myModule
|
|
</h3>
|
|
<ul>
|
|
Längere Beschreibung, was dieses Modul macht und wofür es gut ist.<br />
|
|
<br />
|
|
<a name="myModuledefine" id="myModuledefine"></a><b>Define</b>
|
|
<ul>
|
|
<code>define <name> myModule</code><br />
|
|
<br />
|
|
Kurze Beschreibung, was dieses define Kommando genau macht und wie die Device Instanz sich anschließend verhalten wird.<br />
|
|
</ul><br />
|
|
<a name="myModuleset" id="myModuleset"></a><b>Set</b>
|
|
<ul>
|
|
<li>setCommand1<br />
|
|
Dieses Kommando macht xyz.
|
|
</li>
|
|
<li>setCommand2 <parameter><br />
|
|
Dieses Kommando macht abc und benötigt einen Parameter. Beispiel:
|
|
<ul>
|
|
<code>get myModule getCommand1 on</code>
|
|
</ul>
|
|
</li>
|
|
</ul><br />
|
|
<a name="myModuleget" id="myModuleget"></a><b>Get</b>
|
|
<ul>
|
|
<li>getCommand1<br />
|
|
Dieses Kommando macht xyz.
|
|
</li>
|
|
<li>getCommand2 <parameter><br />
|
|
Dieses Kommando macht abc und benötigt einen Parameter. Beispiel:
|
|
<ul>
|
|
<code>get myModule getCommand1 on</code>
|
|
</ul>
|
|
</li>
|
|
</ul><a name="myModuleattr" id="myModuleattr"></a><b>Attributes</b>
|
|
<ul>
|
|
<a name="myAttribute1" id="myAttribute1"></a>
|
|
<li>myAttribute1<br />
|
|
Dieses Attribut konfiguriert xyz.
|
|
</li><br />
|
|
</ul>
|
|
</ul>
|
|
|
|
=end html_DE
|
|
|
|
=for :application/json;q=META.json 00_myModule.pm
|
|
{
|
|
"abstract": "Short description, will overwrite '=item summary'",
|
|
"description": "This can be some extended description or documentation.",
|
|
"x_lang": {
|
|
"de": {
|
|
"abstract": "Kurzbeschreibung auf Deutsch, überschreibt '=item summary_DE'",
|
|
"description": "Hier kann eine erweiterte Beschreibung oder Dokumentation stehen."
|
|
}
|
|
},
|
|
"license": [
|
|
"apache_2_0",
|
|
"mozilla_1_0"
|
|
],
|
|
"version": "v1.0.0",
|
|
"x_release_date": "1970-01-01",
|
|
"release_status": "stable",
|
|
"author": [
|
|
"I am the maintainer <firstname.lastname@gmail.com>",
|
|
"I am a co-author <firstname.lastname@gmail.com>",
|
|
"I am another co-author w/o email <>",
|
|
"I might be the orignal author long time ago <firstname.lastname@gmail.com>"
|
|
],
|
|
"x_fhem_maintainer": [
|
|
"maintainer-myFhemForumAndSVNusername",
|
|
"co-maintainer-myFhemForumAndSVNusername",
|
|
"another-author-myFhemForumAndSVNusername",
|
|
"original-author-myFhemForumAndSVNusername"
|
|
],
|
|
"x_fhem_maintainer_github": [
|
|
"maintainer-myGithubUsername",
|
|
"co-maintainer-myGithubUsername",
|
|
null,
|
|
null
|
|
],
|
|
"keywords": [
|
|
"additional",
|
|
"keywords",
|
|
"that shall",
|
|
"appear",
|
|
"for example",
|
|
"vendorName",
|
|
"or",
|
|
"function"
|
|
],
|
|
"prereqs": {
|
|
"runtime": {
|
|
"requires": {
|
|
"FHEM": 5.00918623,
|
|
"FHEM::Meta": 0.001006,
|
|
"HttpUtils": 0,
|
|
"JSON": 0,
|
|
"perl": 5.014
|
|
},
|
|
"recommends": {
|
|
},
|
|
"suggests": {
|
|
}
|
|
}
|
|
},
|
|
"x_prereqs_nodejs": {
|
|
"runtime": {
|
|
"requires": {
|
|
"node": 8.0,
|
|
"npm": 0
|
|
},
|
|
"recommends": {
|
|
},
|
|
"suggests": {
|
|
}
|
|
}
|
|
},
|
|
"x_prereqs_python": {
|
|
"runtime": {
|
|
"requires": {
|
|
"pip": 0
|
|
},
|
|
"recommends": {
|
|
},
|
|
"suggests": {
|
|
}
|
|
}
|
|
},
|
|
"resources": {
|
|
"bugtracker": {
|
|
"mailto": "bugs@example.com",
|
|
"web": "https://github.com/fhem/myModule/issues",
|
|
"x_web_title": "Github Issues for fhem/myModule"
|
|
},
|
|
"homepage": "https://myModuleHasAhomepage.com",
|
|
"x_homepage_title": "myModuleHasAhomepage",
|
|
"license": [
|
|
"https://github.com/fhem/myModule/blob/master/LICENSE"
|
|
],
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/fhem/myModule.git",
|
|
"web": "https://github.com/fhem/myModule/blob/master/subdir/00_myModule.pm",
|
|
"x_branch": "master",
|
|
"x_dev": {
|
|
"type": "git",
|
|
"url": "https://github.com/fhem/myModule.git",
|
|
"web": "https://github.com/fhem/myModule/blob/dev/subdir/00_myModule.pm",
|
|
"x_branch": "dev",
|
|
"x_filepath": "subdir/",
|
|
"x_raw": "https://github.com/fhem/myModule/raw/dev/subdir/00_myModule.pm"
|
|
},
|
|
"x_filepath": "subdir/",
|
|
"x_raw": "https://github.com/fhem/myModule/raw/master/subdir/00_myModule.pm"
|
|
},
|
|
"x_commandref" : {
|
|
"title" : "I want to name it differently, not 'Online version'",
|
|
"web" : "https://myModuleHasAhomepage.com/myModuleHasAnExternalOnlineCommandRef.html"
|
|
},
|
|
"x_copyright": {
|
|
"mailto": "contact@example.com",
|
|
"title": "My Company Inc.",
|
|
"web": "https://www.example.com/legal"
|
|
},
|
|
"x_privacy": {
|
|
"mailto": "dataprivacy@example.com",
|
|
"title": "About data privacy",
|
|
"web": "https://www.example.com/privacy"
|
|
},
|
|
"x_support_commercial": {
|
|
"mailto": "support@example.com",
|
|
"title": "My Company",
|
|
"web": "https://support.example.com"
|
|
},
|
|
"x_support_community": {
|
|
"rss": "https://forum.fhem.de/index.php?action=.xml;type=rss;board=19",
|
|
"title": "I want to have a special title. Prefix 'FHEM Forum: ' will be added if URL is forum.fhem.de",
|
|
"web": "https://forum.fhem.de/index.php/board,19.0.html",
|
|
"subCommunity" : {
|
|
"rss" : "https://forum.fhem.de/index.php?action=.xml;type=rss;board=93",
|
|
"title" : "This sub-board will be first contact point",
|
|
"web" : "https://forum.fhem.de/index.php/board,93.0.html"
|
|
}
|
|
},
|
|
"x_wiki" : {
|
|
"title" : "I want to have a special title. Prefix 'FHEM Wiki: ' will be added if URL is wiki.fhem.de",
|
|
"web" : "https://wiki.fhem.de/wiki/myModule_is_simply_different"
|
|
}
|
|
},
|
|
"x_support_status": "supported"
|
|
}
|
|
=end :application/json;q=META.json
|
|
|
|
=cut
|