{"action":"created","comment":{"url":"https://api.github.com/repos/eclipse/smarthome/pulls/comments/126208521","pull_request_review_id":48676277,"id":126208521,"diff_hunk":"@@ -0,0 +1,125 @@\n+---\n+layout: documentation\n+---\n+\n+{% include base.html %}\n+\n+# DMX Binding\n+\n+The DMX binding integrates DMX devices with Eclipse Smarthome. There are different output devices supported as well as Dimmers and Chasers. \n+\n+Each output devices (bridges) is representing exactly one universe, each thing is bound to a bridge. At least one bridge and one thing is needed for the binding to work properly. \n+\n+## Supported Things\n+\n+### Bridges\n+\n+Two DMX over Ethernet devices are supported as DMX output:  ArtNet and sACN/E1.31. The ArtNet bridge can only be operated in unicast mode (broadcast mode is not supported as the specification recommends using it if more than 40 nodes are connected, which is unlikely in the case of a smarthome). The sACN bridge supports both, unicast and multicast. \n+\n+Additionally OLA, the Open Lighting Architecture, is supported via the OLA bridge. Lib485 devices are supported via the Lib485 bridge.\n+\n+### Things\n+\n+The most generic thing is a dimmer. A dimmer can contain one or more DMX channels and bound to Switch, Dimmer and Color items (Color item supported if at least three DMX channels are defined). If more than one DMX channel is defined, the item will be updated according to the state first DMX channel (or the first three, in case of the Color item).\n+\n+The second supported thing is a chaser. It can contain one or more DMX channels and bound to Switch items only. If the thing receives an ON command all running fades in all channels are either suspended (if resumeAfter is set to true) or cleared and replaced with the fades defined in this thing. An OFF command stops the fades and either restores the previously suspended fades (if resumeAfter is set to true) or just holds the current values. If any of the DMX channels in a chaser receives a command from another thing, the status of the chaser is updated to OFF. Chaser things define a control channel that can be used to dynamically change the chasers fade configuration.\n+\n+## Discovery\n+\n+Discovery is not supported at the moment. You have to add all bridges and things manually.  \n+\n+## Thing Configuration\n+\n+Since the brightness perception of the human eye is not linear, all bridges support `applycurve`,  a list of channels `applycurve` that have a CIE 1931 lightness correction (cf. [Poynton, C.A.: “Gamma” and its Disguises: The Nonlinear Mappings of Intensity in Perception, CRTs, Film and Video, SMPTE Journal Dec. 1993, pp. 1099 - 1108](http://www.poynton.com/PDFs/SMPTE93_Gamma.pdf)) applied. This list follows the format of the thing channel definition. This is used regardless of the thing(s) that are associated to the channel.\n+\n+All bridges can make use of the `refreshrate` option. It determines at what frequency the DMX output is refreshed. The achievable refresh rate depends on the number of channels and the output type. A value of `0`disables the output, the default value is 30 Hz.\n+\n+### ArtNet Bridge (`artnet-bridge`)\n+\n+The ArtNet bridge has one mandatory configuration values: network address (`address`). The network address defines the IP address of the receiving node, it is also allowed to use a FQDN if DNS resolution is available. If necessary the default port 6454 can be changed by adding `:<port>` to the address. Multiple receivers can be added, separated by a comma.\n+\n+The universe (`universe`) can range from 0-32767, this value defaults to 0. \n+\n+There are two more configuration values that usually don't need to be touched. The address and port of the sender will be automatically selected by the kernel, if they need to be set to a fixed value, this can be done with `localaddress`. The format is identical to the receiver address. Unlike DMX512-A (E1.11), the ArtNet standard allows to suppress repeated transmissions of unchanged universes for a certain time. This is enabled by default and will re-transmit unchanged data with a fixed refresh rate of 800ms. If for some reason continuous transmission is needed, the `refreshmode` can be set to `always`, opposed to the default `standard`.\n+\n+### Lib485 Bridge (`lib485-bridge`)\n+\n+The Lib385 bridge has no mandatory configuration value.\n+\n+Optionally you can define an address (`address`) where lib485 is running. This can be an IP address but it is also allowed to use a FQDN if DNS resolution is available. If necessary the default port 9020 can be changed by adding `:<port>` to the address. The default address is localhost. Multiple receivers can be added, separated by a comma.\n+\n+### OLA Bridge (`ola-bridge`)\n+\n+The OLA bridge has no mandatory configuration value.\n+\n+The universe (`universe`). The universe can range from 0-65535, this value defaults to 0.\n+\n+Optionally you can define an address (`address`) where OLA is running. This can be an IP address but it is also allowed to use a FQDN if DNS resolution is available. If necessary the default port 9010 can be changed by adding `:<port>` to the address. The default address is localhost. Multiple receivers can be added, separated by a comma.\n+\n+### sACN/E1.31 Bridge (`sacn-bridge`)\n+\n+The sACN bridge has one mandatory configuration values: transmission mode (`mode`). The transmission mode can be set to either `unicast` or `multicast`, which is the default value.  If unicast mode is selected, it is mandatory to define the network address (`address`) of the receiving node. This can be an IP address but it is also allowed to use a FQDN if DNS resolution is available. If necessary the default port 5568 can be changed by adding `:<port>` to the address. Multiple receivers can be added, separated by a comma.\n+\n+The universe (`universe`) can range from 1-63999, this value defaults to 1. \n+\n+There are some more configuration values that usually don't need to be touched.  The address and port of the sender will be automatically selected by the kernel, if they need to be set to a fixed value, this can be done with `localaddress`. The format is identical to the receiver address. \n+\n+Unlike DMX512-A (E1.11), the E1.31 standard allows to suppress repeated transmissions of unchanged universes for a certain time. This is enabled by default and will re-transmit unchanged data with a fixed refresh rate of 800ms. If for some reason continuous transmission is needed, the `refreshmode` can be set to `always`, opposed to the default `standard`.\n+\n+### Chaser Thing (`chaser`)\n+\n+There are two mandatory configuration value for a chaser thing: the `dmxid` and `steps`. \n+\n+The `dmxid` is a list of DMX channels that are associated with this thing. There are several possible formats: `channel,channel,channel,...` or `channel/width` or a combination of both. \n+\n+The `steps` value is a list of steps that shall be run by the chaser. The format of a single step is `fadetime:value,value2, ...:holdtime`, two or more steps are concatenated by `step1|step2|...`. In textual configuration line-breaks, spaces and tabs are allowed for readability. The fadetime is used for fading from the current value to new new value. In contrast to the dimmer thing, this is an absolute value. The hold time defines how long this step shall wait before advancing to the next step. A value of -1 is used to hold forever. Both times are in ms.\n+\n+An optional configuration value is `resumeafter`. It defaults to false but if set to true, the original state of the channel (including running fades) will be suspended until the the chaser receives an OFF command.\n+\n+### Dimmer Thing (`dimmer`)\n+\n+The only mandatory configuration value for a dimmer thing is the `dmxid`, a list of DMX channels that are associated with this thing. There are several possible formats: `channel1,channel2,channel3,...` or `channel/width` or a combination of both. \n+\n+The `fadetime` option allows a smooth fading from the current to the new value. The time unit is ms and the interval is for a fade from 0-100%. If the current value is 25% and the new value is 75% the time needed for this change is half of `fadetime`. Related is the `dimtime` option. It defines the time in from 0-100% if incremental dimmming is used. \n+\n+Advanced options are the `turnonvalue`and the `turnoffvalue`. They default to 255 (equals 100%) and 0 (equals 0%) respectively. This value can be set individually for all DMX channels, the format is `value1,value2, ...` with values from 0 to 255. If less values than DMX channels are defined, the values will be re-used from the beginning (i.e. if two values are defined, value1 will be used for channel1, channel3, ... and value2 will be used for channel2, channel4, ...). These values will be used if the thing receives a ON or OFF command. \n+\n+## Channels\n+\n+| Type-ID     | Thing        | Item          | Description                              |\n+|-------------|--------------|---------------|------------------------------------------|\n+|brightness   |dimmer        |Switch, Dimmer | controls the brightness of the channels  |\n+|color        |dimmer        |Dimmer         | allows to set the color of the dimmer    |\n+|control      |chaser        |String         | allows to change the chaser steps        |\n+|switch       |dimmer,chaser |Switch         | turns the channel/chaser ON or OFF       |\n+|mute         |(all bridges) |Switch         | mutes the DMX output of the bridge       |\n+\n+*Note:* the string send to the control channel of chaser things has to be formatted like the `steps` configuration of the chaser thing. If the new string is invalid, the old configuration will be used.\n+\n+## Full Example\n+\n+This example defines a sACN/E1.31 bridge in unicast mode which transmits universe 2 and three things: a three channel dimmer used to control a RGB light, a single channel dimmer which will turn on only to 90% if it receives a ON command and ","path":"extensions/binding/org.eclipse.smarthome.binding.dmx/README.md","position":101,"original_position":101,"commit_id":"6a84267ae747315219c2d887f3bd52b869ed2b75","original_commit_id":"6a84267ae747315219c2d887f3bd52b869ed2b75","user":{"login":"J-N-K","id":5159123,"avatar_url":"https://avatars3.githubusercontent.com/u/5159123?v=3","gravatar_id":"","url":"https://api.github.com/users/J-N-K","html_url":"https://github.com/J-N-K","followers_url":"https://api.github.com/users/J-N-K/followers","following_url":"https://api.github.com/users/J-N-K/following{/other_user}","gists_url":"https://api.github.com/users/J-N-K/gists{/gist_id}","starred_url":"https://api.github.com/users/J-N-K/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/J-N-K/subscriptions","organizations_url":"https://api.github.com/users/J-N-K/orgs","repos_url":"https://api.github.com/users/J-N-K/repos","events_url":"https://api.github.com/users/J-N-K/events{/privacy}","received_events_url":"https://api.github.com/users/J-N-K/received_events","type":"User","site_admin":false},"body":"done","created_at":"2017-07-07T18:01:07Z","updated_at":"2017-07-07T18:01:07Z","html_url":"https://github.com/eclipse/smarthome/pull/2704#discussion_r126208521","pull_request_url":"https://api.github.com/repos/eclipse/smarthome/pulls/2704","_links":{"self":{"href":"https://api.github.com/repos/eclipse/smarthome/pulls/comments/126208521"},"html":{"href":"https://github.com/eclipse/smarthome/pull/2704#discussion_r126208521"},"pull_request":{"href":"https://api.github.com/repos/eclipse/smarthome/pulls/2704"}}},"pull_request":{"url":"https://api.github.com/repos/eclipse/smarthome/pulls/2704","id":99386354,"html_url":"https://github.com/eclipse/smarthome/pull/2704","diff_url":"https://github.com/eclipse/smarthome/pull/2704.diff","patch_url":"https://github.com/eclipse/smarthome/pull/2704.patch","issue_url":"https://api.github.com/repos/eclipse/smarthome/issues/2704","number":2704,"state":"open","locked":false,"title":"Feature: DMX binding","user":{"login":"J-N-K","id":5159123,"avatar_url":"https://avatars3.githubusercontent.com/u/5159123?v=3","gravatar_id":"","url":"https://api.github.com/users/J-N-K","html_url":"https://github.com/J-N-K","followers_url":"https://api.github.com/users/J-N-K/followers","following_url":"https://api.github.com/users/J-N-K/following{/other_user}","gists_url":"https://api.github.com/users/J-N-K/gists{/gist_id}","starred_url":"https://api.github.com/users/J-N-K/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/J-N-K/subscriptions","organizations_url":"https://api.github.com/users/J-N-K/orgs","repos_url":"https://api.github.com/users/J-N-K/repos","events_url":"https://api.github.com/users/J-N-K/events{/privacy}","received_events_url":"https://api.github.com/users/J-N-K/received_events","type":"User","site_admin":false},"body":"See #2703 \r\n\r\nThis binding ist still between alpha- and beta state. It runs fine at my home but needs further real-life testing, This especially true for all Bridges besides the sACN/E1.31 bridge.\r\n\r\nSince these 5k loc will probably take a lot of work to review, I created this PR so the review process can start. After reviewing is finished and all requests incorporated I'll squash and add proper sign-off.\r\n","created_at":"2016-12-26T19:00:49Z","updated_at":"2017-07-07T18:01:07Z","closed_at":null,"merged_at":null,"merge_commit_sha":"d681e9cdc24358454a16da18f1fa39cc8ae8ce86","assignee":null,"assignees":[],"requested_reviewers":[],"milestone":null,"commits_url":"https://api.github.com/repos/eclipse/smarthome/pulls/2704/commits","review_comments_url":"https://api.github.com/repos/eclipse/smarthome/pulls/2704/comments","review_comment_url":"https://api.github.com/repos/eclipse/smarthome/pulls/comments{/number}","comments_url":"https://api.github.com/repos/eclipse/smarthome/issues/2704/comments","statuses_url":"https://api.github.com/repos/eclipse/smarthome/statuses/6a84267ae747315219c2d887f3bd52b869ed2b75","head":{"label":"J-N-K:feature-dmx-binding","ref":"feature-dmx-binding","sha":"6a84267ae747315219c2d887f3bd52b869ed2b75","user":{"login":"J-N-K","id":5159123,"avatar_url":"https://avatars3.githubusercontent.com/u/5159123?v=3","gravatar_id":"","url":"https://api.github.com/users/J-N-K","html_url":"https://github.com/J-N-K","followers_url":"https://api.github.com/users/J-N-K/followers","following_url":"https://api.github.com/users/J-N-K/following{/other_user}","gists_url":"https://api.github.com/users/J-N-K/gists{/gist_id}","starred_url":"https://api.github.com/users/J-N-K/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/J-N-K/subscriptions","organizations_url":"https://api.github.com/users/J-N-K/orgs","repos_url":"https://api.github.com/users/J-N-K/repos","events_url":"https://api.github.com/users/J-N-K/events{/privacy}","received_events_url":"https://api.github.com/users/J-N-K/received_events","type":"User","site_admin":false},"repo":{"id":72736574,"name":"smarthome","full_name":"J-N-K/smarthome","owner":{"login":"J-N-K","id":5159123,"avatar_url":"https://avatars3.githubusercontent.com/u/5159123?v=3","gravatar_id":"","url":"https://api.github.com/users/J-N-K","html_url":"https://github.com/J-N-K","followers_url":"https://api.github.com/users/J-N-K/followers","following_url":"https://api.github.com/users/J-N-K/following{/other_user}","gists_url":"https://api.github.com/users/J-N-K/gists{/gist_id}","starred_url":"https://api.github.com/users/J-N-K/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/J-N-K/subscriptions","organizations_url":"https://api.github.com/users/J-N-K/orgs","repos_url":"https://api.github.com/users/J-N-K/repos","events_url":"https://api.github.com/users/J-N-K/events{/privacy}","received_events_url":"https://api.github.com/users/J-N-K/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/J-N-K/smarthome","description":"Eclipse SmartHome™ project","fork":true,"url":"https://api.github.com/repos/J-N-K/smarthome","forks_url":"https://api.github.com/repos/J-N-K/smarthome/forks","keys_url":"https://api.github.com/repos/J-N-K/smarthome/keys{/key_id}","collaborators_url":"https://api.github.com/repos/J-N-K/smarthome/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/J-N-K/smarthome/teams","hooks_url":"https://api.github.com/repos/J-N-K/smarthome/hooks","issue_events_url":"https://api.github.com/repos/J-N-K/smarthome/issues/events{/number}","events_url":"https://api.github.com/repos/J-N-K/smarthome/events","assignees_url":"https://api.github.com/repos/J-N-K/smarthome/assignees{/user}","branches_url":"https://api.github.com/repos/J-N-K/smarthome/branches{/branch}","tags_url":"https://api.github.com/repos/J-N-K/smarthome/tags","blobs_url":"https://api.github.com/repos/J-N-K/smarthome/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/J-N-K/smarthome/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/J-N-K/smarthome/git/refs{/sha}","trees_url":"https://api.github.com/repos/J-N-K/smarthome/git/trees{/sha}","statuses_url":"https://api.github.com/repos/J-N-K/smarthome/statuses/{sha}","languages_url":"https://api.github.com/repos/J-N-K/smarthome/languages","stargazers_url":"https://api.github.com/repos/J-N-K/smarthome/stargazers","contributors_url":"https://api.github.com/repos/J-N-K/smarthome/contributors","subscribers_url":"https://api.github.com/repos/J-N-K/smarthome/subscribers","subscription_url":"https://api.github.com/repos/J-N-K/smarthome/subscription","commits_url":"https://api.github.com/repos/J-N-K/smarthome/commits{/sha}","git_commits_url":"https://api.github.com/repos/J-N-K/smarthome/git/commits{/sha}","comments_url":"https://api.github.com/repos/J-N-K/smarthome/comments{/number}","issue_comment_url":"https://api.github.com/repos/J-N-K/smarthome/issues/comments{/number}","contents_url":"https://api.github.com/repos/J-N-K/smarthome/contents/{+path}","compare_url":"https://api.github.com/repos/J-N-K/smarthome/compare/{base}...{head}","merges_url":"https://api.github.com/repos/J-N-K/smarthome/merges","archive_url":"https://api.github.com/repos/J-N-K/smarthome/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/J-N-K/smarthome/downloads","issues_url":"https://api.github.com/repos/J-N-K/smarthome/issues{/number}","pulls_url":"https://api.github.com/repos/J-N-K/smarthome/pulls{/number}","milestones_url":"https://api.github.com/repos/J-N-K/smarthome/milestones{/number}","notifications_url":"https://api.github.com/repos/J-N-K/smarthome/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/J-N-K/smarthome/labels{/name}","releases_url":"https://api.github.com/repos/J-N-K/smarthome/releases{/id}","deployments_url":"https://api.github.com/repos/J-N-K/smarthome/deployments","created_at":"2016-11-03T10:59:13Z","updated_at":"2016-11-03T10:59:20Z","pushed_at":"2017-03-13T18:55:46Z","git_url":"git://github.com/J-N-K/smarthome.git","ssh_url":"git@github.com:J-N-K/smarthome.git","clone_url":"https://github.com/J-N-K/smarthome.git","svn_url":"https://github.com/J-N-K/smarthome","homepage":"https://www.eclipse.org/smarthome/","size":27965,"stargazers_count":0,"watchers_count":0,"language":"Java","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":1,"forks":1,"open_issues":1,"watchers":0,"default_branch":"master"}},"base":{"label":"eclipse:master","ref":"master","sha":"0edb6af7d1703019a6ce10ddf931771f4edd1b9d","user":{"login":"eclipse","id":56974,"avatar_url":"https://avatars2.githubusercontent.com/u/56974?v=3","gravatar_id":"","url":"https://api.github.com/users/eclipse","html_url":"https://github.com/eclipse","followers_url":"https://api.github.com/users/eclipse/followers","following_url":"https://api.github.com/users/eclipse/following{/other_user}","gists_url":"https://api.github.com/users/eclipse/gists{/gist_id}","starred_url":"https://api.github.com/users/eclipse/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/eclipse/subscriptions","organizations_url":"https://api.github.com/users/eclipse/orgs","repos_url":"https://api.github.com/users/eclipse/repos","events_url":"https://api.github.com/users/eclipse/events{/privacy}","received_events_url":"https://api.github.com/users/eclipse/received_events","type":"Organization","site_admin":false},"repo":{"id":15778981,"name":"smarthome","full_name":"eclipse/smarthome","owner":{"login":"eclipse","id":56974,"avatar_url":"https://avatars2.githubusercontent.com/u/56974?v=3","gravatar_id":"","url":"https://api.github.com/users/eclipse","html_url":"https://github.com/eclipse","followers_url":"https://api.github.com/users/eclipse/followers","following_url":"https://api.github.com/users/eclipse/following{/other_user}","gists_url":"https://api.github.com/users/eclipse/gists{/gist_id}","starred_url":"https://api.github.com/users/eclipse/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/eclipse/subscriptions","organizations_url":"https://api.github.com/users/eclipse/orgs","repos_url":"https://api.github.com/users/eclipse/repos","events_url":"https://api.github.com/users/eclipse/events{/privacy}","received_events_url":"https://api.github.com/users/eclipse/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/eclipse/smarthome","description":"Eclipse SmartHome™ project","fork":false,"url":"https://api.github.com/repos/eclipse/smarthome","forks_url":"https://api.github.com/repos/eclipse/smarthome/forks","keys_url":"https://api.github.com/repos/eclipse/smarthome/keys{/key_id}","collaborators_url":"https://api.github.com/repos/eclipse/smarthome/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/eclipse/smarthome/teams","hooks_url":"https://api.github.com/repos/eclipse/smarthome/hooks","issue_events_url":"https://api.github.com/repos/eclipse/smarthome/issues/events{/number}","events_url":"https://api.github.com/repos/eclipse/smarthome/events","assignees_url":"https://api.github.com/repos/eclipse/smarthome/assignees{/user}","branches_url":"https://api.github.com/repos/eclipse/smarthome/branches{/branch}","tags_url":"https://api.github.com/repos/eclipse/smarthome/tags","blobs_url":"https://api.github.com/repos/eclipse/smarthome/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/eclipse/smarthome/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/eclipse/smarthome/git/refs{/sha}","trees_url":"https://api.github.com/repos/eclipse/smarthome/git/trees{/sha}","statuses_url":"https://api.github.com/repos/eclipse/smarthome/statuses/{sha}","languages_url":"https://api.github.com/repos/eclipse/smarthome/languages","stargazers_url":"https://api.github.com/repos/eclipse/smarthome/stargazers","contributors_url":"https://api.github.com/repos/eclipse/smarthome/contributors","subscribers_url":"https://api.github.com/repos/eclipse/smarthome/subscribers","subscription_url":"https://api.github.com/repos/eclipse/smarthome/subscription","commits_url":"https://api.github.com/repos/eclipse/smarthome/commits{/sha}","git_commits_url":"https://api.github.com/repos/eclipse/smarthome/git/commits{/sha}","comments_url":"https://api.github.com/repos/eclipse/smarthome/comments{/number}","issue_comment_url":"https://api.github.com/repos/eclipse/smarthome/issues/comments{/number}","contents_url":"https://api.github.com/repos/eclipse/smarthome/contents/{+path}","compare_url":"https://api.github.com/repos/eclipse/smarthome/compare/{base}...{head}","merges_url":"https://api.github.com/repos/eclipse/smarthome/merges","archive_url":"https://api.github.com/repos/eclipse/smarthome/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/eclipse/smarthome/downloads","issues_url":"https://api.github.com/repos/eclipse/smarthome/issues{/number}","pulls_url":"https://api.github.com/repos/eclipse/smarthome/pulls{/number}","milestones_url":"https://api.github.com/repos/eclipse/smarthome/milestones{/number}","notifications_url":"https://api.github.com/repos/eclipse/smarthome/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/eclipse/smarthome/labels{/name}","releases_url":"https://api.github.com/repos/eclipse/smarthome/releases{/id}","deployments_url":"https://api.github.com/repos/eclipse/smarthome/deployments","created_at":"2014-01-09T20:47:19Z","updated_at":"2017-07-06T22:04:55Z","pushed_at":"2017-07-07T16:09:28Z","git_url":"git://github.com/eclipse/smarthome.git","ssh_url":"git@github.com:eclipse/smarthome.git","clone_url":"https://github.com/eclipse/smarthome.git","svn_url":"https://github.com/eclipse/smarthome","homepage":"https://www.eclipse.org/smarthome/","size":34025,"stargazers_count":524,"watchers_count":524,"language":"Java","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":508,"mirror_url":null,"open_issues_count":310,"forks":508,"open_issues":310,"watchers":524,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/eclipse/smarthome/pulls/2704"},"html":{"href":"https://github.com/eclipse/smarthome/pull/2704"},"issue":{"href":"https://api.github.com/repos/eclipse/smarthome/issues/2704"},"comments":{"href":"https://api.github.com/repos/eclipse/smarthome/issues/2704/comments"},"review_comments":{"href":"https://api.github.com/repos/eclipse/smarthome/pulls/2704/comments"},"review_comment":{"href":"https://api.github.com/repos/eclipse/smarthome/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/eclipse/smarthome/pulls/2704/commits"},"statuses":{"href":"https://api.github.com/repos/eclipse/smarthome/statuses/6a84267ae747315219c2d887f3bd52b869ed2b75"}}}}
{"actor":{"display_login":"J-N-K"}}