Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Opa Application Development

You're reading from   Opa Application Development A rapid and secure web development framework to develop web applications quickly and easily in Opa

Arrow left icon
Product type Paperback
Published in Jun 2013
Publisher Packt
ISBN-13 9781782163749
Length 116 pages
Edition 1st Edition
Languages
Arrow right icon
Author (1):
Arrow left icon
Li Wenbo Li Wenbo
Author Profile Icon Li Wenbo
Li Wenbo
Arrow right icon
View More author details
Toc

Building application logic


A chat application is all about exchanging messages between users, so we need to define a message type. We can find its definition in the first line of model.opa:

type message = {string user, string text}

It's a very simple type with two fields. The user field represents the author of the message, and the text field represents the content of the message.

Now that we have the definition of a message, we need a way to pass the messages between different clients. As mentioned in Chapter 5, Communicating between Client and Server, Opa provides three ways for communicating between clients and servers: session, cell, and network. Session is for one-way asynchronous communication; cell is a special case of session and is for two-way synchronous communication; and network is for broadcasting messages to all observers. Network is the right choice for our purpose:

server private Network.network(message) room = Network.empty();

This code fragment defines an empty network named...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image