I have a iFrame FB app (hosted on say mydomain.com) which shows the friend invite dialogue using the following:
<body>
<fb:serverFbml>
<script type="text/fbml">
<fb:fbml>
<fb:request-form action="http://mydomain.com/InviteSent.aspx" method="GET" invite="true" type="Game"
import_external_friends="true" style="background-color:#000"
content="Hey! Come join me, I'm online now! <fb:req-choice url="<%=gameUrl%>; label="Come and play!" />">
<fb:multi-friend-selector max="30" cols="3" rows="4" showborder="true" condensed="false" actiontext="Invite your friends to come and play!" />
</fb:request-form>
</fb:fbml>
</script>
</fb:serverFbml>
</body>
The callback/action page that is called after friends have been successfully invited is definately being called okay, but my problem lays in retrieving the Facebook IDs of those invited. FB documentation says they should be form-posted into ‘ids’, so my code behind has this (C# ASP.net):
if( Request["ids"] != null )
((Site)Master).FbInviteSent(Request.QueryString.GetValues("ids"));
I have also set authorisation permissions when people add the app, so I don’t believe the issue has anything to do with that.
Cheers in advance for any help.
I found the problem, it was related to retrieving the ids[] values in C#. I had never seen a string array being passed as a HTTP POST/GET parameter. Below is the corrected code:
Roozbeh, u said;
..in fact you didn’t need to guess, I clearly stated that in my first post. Anyway thanks and hope that helps others.