Scriptico

Add to Google Reader or Homepage

.NET to JavaScript Data Push using WebSockets

With the latest WebORB release (.NET as well as JAVA), Midnight Coders announced the full support of the WebSockets technology. Briefly speaking, WebSockets allow bi-directional communication between server and client sides through TCP sockets. Specifically, your JavaScript client can exchange data with the server-side in the real-time! A web page can use JavaScript to establish a connection with the server and bi-directionally send data to and receive data from it without any page refreshes. It sounds awesome, doesn’t it? Read the rest of this entry »

.NET to Flex Data Push using Messaging Destinations

Few days ago I received a question about how to push data from the server code (C#) to the client side (ActionScript) though a messaging (publish/subscribe) destination. The server side is powered by WebORB for .NET and the client side is a Flex (or AIR) client. Read the rest of this entry »

How To Secure Your Application (Flex + Remoting/RPC)

In the following article I would like to show how to secure a Flex application which uses RPC (remote procedure calls) to communicate with the server-side. The article consists of three parts:

  1. A simple use-case and the problem description
  2. How to hack a Flex application
  3. How to secure it

The problem is not related to a particular product. However, the solution provided above is oriented only for WebORB for .NET. Well, let’s move forward to the step #1? Read the rest of this entry »

Securing WebORB Console

WebORB Management Console is a flex application to manage the installed instance of WebORB. There is a number of available features in the console, and describing them is out of the article scope. I would like to say that the unsecured and available through the internet WebORB console may be a gap in the system security. So, how you can secure the console? Easily! Read the rest of this entry »

WebORB Data Push. How to push data to a particular client

The following article shows how to push data from the WebORB server to a connected client

Obviously, if you want to push data to a particular client you must identify the client somehow. Therefore, the first issue is a client identification and it might be done in two different ways. Read the rest of this entry »

iPhone chat. Native RTMP Library for iOS in Action

iOS chatIn this article I would like to show how to use RTMP on iPhone, or on iOS in general. Although the RTMP protocol known as a part of Flash Applications, in this article you will not find the ActionScript code because the client library is completely native. At the end of this article you will find all important links and the source code.

Read the rest of this entry »

WebORB and Speex codec

Few days ago Midnight Coders released a new version (4.4.0.0) of WebORB for .NET. Although the latest version contains a number of new features, I would like to demonstrate something that was not included in the WebORB release history – an ability to intercept audio or video stream data from the client on the server side for some additional processing.

To demonstrate the feature I created a sample application based on the simple use-case: client-side gets audio data from the microphone, encodes it with the SPEEX codec, and sends it to the WebORB RTMP server. On the server-side I intercept the received data, decode it, and save into a .wav file.
Read the rest of this entry »

GPSTracker. Windows Service + WebORB for .NET + Flex

The following example shows how to communicate with WebORB from a windows service, and update data on clients using RemoteSharedObject.

I took an idea for this example from the midnight coders forum:

mrodsilva wrote:
Hi There,

I’m looking to use WebORB, but I have a doubt.

We have some devices (hardware with GPRS connection). Those devices send information through socket connection to a Windows Service application which updates a SQL database.

I’m wondering how would it be possible to synchronize those changes to our Flex Application. Is it possible? How so? What changes do we have to make on our Windows Service? Is it better to replace this Windows Service with something else?

Regards,

Marcelo

I thought this would make an interesting example and decided to implemented it, with a few minor tweaks:

Read the rest of this entry »

Handle Pre- and Post Invocation in WebORB for .NET

To demonstrate this simple, but really helpful feature of WebORB for .NET let’s create a sample issue. An application has a simple service. Developers should be able to monitor all invocations from the client, and depending on the invoked method, the developer must create an entry in the log file. In this example, instead of a client’s application, I will use WebORB console. A server-side code is written in the Visual Studio 2010, and you will the find zipped project at the bottom of this article. Read the rest of this entry »

Paging and filtered search. (WDMF + Parameterized Queries).

This article demonstrates an approach recommended by Mark Piller for solving an issue that was posted in Midnight Coders Developers Forum: http://www.themidnightcoders.com/forum/Default.aspx?g=posts&t=4050.

The developer that posted this issue wanted to implement a paging feature and make a filtered search on the client side. This is a sample I developed to solve this issue, that I hope helps others. All source codes you will find at the end of this article.

Environment. The server side includes .NET framework v2.0, WebORB for .NET (v.4.3.0.2), and MSSQL 2008 R2. The client side is a flex application. The sample project is written in Visual Studio 2010, and Flex Builder 4.

Overview. WebORB Data Management for Flex (WDMF) is one of WebORB’s features that provides an extremely powerful framework enabling developers to create data-driven Flex applications. Although this feature is documented well and developers can find a bunch of information in the Midnight Coder Developers Forum, the issue described in the post above had to do with handling large amounts of records, and filtering implementation on the server side. Read the rest of this entry »