{"action":"created","comment":{"url":"https://api.github.com/repos/tjaffri/msiot-samples/pulls/comments/75537370","id":75537370,"diff_hunk":"@@ -105,5 +141,85 @@ private void InitButton_Click(object sender, RoutedEventArgs e)\n                 }\n             }\n         }\n+\n+        private void OpenT2TBridgeArchitestrationService_ServiceClosed(AppServiceConnection sender, AppServiceClosedEventArgs args)\n+        {\n+            msg.Text = \"App Service closed\";\n+            openT2TBridgeArchitestrationService = null;\n+        }\n+\n+        private void OpenT2TBridgeArchitestrationService_RequestReceived(AppServiceConnection sender, AppServiceRequestReceivedEventArgs args)\n+        {\n+            throw new NotImplementedException();\n+        }\n+\n+        [DataContract]\n+        internal class DeviceProps\n+        {\n+            public static DeviceProps CreateInstance(string id, string accessToken)\n+            {\n+                return new DeviceProps(id, accessToken);\n+            }\n+            private DeviceProps(string identifier, string accessToken)\n+            {\n+                id = identifier;\n+                access_token = accessToken;\n+            }\n+\n+            [DataMember]\n+            internal string id;\n+\n+            [DataMember]\n+            internal string access_token;\n+        }\n+        // TODO : Currently Vendor/Model are not sent to app service, which also do not look for them. \n+        private async Task<ValueSet> GetBridgeAppServiceValueSet(string name, string props, string jsFile, string schemaFile)\n+        {\n+            DataContractJsonSerializer js = new DataContractJsonSerializer(typeof(DeviceProps));\n+            MemoryStream ms = new MemoryStream(System.Text.ASCIIEncoding.ASCII.GetBytes(props));","path":"AllJoyn/Platform/TestApps/UwpTestApp/MainPage.xaml.cs","position":null,"original_position":120,"commit_id":"12fb1bd5f6a6721011ad4bf0ba8fdc6af3e0172a","original_commit_id":"e5c638c1423aa5733534097e796b64aec7db5aa0","user":{"login":"sanjaiganesh","id":10471289,"avatar_url":"https://avatars.githubusercontent.com/u/10471289?v=3","gravatar_id":"","url":"https://api.github.com/users/sanjaiganesh","html_url":"https://github.com/sanjaiganesh","followers_url":"https://api.github.com/users/sanjaiganesh/followers","following_url":"https://api.github.com/users/sanjaiganesh/following{/other_user}","gists_url":"https://api.github.com/users/sanjaiganesh/gists{/gist_id}","starred_url":"https://api.github.com/users/sanjaiganesh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sanjaiganesh/subscriptions","organizations_url":"https://api.github.com/users/sanjaiganesh/orgs","repos_url":"https://api.github.com/users/sanjaiganesh/repos","events_url":"https://api.github.com/users/sanjaiganesh/events{/privacy}","received_events_url":"https://api.github.com/users/sanjaiganesh/received_events","type":"User","site_admin":false},"body":"#Resolved\r\n\r\n---\r\nIn reply to: [75203838](https://github.com/tjaffri/msiot-samples/pull/9#discussion_r75203838) [](ancestors = 75203838,75189001)","created_at":"2016-08-19T19:16:01Z","updated_at":"2016-08-19T19:16:01Z","html_url":"https://github.com/tjaffri/msiot-samples/pull/9#discussion_r75537370","pull_request_url":"https://api.github.com/repos/tjaffri/msiot-samples/pulls/9","_links":{"self":{"href":"https://api.github.com/repos/tjaffri/msiot-samples/pulls/comments/75537370"},"html":{"href":"https://github.com/tjaffri/msiot-samples/pull/9#discussion_r75537370"},"pull_request":{"href":"https://api.github.com/repos/tjaffri/msiot-samples/pulls/9"}}},"pull_request":{"url":"https://api.github.com/repos/tjaffri/msiot-samples/pulls/9","id":81560883,"html_url":"https://github.com/tjaffri/msiot-samples/pull/9","diff_url":"https://github.com/tjaffri/msiot-samples/pull/9.diff","patch_url":"https://github.com/tjaffri/msiot-samples/pull/9.patch","issue_url":"https://api.github.com/repos/tjaffri/msiot-samples/issues/9","number":9,"state":"open","locked":false,"title":"Centennial App for hosting AllJoyn device system bridge","user":{"login":"sanjaiganesh","id":10471289,"avatar_url":"https://avatars.githubusercontent.com/u/10471289?v=3","gravatar_id":"","url":"https://api.github.com/users/sanjaiganesh","html_url":"https://github.com/sanjaiganesh","followers_url":"https://api.github.com/users/sanjaiganesh/followers","following_url":"https://api.github.com/users/sanjaiganesh/following{/other_user}","gists_url":"https://api.github.com/users/sanjaiganesh/gists{/gist_id}","starred_url":"https://api.github.com/users/sanjaiganesh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sanjaiganesh/subscriptions","organizations_url":"https://api.github.com/users/sanjaiganesh/orgs","repos_url":"https://api.github.com/users/sanjaiganesh/repos","events_url":"https://api.github.com/users/sanjaiganesh/events{/privacy}","received_events_url":"https://api.github.com/users/sanjaiganesh/received_events","type":"User","site_admin":false},"body":"- Adding Centennial app that hosts an App Service, which in turn hosts DSB.\r\n- updated test app to consume app service (optional)\r\n- Initialize AlJoyn by calling alljoyn_init(). DSB was crashing, esp in debug mode. This is a mandatory step that was missed.\r\n- Ensure Bridge solution builds in 'release' mode, in which centennial app is tested.\r\n\r\nFor detailed info, refer to README.md in BridgeHost project. Below is the summary.\r\n\r\n###  There are two parts in the centennial app\r\n* BridgeHost : This project represents UWP portion fo the app that has hosts the app service, which in turns hosts the bridge (DSB).\r\n* BridgeHostStartupTask : This project is a win32 application that runs on startup (logon), starts the app service and holds on to it so that underlying AllJoyn bridge (DSB) is alive. \r\n\r\nApp service stores info (DeviceInfo) about previously onboarded devices in the application data, organized in the following application data container hierarchy. \r\nThis data gets deleted upon uninstall. Ideally, corresponding cloud service should store this information which app can sync to.\r\nThat will ensure devices appear on the bus even after uninstall/install and not required to be onboarded again.\r\nThe name of the child containers to 'OnboardedDevices' container is generated using (app service)client provided 'Category' (in valueset) concatenated with device ID.\r\nThis should change per final design.\r\n\r\n* OnboardedDevices\r\n\t* WinkThermoStat:'*device id*'\r\n\t\t* 'DeviceInfo'\r\n\t* WinkThermoStat:'*device id*'\r\n\t\t* 'DeviceInfo'\r\n\t* VeeraLightBulb:'*device id*'\r\n\t\t* 'DeviceInfo'\r\nThis data is used when gets activated upon startup (logon) and onboards those devices.\r\n\r\nThe Ultimate effect is, user sees the devices (on AJ bus), even after restarting the machine. This is the magic we want.\r\nConsole or client app can come and onboard new devices and go. But Bridge/App services stays alive.\r\nStartup task has the health check (does every 5 seconds) and starts app service if not UP.","created_at":"2016-08-16T23:16:35Z","updated_at":"2016-08-19T19:16:01Z","closed_at":null,"merged_at":null,"merge_commit_sha":"f7d3e30dbe6a7627a86e6ff1946ac940523d782d","assignee":{"login":"jasongin","id":13093042,"avatar_url":"https://avatars.githubusercontent.com/u/13093042?v=3","gravatar_id":"","url":"https://api.github.com/users/jasongin","html_url":"https://github.com/jasongin","followers_url":"https://api.github.com/users/jasongin/followers","following_url":"https://api.github.com/users/jasongin/following{/other_user}","gists_url":"https://api.github.com/users/jasongin/gists{/gist_id}","starred_url":"https://api.github.com/users/jasongin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jasongin/subscriptions","organizations_url":"https://api.github.com/users/jasongin/orgs","repos_url":"https://api.github.com/users/jasongin/repos","events_url":"https://api.github.com/users/jasongin/events{/privacy}","received_events_url":"https://api.github.com/users/jasongin/received_events","type":"User","site_admin":false},"assignees":[{"login":"jasongin","id":13093042,"avatar_url":"https://avatars.githubusercontent.com/u/13093042?v=3","gravatar_id":"","url":"https://api.github.com/users/jasongin","html_url":"https://github.com/jasongin","followers_url":"https://api.github.com/users/jasongin/followers","following_url":"https://api.github.com/users/jasongin/following{/other_user}","gists_url":"https://api.github.com/users/jasongin/gists{/gist_id}","starred_url":"https://api.github.com/users/jasongin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jasongin/subscriptions","organizations_url":"https://api.github.com/users/jasongin/orgs","repos_url":"https://api.github.com/users/jasongin/repos","events_url":"https://api.github.com/users/jasongin/events{/privacy}","received_events_url":"https://api.github.com/users/jasongin/received_events","type":"User","site_admin":false}],"milestone":null,"commits_url":"https://api.github.com/repos/tjaffri/msiot-samples/pulls/9/commits","review_comments_url":"https://api.github.com/repos/tjaffri/msiot-samples/pulls/9/comments","review_comment_url":"https://api.github.com/repos/tjaffri/msiot-samples/pulls/comments{/number}","comments_url":"https://api.github.com/repos/tjaffri/msiot-samples/issues/9/comments","statuses_url":"https://api.github.com/repos/tjaffri/msiot-samples/statuses/12fb1bd5f6a6721011ad4bf0ba8fdc6af3e0172a","head":{"label":"sanjaiganesh:develop","ref":"develop","sha":"12fb1bd5f6a6721011ad4bf0ba8fdc6af3e0172a","user":{"login":"sanjaiganesh","id":10471289,"avatar_url":"https://avatars.githubusercontent.com/u/10471289?v=3","gravatar_id":"","url":"https://api.github.com/users/sanjaiganesh","html_url":"https://github.com/sanjaiganesh","followers_url":"https://api.github.com/users/sanjaiganesh/followers","following_url":"https://api.github.com/users/sanjaiganesh/following{/other_user}","gists_url":"https://api.github.com/users/sanjaiganesh/gists{/gist_id}","starred_url":"https://api.github.com/users/sanjaiganesh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sanjaiganesh/subscriptions","organizations_url":"https://api.github.com/users/sanjaiganesh/orgs","repos_url":"https://api.github.com/users/sanjaiganesh/repos","events_url":"https://api.github.com/users/sanjaiganesh/events{/privacy}","received_events_url":"https://api.github.com/users/sanjaiganesh/received_events","type":"User","site_admin":false},"repo":{"id":62578967,"name":"msiot-samples","full_name":"sanjaiganesh/msiot-samples","owner":{"login":"sanjaiganesh","id":10471289,"avatar_url":"https://avatars.githubusercontent.com/u/10471289?v=3","gravatar_id":"","url":"https://api.github.com/users/sanjaiganesh","html_url":"https://github.com/sanjaiganesh","followers_url":"https://api.github.com/users/sanjaiganesh/followers","following_url":"https://api.github.com/users/sanjaiganesh/following{/other_user}","gists_url":"https://api.github.com/users/sanjaiganesh/gists{/gist_id}","starred_url":"https://api.github.com/users/sanjaiganesh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sanjaiganesh/subscriptions","organizations_url":"https://api.github.com/users/sanjaiganesh/orgs","repos_url":"https://api.github.com/users/sanjaiganesh/repos","events_url":"https://api.github.com/users/sanjaiganesh/events{/privacy}","received_events_url":"https://api.github.com/users/sanjaiganesh/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/sanjaiganesh/msiot-samples","description":"Windows 10 IoT Core Samples","fork":true,"url":"https://api.github.com/repos/sanjaiganesh/msiot-samples","forks_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/forks","keys_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/keys{/key_id}","collaborators_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/teams","hooks_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/hooks","issue_events_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/issues/events{/number}","events_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/events","assignees_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/assignees{/user}","branches_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/branches{/branch}","tags_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/tags","blobs_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/git/refs{/sha}","trees_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/git/trees{/sha}","statuses_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/statuses/{sha}","languages_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/languages","stargazers_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/stargazers","contributors_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/contributors","subscribers_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/subscribers","subscription_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/subscription","commits_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/commits{/sha}","git_commits_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/git/commits{/sha}","comments_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/comments{/number}","issue_comment_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/issues/comments{/number}","contents_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/contents/{+path}","compare_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/compare/{base}...{head}","merges_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/merges","archive_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/downloads","issues_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/issues{/number}","pulls_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/pulls{/number}","milestones_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/milestones{/number}","notifications_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/labels{/name}","releases_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/releases{/id}","deployments_url":"https://api.github.com/repos/sanjaiganesh/msiot-samples/deployments","created_at":"2016-07-04T17:40:11Z","updated_at":"2016-07-04T17:41:00Z","pushed_at":"2016-08-19T19:13:02Z","git_url":"git://github.com/sanjaiganesh/msiot-samples.git","ssh_url":"git@github.com:sanjaiganesh/msiot-samples.git","clone_url":"https://github.com/sanjaiganesh/msiot-samples.git","svn_url":"https://github.com/sanjaiganesh/msiot-samples","homepage":null,"size":325137,"stargazers_count":0,"watchers_count":0,"language":"C++","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"develop"}},"base":{"label":"tjaffri:develop","ref":"develop","sha":"04bc5f7edc27068d5c07f01765a1dd556d734cd4","user":{"login":"tjaffri","id":749277,"avatar_url":"https://avatars.githubusercontent.com/u/749277?v=3","gravatar_id":"","url":"https://api.github.com/users/tjaffri","html_url":"https://github.com/tjaffri","followers_url":"https://api.github.com/users/tjaffri/followers","following_url":"https://api.github.com/users/tjaffri/following{/other_user}","gists_url":"https://api.github.com/users/tjaffri/gists{/gist_id}","starred_url":"https://api.github.com/users/tjaffri/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tjaffri/subscriptions","organizations_url":"https://api.github.com/users/tjaffri/orgs","repos_url":"https://api.github.com/users/tjaffri/repos","events_url":"https://api.github.com/users/tjaffri/events{/privacy}","received_events_url":"https://api.github.com/users/tjaffri/received_events","type":"User","site_admin":false},"repo":{"id":54935496,"name":"msiot-samples","full_name":"tjaffri/msiot-samples","owner":{"login":"tjaffri","id":749277,"avatar_url":"https://avatars.githubusercontent.com/u/749277?v=3","gravatar_id":"","url":"https://api.github.com/users/tjaffri","html_url":"https://github.com/tjaffri","followers_url":"https://api.github.com/users/tjaffri/followers","following_url":"https://api.github.com/users/tjaffri/following{/other_user}","gists_url":"https://api.github.com/users/tjaffri/gists{/gist_id}","starred_url":"https://api.github.com/users/tjaffri/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tjaffri/subscriptions","organizations_url":"https://api.github.com/users/tjaffri/orgs","repos_url":"https://api.github.com/users/tjaffri/repos","events_url":"https://api.github.com/users/tjaffri/events{/privacy}","received_events_url":"https://api.github.com/users/tjaffri/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/tjaffri/msiot-samples","description":"Windows 10 IoT Core Samples","fork":true,"url":"https://api.github.com/repos/tjaffri/msiot-samples","forks_url":"https://api.github.com/repos/tjaffri/msiot-samples/forks","keys_url":"https://api.github.com/repos/tjaffri/msiot-samples/keys{/key_id}","collaborators_url":"https://api.github.com/repos/tjaffri/msiot-samples/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/tjaffri/msiot-samples/teams","hooks_url":"https://api.github.com/repos/tjaffri/msiot-samples/hooks","issue_events_url":"https://api.github.com/repos/tjaffri/msiot-samples/issues/events{/number}","events_url":"https://api.github.com/repos/tjaffri/msiot-samples/events","assignees_url":"https://api.github.com/repos/tjaffri/msiot-samples/assignees{/user}","branches_url":"https://api.github.com/repos/tjaffri/msiot-samples/branches{/branch}","tags_url":"https://api.github.com/repos/tjaffri/msiot-samples/tags","blobs_url":"https://api.github.com/repos/tjaffri/msiot-samples/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/tjaffri/msiot-samples/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/tjaffri/msiot-samples/git/refs{/sha}","trees_url":"https://api.github.com/repos/tjaffri/msiot-samples/git/trees{/sha}","statuses_url":"https://api.github.com/repos/tjaffri/msiot-samples/statuses/{sha}","languages_url":"https://api.github.com/repos/tjaffri/msiot-samples/languages","stargazers_url":"https://api.github.com/repos/tjaffri/msiot-samples/stargazers","contributors_url":"https://api.github.com/repos/tjaffri/msiot-samples/contributors","subscribers_url":"https://api.github.com/repos/tjaffri/msiot-samples/subscribers","subscription_url":"https://api.github.com/repos/tjaffri/msiot-samples/subscription","commits_url":"https://api.github.com/repos/tjaffri/msiot-samples/commits{/sha}","git_commits_url":"https://api.github.com/repos/tjaffri/msiot-samples/git/commits{/sha}","comments_url":"https://api.github.com/repos/tjaffri/msiot-samples/comments{/number}","issue_comment_url":"https://api.github.com/repos/tjaffri/msiot-samples/issues/comments{/number}","contents_url":"https://api.github.com/repos/tjaffri/msiot-samples/contents/{+path}","compare_url":"https://api.github.com/repos/tjaffri/msiot-samples/compare/{base}...{head}","merges_url":"https://api.github.com/repos/tjaffri/msiot-samples/merges","archive_url":"https://api.github.com/repos/tjaffri/msiot-samples/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/tjaffri/msiot-samples/downloads","issues_url":"https://api.github.com/repos/tjaffri/msiot-samples/issues{/number}","pulls_url":"https://api.github.com/repos/tjaffri/msiot-samples/pulls{/number}","milestones_url":"https://api.github.com/repos/tjaffri/msiot-samples/milestones{/number}","notifications_url":"https://api.github.com/repos/tjaffri/msiot-samples/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/tjaffri/msiot-samples/labels{/name}","releases_url":"https://api.github.com/repos/tjaffri/msiot-samples/releases{/id}","deployments_url":"https://api.github.com/repos/tjaffri/msiot-samples/deployments","created_at":"2016-03-29T01:16:23Z","updated_at":"2016-06-24T00:08:12Z","pushed_at":"2016-08-19T19:13:04Z","git_url":"git://github.com/tjaffri/msiot-samples.git","ssh_url":"git@github.com:tjaffri/msiot-samples.git","clone_url":"https://github.com/tjaffri/msiot-samples.git","svn_url":"https://github.com/tjaffri/msiot-samples","homepage":null,"size":323486,"stargazers_count":1,"watchers_count":1,"language":"C++","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":2,"forks":2,"open_issues":2,"watchers":1,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/tjaffri/msiot-samples/pulls/9"},"html":{"href":"https://github.com/tjaffri/msiot-samples/pull/9"},"issue":{"href":"https://api.github.com/repos/tjaffri/msiot-samples/issues/9"},"comments":{"href":"https://api.github.com/repos/tjaffri/msiot-samples/issues/9/comments"},"review_comments":{"href":"https://api.github.com/repos/tjaffri/msiot-samples/pulls/9/comments"},"review_comment":{"href":"https://api.github.com/repos/tjaffri/msiot-samples/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/tjaffri/msiot-samples/pulls/9/commits"},"statuses":{"href":"https://api.github.com/repos/tjaffri/msiot-samples/statuses/12fb1bd5f6a6721011ad4bf0ba8fdc6af3e0172a"}}}}
{"actor":{"display_login":"sanjaiganesh"}}