{"id":25865,"date":"2023-10-02T12:47:05","date_gmt":"2023-10-02T09:47:05","guid":{"rendered":"https:\/\/trueconf.com/blog\/?p=25865"},"modified":"2026-02-17T15:34:50","modified_gmt":"2026-02-17T12:34:50","slug":"launching-trueconf-client-application-with-settings-taken-from-json-file","status":"publish","type":"post","link":"https:\/\/trueconf.com/blog\/knowledge-base\/launching-trueconf-client-application-with-settings-taken-from-json-file","title":{"rendered":"Launching TrueConf client application with settings taken from JSON file"},"content":{"rendered":"<p class=\"primary-medium-text ui-mb-sm-1\">Very often system administrators have to effectively apply the same settings to multiple instances of an application installed in the corporate network.<\/p>\n<p class=\"primary-medium-text ui-mb-sm-1\">One of the solutions for this task is to save settings in the file with a specific format (e.g., JSON, XML, or CSV) and place it on each of the target computers.<\/p>\n<p class=\"primary-medium-text ui-mb-sm-1\">Starting from the <b>8.2.0<\/b> version, TrueConf can be launched with predefined parameters specified in a JSON file. Below, we will show how to create such a file.<\/p>\n<p class=\"primary-medium-text ui-mb-sm-1\">How this method works:<\/p>\n<ul class=\"ui-list ui-list--medium\" style=\"margin-bottom: 18px;\">\n<li class=\"ui-list__item ui-list__item--num\">If a user adds the settings file, the application will read its contents, when launched, and update settings with the values from this file (the change will be reflected in the <strong>Settings<\/strong> menu).<\/li>\n<li class=\"ui-list__item ui-list__item--num\">If a user manually changes settings in the application after creating\/editing the file, the new settings will have higher priority and will be used afterwards. The json file will not be overwritten, but it will be ignored until it is edited (refer to Part 3).<\/li>\n<li class=\"ui-list__item ui-list__item--num\">If the json file has already been created, to override application settings with this file, you just need to change the time when this file was last modified. For example, you can add and remove any character and then save the file.<\/li>\n<\/ul>\n<h2 id=\"create\" class=\"h4--main h4--thick black-text ui-mb-xs-3 ui-mt-md-1\">Creating a file with parameters<\/h2>\n<p class=\"primary-medium-text ui-mb-sm-1\">First of all, it is necessary to create a JSON file and list the required settings as <code>\"key\":\"value\"<\/code> pairs where:<\/p>\n<ul class=\"ui-list ui-list--medium\" style=\"margin-bottom: 18px;\">\n<li class=\"ui-list__item ui-list__item--disc\"><code>\"key\"<\/code> is the identifier of the parameter that you want to configure<\/li>\n<li class=\"ui-list__item ui-list__item--disc\"><code>\"value\"<\/code> is the value of the given parameter.<\/li>\n<\/ul>\n<div class=\"accent-note accent-note--line ui-mb-sm-1\">\n<p class=\"primary-medium-text\">\nTo learn more about the JSON format, check the <a href=\"https:\/\/www.json.org\/json-en.html\" target=\"_blank\" rel=\"noopener\">official documentation<\/a>.\n<\/p>\n<\/div>\n<p class=\"primary-medium-text ui-mb-sm-1\">The PDF file with the full list of keys, their values, and corresponding settings  is available for download via this link:<\/p>\n<p><a href=\"https:\/\/trueconf.com\/blog\/wp-content\/uploads\/2023\/10\/msi_json_keys_client_app_en.pdf\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" role=\"link\" class=\"default-button default-button--md default-button--orange default-button--rounded default-button--truncate ui-mb-xs-3\"><span class=\"default-button__text white-text\">List of JSON parameters<\/span><\/a><\/p>\n<p class=\"primary-medium-text ui-mb-sm-1\">Here is an example of a JSON file with client application settings:<\/p>\n<pre class=\"lang:default decode:true \">{\r\n   \"selfViewMirror\":false,\r\n   \"invertedPTZControl\":false,\r\n   \"audioPlayLevel\":0.6,\r\n   \"aecEnable\":true,\r\n   \"noiseSupEnable\":true,\r\n   \"audioDumpEnable\":false,\r\n   \"isSpeakerphoneHardwareMuted\":false,\r\n   \"corporateServer\":true,\r\n   \"canAskForServerSelector\":false,\r\n   \"enableAutologin\":true,\r\n   \"canAskForRateUs\":false,\r\n   \"userDefinedServerHost\":\"192.168.0.1\",\r\n   \"userDefinedServerPort\":4307,\r\n   \"language\":\"ru\"\r\n}\r\n<\/pre>\n<div class=\"accent-note accent-note--line ui-mb-sm-1\">\n<p class=\"primary-medium-text\">\nThe values of some parameters can be used only in combination with other parameters. For example, if the value of the corporateServer parameter is set to true (this parameter is responsible for automatic connection to the server when the application is started), you have to specify the value of the userDefinedServerHost parameter with the corresponding address of the server to which the application should connect. All the parameters that have to be used in pairs are marked in the PDF file mentioned before.\n<\/p>\n<\/div>\n<h2 id=\"launch\" class=\"h4--main h4--thick black-text ui-mb-xs-3 ui-mt-md-1\">Launching the application<\/h2>\n<p class=\"primary-medium-text ui-mb-sm-1\">Place the created file settings.json to the directory where the application is installed:<\/p>\n<ul class=\"ui-list ui-list--medium\" style=\"margin-bottom: 18px;\">\n<li class=\"ui-list__item ui-list__item--disc\">On Windows \u2013 <code>C:\\Program Files\\TrueConf\\Client<\/code><\/li>\n<li class=\"ui-list__item ui-list__item--disc\">On Linux \u2013 <code>\/opt\/trueconf\/<\/code><\/li>\n<li class=\"ui-list__item ui-list__item--disc\">On macOS \u2013 <code>\/Applications\/TrueConf\\ Client.app\/Contents\/MacOS<\/code> (the character <code>\\<\/code> is needed for escaping the space).<\/li>\n<\/ul>\n<div class=\"accent-note accent-note--line ui-mb-sm-1\">\n<p class=\"primary-medium-text\">\nThe file name <code>settings.json<\/code> is required if you choose this way of launching the application. The settings provided in any file with a different name will not be applied.\n<\/p>\n<\/div>\n<p class=\"primary-medium-text ui-mb-sm-1\">At this point, you can launch the application. All settings will be applied automatically.<\/p>\n<h3 id=\"file\" class=\"h5--main h5--thick black-text ui-mb-xs-3 ui-mt-md-1\">Launching the application with an explicitly specified file path<\/h3>\n<p class=\"primary-medium-text ui-mb-sm-1\">Sometimes, it may not be convenient to replace the file stored at the installation path. A user may have to run the application with pre-defined settings only once. In this case, one has to launch the application with the <code>--settings<\/code> parameter. Specify the full path to the settings file as the argument. For example, you can do it in the Windows command line:<\/p>\n<pre class=\"lang:default decode:true \" >\"C:\\Program Files\\TrueConf\\Client\\TrueConf.exe\" --settings \"D:\/my_settings.json\"<\/pre>\n<div class=\"accent-note accent-note--line ui-mb-sm-1\">\n<p class=\"primary-medium-text\">\nThere are multiple ways of running TrueConf client applications with command-line parameters. All of them are fully described in our <a href=\"https:\/\/trueconf.com\/blog\/knowledge-base\/launch-trueconf-client-applications-via-command-line-parameters.html\" target=\"_blank\" rel=\"noopener\">knowledge base article<\/a>.\n<\/p>\n<\/div>\n<p class=\"primary-medium-text ui-mb-sm-1\">Unlike the method described in the previous sub-section, here, you do not have to name the settings file only as <code>settings<\/code>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Very often system administrators have to effectively apply the same settings to multiple instances of an application installed in the corporate network. One of the solutions for this task is to save settings in the file with a specific format (e.g., JSON, XML, or CSV) and place it on each of the target computers. Starting [&hellip;]<\/p>\n","protected":false},"author":65,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[260],"tags":[246],"class_list":["post-25865","post","type-post","status-publish","format-standard","hentry","category-knowledge-base","tag-api-and-sdk","wpautop"],"_links":{"self":[{"href":"https:\/\/trueconf.com/blog\/wp-json\/wp\/v2\/posts\/25865","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/trueconf.com/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/trueconf.com/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/trueconf.com/blog\/wp-json\/wp\/v2\/users\/65"}],"replies":[{"embeddable":true,"href":"https:\/\/trueconf.com/blog\/wp-json\/wp\/v2\/comments?post=25865"}],"version-history":[{"count":15,"href":"https:\/\/trueconf.com/blog\/wp-json\/wp\/v2\/posts\/25865\/revisions"}],"predecessor-version":[{"id":43101,"href":"https:\/\/trueconf.com/blog\/wp-json\/wp\/v2\/posts\/25865\/revisions\/43101"}],"wp:attachment":[{"href":"https:\/\/trueconf.com/blog\/wp-json\/wp\/v2\/media?parent=25865"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/trueconf.com/blog\/wp-json\/wp\/v2\/categories?post=25865"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/trueconf.com/blog\/wp-json\/wp\/v2\/tags?post=25865"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}