El otro día os expliqué como publicar mensajes en el muro de Facebook desde FBJS. Pues bien, hoy os voy a contar como hacerlo desde Flash, y cómo vais a ver inmediatamente tiene mucho que ver con el post que os acabo de mencionar. La explicación que os voy a dar está probada con aplicaciones desarrolladas con FBML.
Para poder publicar mensajes en el muro de Facebook desde Flash hay que seguir una serie de pasos, el primero de ellos es insertar el tag <fb:fbjs-bridge/> en el código antes de insertar cualquier llamada a una película Flash.
Al utilizar este tag Facebook está creando un “puente” para poder comunicar tu película Flash con las variables de la aplicación en el entorno de Facebook. Utilizando este tag tu película Flash recibirá una serie de variables de Facebook como el identificador del usuario o de la aplicación. También te permitirá ejecutar funciones de FBJS invocándolas desde Actionscript.
El segundo paso, obviamente, es insertar en el código de la aplicación el código en FBJS para publicar el mensaje en el muro encapsulado en una función. Os pego aquí un código de ejemplo:
<script>
function publicarMensaje(valor){
var js_userMsg = <?php echo json_encode(“Tus puntos”); ?>;
Facebook.streamPublish(js_userMsg);
}
</script>
Nos queda por último la parte de Actionscript cuyo código varía si hacemos la llamada desde Actionscript 2.0 o desde Actionscript 3.0.
Con Actionscript 3.0
var connection:LocalConnection = new LocalConnection();
var connectionName:String = LoaderInfo(this.root.loaderInfo).parameters.fb_local_connection;
function callFBJS(methodName:String, parameters:Array):void {
if (connectionName) {
connection.send(connectionName, “callFBJS”, methodName, parameters);
}
}
callFBJS(“publicarMensaje”, ["prueba"]);
Con Actionscript 2.0:
var connection:LocalConnection = new LocalConnection();
var connectionName:String = _root.fb_local_connection;
function callFBJS(methodName:String, parameters:Array):Void {
if (connectionName) {
connection.send(connectionName, “callFBJS”, methodName, parameters);
}
}
callFBJS(“publicarMensaje”, ["prueba"]);
Cómo veis no es muy complicado. Espero que os sirva de ayuda