<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.nina.chat/index.php?action=history&amp;feed=atom&amp;title=Protocols%2FMSNP%2FMSNP8%2FSBMiscellaneous</id>
	<title>Protocols/MSNP/MSNP8/SBMiscellaneous - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.nina.chat/index.php?action=history&amp;feed=atom&amp;title=Protocols%2FMSNP%2FMSNP8%2FSBMiscellaneous"/>
	<link rel="alternate" type="text/html" href="https://wiki.nina.chat/index.php?title=Protocols/MSNP/MSNP8/SBMiscellaneous&amp;action=history"/>
	<updated>2026-06-26T15:44:35Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.41.1</generator>
	<entry>
		<id>https://wiki.nina.chat/index.php?title=Protocols/MSNP/MSNP8/SBMiscellaneous&amp;diff=4320&amp;oldid=prev</id>
		<title>Animadoria at 10:30, 12 May 2022</title>
		<link rel="alternate" type="text/html" href="https://wiki.nina.chat/index.php?title=Protocols/MSNP/MSNP8/SBMiscellaneous&amp;diff=4320&amp;oldid=prev"/>
		<updated>2022-05-12T10:30:35Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 10:30, 12 May 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Protocols/MSNP&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/&lt;/del&gt;MSNP8 &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Messaging Nav&lt;/del&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Protocols/MSNP&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;|&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;section=&lt;/ins&gt;MSNP8}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wiki-wiki_:diff:1.41:old-2653:rev-4320:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Animadoria</name></author>
	</entry>
	<entry>
		<id>https://wiki.nina.chat/index.php?title=Protocols/MSNP/MSNP8/SBMiscellaneous&amp;diff=2653&amp;oldid=prev</id>
		<title>AD: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="https://wiki.nina.chat/index.php?title=Protocols/MSNP/MSNP8/SBMiscellaneous&amp;diff=2653&amp;oldid=prev"/>
		<updated>2020-05-29T00:23:44Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 00:23, 29 May 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;4&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;!-- diff cache key wiki-wiki_:diff:1.41:old-2652:rev-2653 --&gt;
&lt;/table&gt;</summary>
		<author><name>AD</name></author>
	</entry>
	<entry>
		<id>https://wiki.nina.chat/index.php?title=Protocols/MSNP/MSNP8/SBMiscellaneous&amp;diff=2652&amp;oldid=prev</id>
		<title>AD at 05:32, 15 January 2006</title>
		<link rel="alternate" type="text/html" href="https://wiki.nina.chat/index.php?title=Protocols/MSNP/MSNP8/SBMiscellaneous&amp;diff=2652&amp;oldid=prev"/>
		<updated>2006-01-15T05:32:51Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Protocols/MSNP/MSNP8 Messaging Nav}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Inviting Principals =&lt;br /&gt;
