Files
FC1/Ubisoft.com/GSServices/sdks/gs-sdk-base/doc-api/group__group__FriendCB.html
romkazvo 34d6c5d489 123
2023-08-07 19:29:24 +08:00

615 lines
30 KiB
HTML

<HTML>
<HEAD>
<TITLE>Ubi.com GameService SDK</TITLE>
<LINK href="./gs-sdk-doc.css" rel="stylesheet" type="text/css">
</HEAD>
<BODY >
<!-- Generated by Doxygen 1.3.4 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<h1>Callbacks<br>
<small>
[<a class="el" href="group__group2.html">Friends Service</a>]</small>
</h1>The friends service function callbacks.
<a href="#_details">More...</a><table border=0 cellpadding=0 cellspacing=0>
<tr><td></td></tr>
<tr><td colspan=2><br><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>typedef GSvoid(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="group__group__FriendCB.html#a0">CBFriendsRcv_LoginResult</a> )(GSubyte ubType, GSint iReason)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Receive friends service login result. </em> <a href="#a0"></a><em><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>typedef GSvoid(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="group__group__FriendCB.html#a1">CBFriendsRcv_AddFriend</a> )(GSubyte ubType, GSint iReason, GSchar *szUsername)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Receive the status of the friend addition request. </em> <a href="#a1"></a><em><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>typedef GSvoid(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="group__group__FriendCB.html#a2">CBFriendsRcv_DelFriend</a> )(GSubyte ubType, GSint iReason, GSchar *szUsername)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Receive the status of the remove friend request. </em> <a href="#a2"></a><em><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>typedef GSvoid(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="group__group__FriendCB.html#a3">CBFriendsRcv_IgnorePlayer</a> )(GSRESULT rCode, const GSchar *szPlayer)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Result of an ignore player request. </em> <a href="#a3"></a><em><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>typedef GSvoid(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="group__group__FriendCB.html#a4">CBFriendsRcv_UnignorePlayer</a> )(GSRESULT rCode, const GSchar *szPlayer)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Result of an unignore player request. </em> <a href="#a4"></a><em><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>typedef GSvoid(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="group__group__FriendCB.html#a5">CBFriendsRcv_ListIgnoredPlayers</a> )(GSRESULT rCode)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Result of a request to get the ignore-list. </em> <a href="#a5"></a><em><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>typedef GSvoid(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="group__group__FriendCB.html#a6">CBFriendsRcv_IgnoredPlayer</a> )(const GSchar *szPlayer)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Enumeration of the ignored players. </em> <a href="#a6"></a><em><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>typedef GSvoid(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="group__group__FriendCB.html#a7">CBFriendsRcv_Page</a> )(GSchar *szUsername, GSchar *pszMessage, GSchar *szTimeStamp)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Receive a page message. </em> <a href="#a7"></a><em><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>typedef GSvoid(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="group__group__FriendCB.html#a8">CBFriendsRcv_PagePlayer</a> )(GSubyte ubType, GSint iReason, GSchar *szUsername)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Receive the status of send page request. </em> <a href="#a8"></a><em><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>typedef GSvoid(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="group__group__FriendCB.html#a9">CBFriendsRcv_PeerMsg</a> )(GSchar *szUsername, GSvoid *p_Buffer, GSuint uiLength)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Receive a peer message. </em> <a href="#a9"></a><em><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>typedef GSvoid(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="group__group__FriendCB.html#a10">CBFriendsRcv_PeerPlayer</a> )(GSubyte ubType, GSint iReason, GSchar *szUsername)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Receive the status of the send peer message request. </em> <a href="#a10"></a><em><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>typedef GSvoid(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="group__group__FriendCB.html#a11">CBFriendsRcv_ChangeFriend</a> )(GSubyte ubType, GSint iReason)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Receive the status of change friend request. </em> <a href="#a11"></a><em><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>typedef GSvoid(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="group__group__FriendCB.html#a12">CBFriendsRcv_StatusChange</a> )(GSubyte ubType, GSint iReason)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Receive the status of a change status request. </em> <a href="#a12"></a><em><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>typedef GSvoid(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="group__group__FriendCB.html#a13">CBFriendsRcv_UpdateFriend</a> )(GSchar *szUsername, GSint iStatus, GSchar *szGroup, GSint iMood, GSint iOptions, GSchar *szGameName)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Receive information about a friend. </em> <a href="#a13"></a><em><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>typedef GSvoid(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="group__group__FriendCB.html#a14">CBFriendsRcv_SearchPlayer</a> )(GSubyte ubType, GSint iReason, GSchar *szUsername, GSint iStatus, GSchar *szGameName)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Receive the status of search player request. </em> <a href="#a14"></a><em><br><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>typedef GSvoid(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="group__group__FriendCB.html#a15">CBFriendsRcv_ScoreCard</a> )(GSubyte ubType, GSint iReason, GSchar *szUsername, GSchar *szGame, GSchar *szScore)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Receive score card information for a player. </em> <a href="#a15"></a><em><br><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
<hr><h2>Typedef Documentation</h2>
<a class="anchor" name="a1" doxytag="GSFriendsCB.h::CBFriendsRcv_AddFriend" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> typedef GSvoid( * <a class="el" href="GSFriendsCB_8h.html#a1">CBFriendsRcv_AddFriend</a>)(GSubyte ubType, GSint iReason, GSchar* szUsername)
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<dl compact><dt><b>Description:</b></dt><dd>This callback will be called when the client receives response from the router after adding a friend to his friend list</dd></dl>
<dl compact><dt><b>Related Function:</b></dt><dd><a class="el" href="group__group2__1.html#a4">FriendsSend_AddFriend()</a></dd></dl>
<dl compact><dt><b>Errors:</b></dt><dd>ERRORROUTER_DBPROBLEM: There is a problem with the database<br>
ERRORFRIENDS_FRIENDNOTEXIST: The username didn't exist.</dd></dl>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign=top><em>ubType</em>&nbsp;</td><td>The status of the message received back (GSSUCCESS or GSFAIL) </td></tr>
<tr><td valign=top><em>iReason</em>&nbsp;</td><td>The reason of failure if ubType is GSFAIL </td></tr>
<tr><td valign=top><em>szFriend</em>&nbsp;</td><td>The alias of the newly added friend </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="a11" doxytag="GSFriendsCB.h::CBFriendsRcv_ChangeFriend" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> typedef GSvoid( * <a class="el" href="GSFriendsCB_8h.html#a11">CBFriendsRcv_ChangeFriend</a>)(GSubyte ubType, GSint iReason)
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<dl compact><dt><b>Description:</b></dt><dd>This callback will be called when the client receives response from the router after sending a change friend request.</dd></dl>
<dl compact><dt><b>Related Function:</b></dt><dd><a class="el" href="group__group2__1.html#a12">FriendsSend_StatusChange()</a></dd></dl>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign=top><em>ubType</em>&nbsp;</td><td>The status of the message received back (GSSUCCESS or GSFAIL) </td></tr>
<tr><td valign=top><em>iReason</em>&nbsp;</td><td>The reason of failure if ubType is GSFAIL </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="a2" doxytag="GSFriendsCB.h::CBFriendsRcv_DelFriend" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> typedef GSvoid( * <a class="el" href="GSFriendsCB_8h.html#a2">CBFriendsRcv_DelFriend</a>)(GSubyte ubType, GSint iReason, GSchar* szUsername)
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<dl compact><dt><b>Description:</b></dt><dd>This callback will be called when the client receives response from the router after removing a friend from the friend list.</dd></dl>
<dl compact><dt><b>Related Function:</b></dt><dd><a class="el" href="group__group2__1.html#a5">FriendsSend_DelFriend()</a></dd></dl>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign=top><em>ubType</em>&nbsp;</td><td>The status of the message received back (GSSUCCESS or GSFAIL) </td></tr>
<tr><td valign=top><em>iReason</em>&nbsp;</td><td>The reason of failure if ubType is GSFAIL </td></tr>
<tr><td valign=top><em>szUsername</em>&nbsp;</td><td>The alias of the newly deleted friend </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="a6" doxytag="GSFriendsCB.h::CBFriendsRcv_IgnoredPlayer" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> typedef GSvoid( * <a class="el" href="GSFriendsCB_8h.html#a6">CBFriendsRcv_IgnoredPlayer</a>)( const GSchar * szPlayer )
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<dl compact><dt><b>Description:</b></dt><dd>This callback will be called for each player in a ignore-list following a ignore-list retrieval request. The end of list is notified by the CBFriendsRcv_ListIgnoredPlayers callback.</dd></dl>
<br>
Related function : <a class="el" href="group__group2__1.html#a9">FriendsSend_ListIgnoredPlayers()</a><p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign=top><em>szPlayer</em>&nbsp;</td><td>The ubi.com username of a ignored player </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="a3" doxytag="GSFriendsCB.h::CBFriendsRcv_IgnorePlayer" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> typedef GSvoid( * <a class="el" href="GSFriendsCB_8h.html#a3">CBFriendsRcv_IgnorePlayer</a>)( GSRESULT rCode, const GSchar * szPlayer )
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<dl compact><dt><b>Description:</b></dt><dd>This callback will be called with the results of a previous ignore player request.</dd></dl>
<br>
Related function : <a class="el" href="group__group2__1.html#a7">FriendsSend_IgnorePlayer()</a><p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign=top><em>szPlayer</em>&nbsp;</td><td>The ubi.com username of the player that was ignored </td></tr>
<tr><td valign=top><em>rCode</em>&nbsp;</td><td>Result code of the request. Possible values are: <ul>
<li>
GSS_OK<br>
There was no error </li>
<li>
GSE_INVALIDUSER<br>
The username to ignore is not a valid ubi.com user. </li>
<li>
GSE_DBFAILURE<br>
An error occured on the DB while processing the request. </li>
<li>
GSE_FAIL<br>
An unsuspected error occured most likely due to a bug on ubi.com </li>
</ul>
</td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="a5" doxytag="GSFriendsCB.h::CBFriendsRcv_ListIgnoredPlayers" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> typedef GSvoid( * <a class="el" href="GSFriendsCB_8h.html#a5">CBFriendsRcv_ListIgnoredPlayers</a>)( GSRESULT rCode )
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<dl compact><dt><b>Description:</b></dt><dd>This callback will be called with the results of a previous ignore-list retrieval request.</dd></dl>
<br>
Related function : <a class="el" href="group__group2__1.html#a9">FriendsSend_ListIgnoredPlayers()</a><p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign=top><em>rCode</em>&nbsp;</td><td>Result code of the request. Possible values are: <ul>
<li>
GSS_OK<br>
There was no error </li>
<li>
GSE_DBFAILURE<br>
An error occured on the DB while processing the request. </li>
<li>
GSE_FAIL<br>
An unsuspected error occured most likely due to a bug on ubi.com </li>
</ul>
</td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="a0" doxytag="GSFriendsCB.h::CBFriendsRcv_LoginResult" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> typedef GSvoid( * <a class="el" href="GSFriendsCB_8h.html#a0">CBFriendsRcv_LoginResult</a>)(GSubyte ubType, GSint iReason)
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<dl compact><dt><b>Description:</b></dt><dd>This callback will be called when the client receives response from the router after asking to log into the friend service</dd></dl>
<dl compact><dt><b>Related Function:</b></dt><dd><a class="el" href="group__group2__1.html#a3">FriendsSend_Login()</a></dd></dl>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign=top><em>ubType</em>&nbsp;</td><td>The status of the message received back (GSSUCCESS or GSFAIL) </td></tr>
<tr><td valign=top><em>iReason</em>&nbsp;</td><td>The reason of failure if ubType is GSFAIL </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="a7" doxytag="GSFriendsCB.h::CBFriendsRcv_Page" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> typedef GSvoid( * <a class="el" href="GSFriendsCB_8h.html#a7">CBFriendsRcv_Page</a>)(GSchar* szUsername, GSchar* pszMessage, GSchar* szTimeStamp)
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<dl compact><dt><b>Description:</b></dt><dd>This callback will be called when the client receives a page message from another player</dd></dl>
<dl compact><dt><b>Related Function:</b></dt><dd><a class="el" href="group__group2__1.html#a10">FriendsSend_PagePlayer()</a></dd></dl>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign=top><em>szUsername</em>&nbsp;</td><td>the username of the sender </td></tr>
<tr><td valign=top><em>szMessage</em>&nbsp;</td><td>Message </td></tr>
<tr><td valign=top><em>szTimeStamp</em>&nbsp;</td><td>The server timestamp of when the page message was sent </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="a8" doxytag="GSFriendsCB.h::CBFriendsRcv_PagePlayer" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> typedef GSvoid( * <a class="el" href="GSFriendsCB_8h.html#a8">CBFriendsRcv_PagePlayer</a>)(GSubyte ubType, GSint iReason, GSchar* szUsername)
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<dl compact><dt><b>Description:</b></dt><dd>This callback will be called when the client receives response from the router after sending a page to another player</dd></dl>
<dl compact><dt><b>Related Function:</b></dt><dd><a class="el" href="group__group2__1.html#a10">FriendsSend_PagePlayer()</a></dd></dl>
<dl compact><dt><b>Errors:</b></dt><dd>ERRORROUTER_UNKNOWNERROR: The page message was not sent. ERRORFRIENDS_PLAYERSTATUSCOREONLINE: The player can't receive page messages. ERRORFRIENDS_PLAYERIGNORE: The player has ignored the sender</dd></dl>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign=top><em>ubType</em>&nbsp;</td><td>The status of the message received back (GSSUCCESS or GSFAIL) </td></tr>
<tr><td valign=top><em>iReason</em>&nbsp;</td><td>The reason of failure if ubType is GSFAIL </td></tr>
<tr><td valign=top><em>szUsername</em>&nbsp;</td><td>The username of the recipient </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="a9" doxytag="GSFriendsCB.h::CBFriendsRcv_PeerMsg" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> typedef GSvoid( * <a class="el" href="GSFriendsCB_8h.html#a9">CBFriendsRcv_PeerMsg</a>)(GSchar* szUsername, GSvoid* p_Buffer, GSuint uiLength)
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<dl compact><dt><b>Description:</b></dt><dd>This callback will be called when the client receives a peer message from another player</dd></dl>
<dl compact><dt><b>Related Function:</b></dt><dd><a class="el" href="group__group2__1.html#a11">FriendsSend_PeerPlayer()</a></dd></dl>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign=top><em>szUsername</em>&nbsp;</td><td>Username of the sender </td></tr>
<tr><td valign=top><em>p_Buffer</em>&nbsp;</td><td>Data buffer </td></tr>
<tr><td valign=top><em>uiLength</em>&nbsp;</td><td>Length of the buffer </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="a10" doxytag="GSFriendsCB.h::CBFriendsRcv_PeerPlayer" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> typedef GSvoid( * <a class="el" href="GSFriendsCB_8h.html#a10">CBFriendsRcv_PeerPlayer</a>)(GSubyte ubType, GSint iReason, GSchar* szUsername)
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<dl compact><dt><b>Description:</b></dt><dd>This callback will be called when the client receives response from the router after sending a peer player message</dd></dl>
<dl compact><dt><b>Related Function:</b></dt><dd><a class="el" href="group__group2__1.html#a11">FriendsSend_PeerPlayer()</a></dd></dl>
<dl compact><dt><b>Errors:</b></dt><dd>ERRORFRIENDS_PLAYERSTATUSCOREONLINE: The player can't receive peer messages. ERRORROUTER_CLIENTINCOMPATIBLE: The other player doesn't have the same client version as you. ERRORFRIENDS_PLAYERNOTONLINE: The player is not online. ERRORFRIENDS_PLAYERIGNORE: The player has ignored the sender</dd></dl>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign=top><em>ubType</em>&nbsp;</td><td>The status of the message received back (GSSUCCESS or GSFAIL) </td></tr>
<tr><td valign=top><em>iReason</em>&nbsp;</td><td>The reason of failure if ubType is GSFAIL </td></tr>
<tr><td valign=top><em>szUsername</em>&nbsp;</td><td>Username of the receiver of the message </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="a15" doxytag="GSFriendsCB.h::CBFriendsRcv_ScoreCard" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> typedef GSvoid( * <a class="el" href="GSFriendsCB_8h.html#a15">CBFriendsRcv_ScoreCard</a>)(GSubyte ubType, GSint iReason,GSchar* szUsername,GSchar* szGame, GSchar* szScore)
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<dl compact><dt><b>Description:</b></dt><dd>DEPRECATED: This callback has been replaced by the Ladder Query Service </dd></dl>
<dl compact><dt><b>Related Function:</b></dt><dd><a class="el" href="group__group2__1.html#a15">FriendsSend_GetPlayerScores()</a></dd></dl>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign=top><em>ubType</em>&nbsp;</td><td>The status of the message received back (GSSUCCESS or GSFAIL) </td></tr>
<tr><td valign=top><em>iReason</em>&nbsp;</td><td>The reason of failure if ubType is GSFAIL </td></tr>
<tr><td valign=top><em>szUsername</em>&nbsp;</td><td>the username of the player </td></tr>
<tr><td valign=top><em>szGame</em>&nbsp;</td><td>Game name (ugly) </td></tr>
<tr><td valign=top><em>szScore</em>&nbsp;</td><td>Scoree of the player </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="a14" doxytag="GSFriendsCB.h::CBFriendsRcv_SearchPlayer" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> typedef GSvoid( * <a class="el" href="GSFriendsCB_8h.html#a14">CBFriendsRcv_SearchPlayer</a>)(GSubyte ubType, GSint iReason,GSchar* szUsername, GSint iStatus, GSchar *szGameName)
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<dl compact><dt><b>Description:</b></dt><dd>This callback will be called when the client receives response from the router after calling for a search of all the player that match a pattern. For each player found, this will be called.</dd></dl>
<dl compact><dt><b>Related Function:</b></dt><dd><a class="el" href="group__group2__1.html#a14">FriendsSend_SearchPlayer()</a></dd></dl>
<dl compact><dt><b>Errors:</b></dt><dd>ERRORFRIENDS_FRIENDNOTEXIST: No more players found.</dd></dl>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign=top><em>ubType</em>&nbsp;</td><td>The status of the message received back (GSSUCCESS or GSFAIL) </td></tr>
<tr><td valign=top><em>iReason</em>&nbsp;</td><td>The reason of failure if ubType is GSFAIL </td></tr>
<tr><td valign=top><em>szUsername</em>&nbsp;</td><td>Username of the player that was found </td></tr>
<tr><td valign=top><em>iStatus</em>&nbsp;</td><td>Status of the player that was found </td></tr>
<tr><td valign=top><em>szGameName</em>&nbsp;</td><td>The GameName when the status is PLAYERINLOBBY, PLAYERINROOMOPEN,PLAYERINROOMCLOSE can be up to GAMELENGTH*4 in size </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="a12" doxytag="GSFriendsCB.h::CBFriendsRcv_StatusChange" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> typedef GSvoid( * <a class="el" href="GSFriendsCB_8h.html#a12">CBFriendsRcv_StatusChange</a>)(GSubyte ubType, GSint iReason)
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<dl compact><dt><b>Description:</b></dt><dd>This callback will be called when the client receives response from the router after the player as changed his status</dd></dl>
<dl compact><dt><b>Related Function:</b></dt><dd><a class="el" href="group__group2__1.html#a12">FriendsSend_StatusChange()</a></dd></dl>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign=top><em>ubType</em>&nbsp;</td><td>The status of the message received back (GSSUCCESS or GSFAIL) </td></tr>
<tr><td valign=top><em>iReason</em>&nbsp;</td><td>The reason of failure if ubType is GSFAIL </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="a4" doxytag="GSFriendsCB.h::CBFriendsRcv_UnignorePlayer" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> typedef GSvoid( * <a class="el" href="GSFriendsCB_8h.html#a4">CBFriendsRcv_UnignorePlayer</a>)( GSRESULT rCode, const GSchar * szPlayer )
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<dl compact><dt><b>Description:</b></dt><dd>This callback will be called with the results of a previous unignore player request.</dd></dl>
<br>
Related function : <a class="el" href="group__group2__1.html#a8">FriendsSend_UnignorePlayer()</a><p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign=top><em>szPlayer</em>&nbsp;</td><td>The ubi.com username of the player that was removed from the ignore-list </td></tr>
<tr><td valign=top><em>rCode</em>&nbsp;</td><td>Result code of the request. Possible values are: <ul>
<li>
GSS_OK<br>
There was no error </li>
<li>
GSE_DBFAILURE<br>
An error occured on the DB while processing the request. </li>
<li>
GSE_FAIL<br>
An unsuspected error occured most likely due to a bug on ubi.com </li>
</ul>
</td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="a13" doxytag="GSFriendsCB.h::CBFriendsRcv_UpdateFriend" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> typedef GSvoid( * <a class="el" href="GSFriendsCB_8h.html#a13">CBFriendsRcv_UpdateFriend</a>)(GSchar* szUsername, GSint iStatus, GSchar* szGroup, GSint iMood, GSint iOptions, GSchar *szGameName)
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<dl compact><dt><b>Description:</b></dt><dd>This callback will be called when the client receives information about a friend that is in his friend list. This will be called on friend service loging and each time a friend is added to the friend list.</dd></dl>
<dl compact><dt><b>Related Function:</b></dt><dd><a class="el" href="group__group2__1.html#a13">FriendsSend_ChangeFriend()</a> <a class="el" href="group__group2__1.html#a3">FriendsSend_Login()</a></dd></dl>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign=top><em>szUsername</em>&nbsp;</td><td>The username of the friend </td></tr>
<tr><td valign=top><em>iStatus</em>&nbsp;</td><td>Current status of the friend </td></tr>
<tr><td valign=top><em>szGroup</em>&nbsp;</td><td>Group of the friend </td></tr>
<tr><td valign=top><em>iMood</em>&nbsp;</td><td>Current mood of the friend </td></tr>
<tr><td valign=top><em>iOptions</em>&nbsp;</td><td>Friend options </td></tr>
<tr><td valign=top><em>szGameName</em>&nbsp;</td><td>The GameName when the status is PLAYERINLOBBY, PLAYERINROOMOPEN,PLAYERINROOMCLOSE can be up to GAMELENGTH*4 in size. </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<hr>
<p align="right">
<i>Ubi.com GameService SDK - &copy;UbiSoft Entertainment 2002 </i><br>
<i><a href="mailto:gsdevteam@ubisoft.com">GameService development team</a></i>
</p>
</body>
</html>