<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.webtv.zone/mediawiki/index.php?action=history&amp;feed=atom&amp;title=WTVP%2FProcesses%2FRetrieving_settings</id>
	<title>WTVP/Processes/Retrieving settings - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.webtv.zone/mediawiki/index.php?action=history&amp;feed=atom&amp;title=WTVP%2FProcesses%2FRetrieving_settings"/>
	<link rel="alternate" type="text/html" href="https://wiki.webtv.zone/mediawiki/index.php?title=WTVP/Processes/Retrieving_settings&amp;action=history"/>
	<updated>2026-05-23T21:25:15Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.44.0</generator>
	<entry>
		<id>https://wiki.webtv.zone/mediawiki/index.php?title=WTVP/Processes/Retrieving_settings&amp;diff=574&amp;oldid=prev</id>
		<title>Wtv-411: Add info on WTVP settings services</title>
		<link rel="alternate" type="text/html" href="https://wiki.webtv.zone/mediawiki/index.php?title=WTVP/Processes/Retrieving_settings&amp;diff=574&amp;oldid=prev"/>
		<updated>2023-08-04T17:13:15Z</updated>

		<summary type="html">&lt;p&gt;Add info on WTVP settings services&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{WTVPNav}}&lt;br /&gt;
&amp;lt;!-- I might need to rewrite the terminology for the headwaiter response that sends the services and config headers at some point.&lt;br /&gt;
     Headwaiter reconnect sends those headers too, so it isn&amp;#039;t really a &amp;quot;final&amp;quot; response --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After receiving the [[WTVP/Processes/Headwaiter/Final Responses|final headwaiter response]] on a successful login, the WebTV/MSN TV client will contact a service to retrieve the settings for the current account from the server before fully activating and going to the home page. This service is specified in the &amp;lt;code&amp;gt;wtv-settings-url&amp;lt;/code&amp;gt; header after all the &amp;lt;code&amp;gt;wtv-service&amp;lt;/code&amp;gt; headers are defined, and the URL for this service is typically either &amp;lt;code&amp;gt;wtv-setup:/get&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;wtv-setup:/get-settings&amp;lt;/code&amp;gt;. On official WebTV/MSN TV clients, if this header isn&amp;#039;t present, then it will default to using the former URL. The settings specified by the service are used to enable or disable certain features and configure how the client is supposed to behave.&lt;br /&gt;
