SEO

August 24, 2010

FBCDN image is not allowed in stream, How can this be?

 

FBCDN image is not allowed in stream, How can this be?

by Stephen Dewitsky posted on June 22 2010 13:15  

The phrase "FBCDN image is not allowed in stream" does not have much meaning to most of the natural world, but to a developer integrating with Facebook features this phrase is a nightmare.  Over the past year we have been developing iPhone apps that will process images in unique ways.  We thought it would be interesting to allow users to share these images with their friends on Facebook, if they have any friends.  The normal procedure is a two part process.  First, a user would upload the image to their very own photo gallery hosted on their Facebook profile.  When that is successful the user could then choose to publish a message to their stream which would include a link to this recently uploaded image.  It was fast and it was fun.

About two weeks ago I noticed that some previously published feeds, and any new feeds, were missing the shared photo.  Immediately I thought there must be a problem with the code.  Let me take a look.  HMMMMMMM.  Everything looks good, but why is the image missing?  Wow, I don't have much time to continue debugging this.  Let me check Facebook Developer Documentation.  Nothing here about missing images.

On the 17th of June 2010 the shock was felt. I was testing a new iPhone app we are working on for in20years.com.  The Facebook integration was complete and I attempted to publish a message to my Facebook profile using a Facebook Photo Gallery image.  The process came to a halt and the dialog read, "FBCDN image is not allowed in stream ..... You can see this because you are one of the developers of the app."  Ouch.  I could indeed see this message and yet I have no idea what it means.  Endless Google searches return nothing.

With shifting priorities in schedule we decided to let this go for the weekend.  Monday morning was a bit more informative.  Facebook Developer Forums erupted in outrage that all existing apps ceased to work due to this error. The official word came through an RSS feed reading:

Serving Images in Stream Stories
Jun 18, 2010 3:21pm

We no longer allow stream stories to contain images that are hosted on the fbcdn.net domain. The images associated with these URLs aren't always optimized for stream stories and occasionally resulted in errors, leading to a poor user experience. Make sure your stream attachments don't reference images with this domain. You should host the images locally.

So what does this mean?  Well it depends on your point of view.  It means Facebook does not have enough consideration for current applications using images in the fbcdn.net domain to grace the developers with a warning of this new policy.  I was experiencing problems for weeks before this statement was released.  It means that developers cannot rely on any implementation of a Facebook API component to behave the way they expect on a day to day basis.  It means that developers must find a way to host their own images if they plan on placing them in a Facebook Stream.  It means we must react with Ninja-like reflexes.

 

When Facebook began, it was viewed as a place for college students to keep in touch with their friends and share the highlights of their lives. It was not a company that was created to go viral but the concept was such a great idea it went viral and created a company. The concept of a social network was literally being defined at the same time it was growing. Although MySpace was the first social network on the scene, it lacked the ability to retain users, keep professionals interested, and create viable revenue streams to bring the company into the black. MySpace also received a lot of negative press that hurt the brand, although they have been able to keep some users based on their music and band profiles. How did Facebook rise so quickly and change the game?

Facebook executives strategized about ways to sustain their brand, market to all ages, and create lasting revenue streams. The Facebook founders realized the tremendous growth in users could warrant great revenue if they could figure out a way to capitalize on it. Facebook’s first strategy was to offer advertising opportunities to reach their nearly 500 million users. Facebook’s second strategy redefined the industry and created several companies in the process. What was their second strategy? They realized that the amount of time an individual was on the social network created more opportunities to market to them. Facebook launched games on the platform.

Games were not a new concept on the internet, but Facebook tied games into the interaction of their users. This marked the birth of the social network game. Many companies started to capitalize on this concept. In the process, these companies created another level of monetization by offering certain gifts and prizes in the games for a small fee (virtual goods) and offering special features in the game for a price (virtual currency). The ability for an individual to send a virtual gift and tell everyone about it became enticing.

There are several companies that have created game products to provide entertainment to the Facebook community while capitalizing on Facebook’s strategy. Zynga is known for Mafia Wars and Farmville and you have Playdom, Mindjolt , RockYou! and Pogo, etc. which provide games on the platform, but the “new kid” on the block is the one that has sparked my interest. Strategic Design Network, based in Austin, has created a game portal on Facebook that will likely provide the best example of how to use the platform to the fullest. They have produced an application called Game Toyz Arcade on Facebook that has really taken the concept of games on Facebook to the next level by integrating tournaments for cash and prizes. They have also managed to integrate their own proprietary tournament management API called Pay Out Hub.

Game Toyz is a flash game portal that offers two types of tournaments. They have coin tournaments that players can join right from within the application and cash tournaments. What is unique is the entry fee for the coin tournaments comes right from the player’s winnings in the game. They can also challenge their friends and wager a certain number of coins to increase their total coin count. All of the tournaments are based on skill and provide the best way for individuals to interact with their friends on Facebook while also enjoying game play. In addition, players can post high scores, challenges and winnings to their Facebook feed. Coins can be redeemed for actual prizes like gift cards to iTunes and Amazon. Game Toyz Arcade also offers their daily lottery game and the daily treasure map. You get a certain number of tries to win additional coins or prizes immediately. If you have run out of coins, you can purchase more simply using your paypal account.

The Pay Out Hub integration is what will solidify Game Toyz Arcade as one of the “new kids” that will have staying power. Pay Out Hub provides an API that integrates with casual and social games to host tournaments. Individuals can register on the site and join cash tournaments from the PayOutHub.com website that will take them directly to the Game Toyz Arcade interface. This is a seamless process and it provides a secure way for individuals to participate and receive their cash rewards if they win the tournament.

Several companies are creating and have created great business models based on Facebook’s strategy and I believe that Strategic Design Network is one of the companies to watch. Zynga, Mindjolt, etc. have already created have already created a presence on the platform, but in some ways have taken for granted their popularity by releasing average new products. Game Toyz Arcade has unlimited potential just like Mafia Wars and Farmville did when no one really knew who they were. The difference is this company has paid attention to detail and released something that is unique instead of more of the same. This is an application and a company to watch! As the trend to provide games on Facebook continues, everyone will be playing games!