A principal cannot enter a switchboard session without being invited by a current participant. Any participant, not just the creator of the session, can invite other principals. There is no known limit on the number of principals in a switchboard session, but it is most likely greater than 30. There used to be a limit of five.&lt;br /&gt;
&lt;br /&gt;
You can invite the same principal into several switchboards - for example, to chat in one switchboard and transfer a file in another. However, the official client will attempt to handle all of the sessions in a single window, which can lead to confusing results. If you have more than one session to choose between, you should always send messages to the session you last received a message in.&lt;br /&gt;
&lt;br /&gt;
== CAL ==&lt;br /&gt;
To invite a principal into a switchboard session, send the '''CAL''' command to the switchboard. It should have a TrID and the account name of the principal you wish to invite as the first parameter.&lt;br /&gt;
&lt;br /&gt;
If successful, the server will respond with another '''CAL''' with the same TrID, the string '''RINGING''' as the first parameter, and the session ID of this switchboard session as the second parameter. Note that this is only an acknowledgement that you invited the principal - the principal has not joined the session yet. That comes later with the '''JOI''' command. Also, the session ID is not important to the client, and it will be the same for every principal invited.&lt;br /&gt;
&lt;br /&gt;
There are several things that can go wrong with the '''CAL''' command:&lt;br /&gt;
&lt;br /&gt;
* If you try to invite a principal that is already in the session (including yourself), you will receive [[Protocols/MSNP/Reference/Error_List#215|error 215]]. This error will also be sent if you try to invite a principal that has already been invited by your or another participant but has not yet joined.&lt;br /&gt;
* If the format was incorrect (e.g. too few or too many parameters), you will be immediately disconnected from the switchboard. However, as with every other case with the switchboard, the NS is not informed of anything and therefore the connection to the NS remains open.&lt;br /&gt;
* If the account name is invalid, such as '''@@a''', you will receive [[Protocols/MSNP/Reference/Error_List#208|error 208]] and remain connected.&lt;br /&gt;
* If the principal is offline or account name specified is nonexistent (i.e. '''myname@hotmail'''), you will receive [[Protocols/MSNP/Reference/Error_List#217|error 217]] but will not be disconnected.&lt;br /&gt;
* If the principal that you are trying to invite is on-line and either blocking you, or has [[Protocols/MSNP/MSNP8/Getting_Details#BLP|BLP]] set to '''AL''' and does not have you on his or her '''AL''', you will receive [[Protocols/MSNP/Reference/Error_List#216|error 216]]. This also does not disconnect you.&lt;br /&gt;
* If you repeatedly call someone who is blocking you, you may start to receive [[Protocols/MSNP/Reference/Error_List#713|error 713]].&lt;br /&gt;
&lt;br /&gt;
Below are some examples of using the '''CAL''' command:&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;&amp;gt;&amp;gt; CAL 2 name_123@hotmail.com\r\n&lt;br /&gt;
 &amp;lt;&amp;lt;&amp;lt; CAL 2 RINGING 11752013\r\n&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;&amp;gt;&amp;gt; CAL 3 nonexistent@passport.com\r\n&lt;br /&gt;
 &amp;lt;&amp;lt;&amp;lt; 217 3\r\n&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;&amp;gt;&amp;gt; CAL 4 offline@passport.com\r\n&lt;br /&gt;
 &amp;lt;&amp;lt;&amp;lt; 217 4\r\n&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;&amp;gt;&amp;gt; CAL 5 @@a\r\n&lt;br /&gt;
 &amp;lt;&amp;lt;&amp;lt; 208 5\r\n&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;&amp;gt;&amp;gt; CAL 5 blocking_you@passport.com\r\n&lt;br /&gt;
 &amp;lt;&amp;lt;&amp;lt; 216 5\r\n&lt;br /&gt;
 &amp;gt;&amp;gt;&amp;gt; CAL 5 blocking_you@passport.com\r\n&lt;br /&gt;
 &amp;lt;&amp;lt;&amp;lt; 216 5\r\n&lt;br /&gt;
 &amp;gt;&amp;gt;&amp;gt; CAL 5 blocking_you@passport.com\r\n&lt;br /&gt;
 &amp;lt;&amp;lt;&amp;lt; 216 5\r\n&lt;br /&gt;
 &amp;gt;&amp;gt;&amp;gt; CAL 5 blocking_you@passport.com\r\n&lt;br /&gt;
 &amp;lt;&amp;lt;&amp;lt; 216 5\r\n&lt;br /&gt;
 &amp;gt;&amp;gt;&amp;gt; CAL 5 blocking_you@passport.com\r\n&lt;br /&gt;
 &amp;lt;&amp;lt;&amp;lt; 216 5\r\n&lt;br /&gt;
 &amp;gt;&amp;gt;&amp;gt; CAL 5 blocking_you@passport.com\r\n&lt;br /&gt;
 &amp;lt;&amp;lt;&amp;lt; 216 5\r\n&lt;br /&gt;
 &amp;gt;&amp;gt;&amp;gt; CAL 5 blocking_you@passport.com\r\n&lt;br /&gt;
 &amp;lt;&amp;lt;&amp;lt; 713 5\r\n&lt;br /&gt;
&lt;br /&gt;
Only the person sending the '''CAL''' will see the outgoing '''CAL''' and the incoming CAL or errors. When the specified principal actually joins the session, every principal will receive a '''JOI'''.&lt;br /&gt;
&lt;br /&gt;
== JOI ==&lt;br /&gt;
If the '''CAL''' was successful, the specified principal will receive the '''RNG''' command from the NS. If they connect to the switchboard and authenticate, they will be part of the switchboard session. When that happens, every principal in the session (excluding the principal that just joined) will be sent the '''JOI''' command.&lt;br /&gt;
&lt;br /&gt;
The '''JOI''' command has no TrID. The first parameter is the account name of the principal that just entered the session. The second parameter is the URL-encoded display name of the principal that just entered the session. Below is an example:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;&amp;lt;&amp;lt; JOI name_123@hotmail.com Name_123\r\n&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Leaving a Switchboard Session =&lt;br /&gt;
To leave a switchboard session, a client should send the '''OUT''' command with no TrID and no parameters. The switchboard will close the connection and remove you from the session. Disconnecting without sending an '''OUT''' command has the same effect. Below is an example of using the '''OUT''' command:&lt;br /&gt;
&lt;br /&gt;
 &amp;gt;&amp;gt;&amp;gt; OUT\r\n&lt;br /&gt;
 &amp;lt;o&amp;gt; Switchboard Closes Connection&lt;br /&gt;
&lt;br /&gt;
When a participant leaves a switchboard session, all other principals in the session (if there are any left) will receive the '''BYE''' command with no TrID and the account name of the principal that left as the first parameter. Below is an example:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;&amp;lt;&amp;lt; BYE example@passport.com\r\n&lt;br /&gt;
&lt;br /&gt;
== Idle Sessions ==&lt;br /&gt;
If you are the only participant in a switchboard session (either because you haven't invited anyone yet or because everyone left), the switchboard will close the connection after five minutes of being alone. No command will be sent from the server before closing the connection.&lt;br /&gt;
&lt;br /&gt;
If you are in a 2 person switchboard session, and no commands are sent from either principal for five minutes, the switchboard will send the '''BYE''' command to both principals showing that the other principal left and it will immediately close the connection. However, this '''BYE''' command has an additional parameter after the account name that says '''1''', showing that the switchboard was closed due to idleness. Below is an example:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;&amp;lt;&amp;lt; BYE example@passport.com 1\r\n&lt;br /&gt;
 &amp;lt;o&amp;gt; Switchboard Closes Connection&lt;br /&gt;
&lt;br /&gt;
The situation in a 3 or more person session is similar to that in a 2 person session, except that the idle duration is 15 minutes and you will only receive one '''BYE''' from one participant (randomly selected).&lt;br /&gt;
&lt;br /&gt;
== Official Client ==&lt;br /&gt;
Whenever someone using the official closes a message window that's attached to an open switchboard, it will disconnect from the switchboard. The official client will tell you when a principal leaves a switchboard with three or more participants, but it will not tell you in a switchboard with only 2 participants.&lt;br /&gt;
&lt;br /&gt;
== Relation to Notification Server ==&lt;br /&gt;
Because the integration between switchboard servers and the notification server is not very tight, a principal can log off of the NS and still be connected to one or more switchboards. When the official client logs out of MSN Messenger, it will send '''OUT''' to every active switchboard and then send OUT to the NS.&lt;br /&gt;
&lt;br /&gt;
[[Category:MSN]]&lt;br /&gt;
[[Category:Protocols/MSNP]]&lt;br /&gt;
[[Category:Work_In_Progress]]&lt;/div&gt;</summary>
		<author><name>AD</name></author>
	</entry>
</feed>