&lt;br /&gt;
== Process ==&lt;br /&gt;
&lt;br /&gt;
The request made to the settings service is a standard WTVP &amp;lt;code&amp;gt;GET&amp;lt;/code&amp;gt; request. The server will send a response with a query string in the body containing the settings for the current WebTV/MSN TV account, as well as headers for the client&amp;#039;s printer settings and language, and a header named &amp;lt;code&amp;gt;wtv-backgroundmusic-load-playlist&amp;lt;/code&amp;gt;, which contains a service URL for the client to get a list of songs to play as background music while the user is online:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
200 OK\n&lt;br /&gt;
Connection: Keep-Alive\n&lt;br /&gt;
wtv-encrypted: true\n&lt;br /&gt;
wtv-backgroundmusic-load-playlist: wtv-setup:/get-playlist\n&lt;br /&gt;
wtv-printer-model: -1,-1\n&lt;br /&gt;
wtv-printer-pen: 0,0,1,0\n&lt;br /&gt;
wtv-printer-setup: 0,0,1,0\n&lt;br /&gt;
wtv-language-header: en-US,en\n&lt;br /&gt;
wtv-lzpf: 0\n&lt;br /&gt;
Content-length: {length of body}\n&lt;br /&gt;
Content-type: text/html\n&lt;br /&gt;
\n&lt;br /&gt;
from-server=1&amp;amp;setup-advanced-options=0&amp;amp;setup-play-bgm=1&amp;amp;setup-bgm-tempo=-1&amp;amp;setup-bgm-volume=100&amp;amp;setup-background-color=c6c6c6&amp;amp;setup-font-sizes=medium&amp;amp;setup-in-stereo=1&amp;amp;setup-keyboard=alphabetical&amp;amp;setup-link-color=2222bb&amp;amp;setup-play-songs=1&amp;amp;setup-play-sounds=1&amp;amp;setup-text-color=0&amp;amp;setup-visited-color=8822bb&amp;amp;setup-japan-keyboard=roman&amp;amp;setup-japan-softkeyboard=roman&amp;amp;setup-chat-access-level=0&amp;amp;setup-chat-on-nontrusted-pages=1&amp;amp;setup-tv-chat-level=2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Retrieving background music playlist ===&lt;br /&gt;
&lt;br /&gt;
After receiving the response from the settings service, the client will send a &amp;lt;code&amp;gt;GET&amp;lt;/code&amp;gt; request to the service URL for the BGM playlist service specified in the &amp;lt;code&amp;gt;wtv-backgroundmusic-load-playlist&amp;lt;/code&amp;gt; header from the response. The service will respond with command headers that make the client clear any existing BGM from its playlist and add background songs as specified by the current user&amp;#039;s settings by setting the location to the music file (usually from the service) in a &amp;lt;code&amp;gt;wtv-backgroundmusic-add&amp;lt;/code&amp;gt; header:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
200 OK\n&lt;br /&gt;
Connection: Keep-Alive\n&lt;br /&gt;
wtv-encrypted: true\n&lt;br /&gt;
wtv-backgroundmusic-clear: no_zits\n&lt;br /&gt;
wtv-backgroundmusic-add: wtv-setup:/MusicCache/song.mid&lt;br /&gt;
wtv-backgroundmusic-add: wtv-setup:/MusicCache/song2.mid&lt;br /&gt;
wtv-backgroundmusic-add: wtv-setup:/MusicCache/headspace/RMF/upbeat/popster.rmf&lt;br /&gt;
wtv-backgroundmusic-add: wtv-setup:/MusicCache/headspace/RMF/underground/polyzoot.rmf&lt;br /&gt;
...&lt;br /&gt;
Content-length: 0\n&lt;br /&gt;
Content-type: text/html\n&lt;br /&gt;
\n&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Official clients should theoretically be able to support any audio formats they already support as background music, but the official service offered predefined tracks in MIDI and RMF (a proprietary format developed by Beatnik) as background songs that subscribers could choose from.&lt;br /&gt;
&lt;br /&gt;
== List of settings ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
! Name&lt;br /&gt;
! Type&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| from-server&lt;br /&gt;
| integer&lt;br /&gt;
| Unknown. Usually 1.&lt;br /&gt;
|-&lt;br /&gt;
| setup-advanced-options&lt;br /&gt;
| integer&lt;br /&gt;
| Unknown. Usually 0.&lt;br /&gt;
|-&lt;br /&gt;
| setup-play-bgm&lt;br /&gt;
| integer&lt;br /&gt;
| Toggles whether background music can play for the subscriber/user. 1 for yes, 0 for no.&lt;br /&gt;
|-&lt;br /&gt;
| setup-bgm-tempo&lt;br /&gt;
| integer&lt;br /&gt;
| Unknown. Usually -1.&lt;br /&gt;
|-&lt;br /&gt;
| setup-bgm-volume&lt;br /&gt;
| integer&lt;br /&gt;
| Unknown. Usually 100.&lt;br /&gt;
|-&lt;br /&gt;
| setup-background-color&lt;br /&gt;
| string&lt;br /&gt;
| Unknown. Usually &amp;lt;code&amp;gt;c6c6c6&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| setup-font-sizes&lt;br /&gt;
| string&lt;br /&gt;
| Likely meant to configure the text size for web pages on the WebTV/MSN TV client. Default is &amp;lt;code&amp;gt;medium&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| setup-in-stereo&lt;br /&gt;
| integer&lt;br /&gt;
| Unknown. Usually 1.&lt;br /&gt;
|-&lt;br /&gt;
| setup-keyboard&lt;br /&gt;
| string&lt;br /&gt;
| Unknown. Usually &amp;lt;code&amp;gt;alphabetical&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| setup-link-color&lt;br /&gt;
| string&lt;br /&gt;
| Unknown. Usually &amp;lt;code&amp;gt;2222bb&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| setup-play-songs&lt;br /&gt;
| integer&lt;br /&gt;
| Unknown. Usually 1.&lt;br /&gt;
|-&lt;br /&gt;
| setup-play-sounds&lt;br /&gt;
| integer&lt;br /&gt;
| Unknown. Usually 1.&lt;br /&gt;
|-&lt;br /&gt;
| setup-text-color&lt;br /&gt;
| integer&lt;br /&gt;
| Unknown. Usually 0.&lt;br /&gt;
|-&lt;br /&gt;
| setup-visited-color&lt;br /&gt;
| string&lt;br /&gt;
| Unknown. Usually &amp;lt;code&amp;gt;8822bb&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| setup-japan-keyboard&lt;br /&gt;
| string&lt;br /&gt;
| Unknown. Usually &amp;lt;code&amp;gt;roman&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| setup-japan-softkeyboard&lt;br /&gt;
| string&lt;br /&gt;
| Unknown. Usually &amp;lt;code&amp;gt;roman&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| setup-chat-access-level&lt;br /&gt;
| integer&lt;br /&gt;
| Unknown. Usually 0.&lt;br /&gt;
|-&lt;br /&gt;
| setup-chat-on-nontrusted-pages&lt;br /&gt;
| integer&lt;br /&gt;
| Unknown. Usually 1.&lt;br /&gt;
|-&lt;br /&gt;
| setup-tv-chat-level&lt;br /&gt;
| integer&lt;br /&gt;
| Unknown. Usually 2.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Wtv-411</name></author>
	</entry>
</feed>