INTRODUCING ODIN SDK

Real-time messaging for your apps, games and websites

Create cross-platform text chat experiences. Between users, employees, and bots.

Get started for free

Made for developers

In just a few lines of code you can implement a real-time voice chat into games, apps, and websites. Users can also chat cross-platform. See the full list of our SDKs here.

import { OdinClient } from '@4players/odin';
import { TokenGenerator } from "@4players/odin-tokens";

// Prepare the token to connect
const generator = new TokenGenerator(apiKey);
const token = generator.createToken("My Room", "John Doe");
const odinRoom = await OdinClient.initRoom(token);

// Handle events for new peers joining the room
odinRoom.addEventListener('MessageReceived', (event) => {
    console.log(`Received message ${event.payload.messsage}`);
});

// Connect the room
await odinRoom.join();

// Send a message to other clients
const data = {
    sender: "John Doe",
    senderId: "abcdef123456",
    message: "Hello world!"
};
const encoder = new TextEncoder();
await odinRoom.sendMessage(encoder.encode(JSON.stringify(data)));

Use the SendMessage function available in all our SDKs to send messages to all or specific clients connected to the same room.

Our SDK is very flexible and lets you design your own protocol very easily and fits into your existing data structures without converting back and forth all the time.

As messages are just a series of bytes in our ecosystem, text-messages can also contain binary data like images.

import { OdinClient } from '@4players/odin';
import { TokenGenerator } from "@4players/odin-tokens";

// Prepare the token to connect
const generator = new TokenGenerator(apiKey);
const token = generator.createToken("My Room", "John Doe");
const odinRoom = await OdinClient.initRoom(token);

// Handle events for new peers joining the room
odinRoom.addEventListener('UserDataChanged', (event) => {
    // Update the chat
    renderChat(event.payload.room.data)
});

// Connect the room
await odinRoom.join();

// Send a message to other clients
const data = {
    messages: []
};

const onSendButtonPressed = async function(message: Message) {
    data.messages.push(message);
    const encoder = new TextEncoder();
    odinRoom.data = encoder.encode(JSON.stringify(data));
    await odinRoom.update();
}

In all our SDKs, every Room has a UserData property that can be used to store arbitrary data. You can store the history of your chat in this property and our servers will make sure they are synced in real-time to all clients.

Instead of sending messages, add to or modify a message within the Room data array and the message will be synced - to all clients. This way, clients that connect later have access to the whole chat trail.

The SDKs automatically optimize bandwidth usage by only sending and processing changed bytes. Just update the room data as often as you like and use the Update function to update them on the servers. The callback UserDataChanged gets the whole user data. There is no requirement on your side to process that data.

Implement chat bots with ease

Use our NPM package to implement a real-time chatbot responding to your users automatically.

You can create a simple JavaScript NodeJS script based on our @4players/odin npm package to connect to a room and listen to incoming messages. If an incoming message is of interest to your bot, use natural language processing to create an action!

Once the action has been processed, send back a message to a designated user or all users. This way, you can easily create chat bots working in real-time.

Next-Gen solutions for your business

Our technology has been battle-tested in gaming - the toughest environment imaginable for real-time applications and services. Leverage our know-how and expertise today! Learn more how our products and services empower your business.

Flexible and fair pricing

Traffic included

As one of the largest providers of game servers in the world, traffic is not an issue for us – one thing less you need to worry about.

Hosting included

Don’t worry about server costs, maintenance and operations. We’ll handle world-wide server hosting for you.

Upon request self-hosting is possible, too.

Unlimited Rooms

Our software automatically creates and destroys rooms for you. Create as many rooms as you like. There is no limit.

SDKs included

Our Voice SDK is deeply integrated into Unity and Unreal Engine via our free SDKs. For hard core developers a C based client library is available.

If the pricing model does not work for you, please get in touch with us so we can decide a custom proposal to fit your needs.

Trial
Free

Ideal for evaluation and development

  • Up to 25 CCUs
  • Unity and Unreal Engine Plugins
  • Web and mobile SDKs
  • Community Support via Discord
  • No registration required

Pro
from € 0,19 /CCU

Ideal for all games, apps and experiences

  • Unity and Unreal Engine Plugins
  • Web and mobile SDKs
  • Support via Discord/Mail/Phone
  • No branding required
  • Production ready
  • Volume pricing available

* Limited special offer for the first 12 months. After that, your subscription will automatically renew in the Pro tier starting at 0,29 € per CCU per month until you cancel.

Next-generation technology

Most existing voice-chat solutions rely on WebRTC, which has been designed primarily for P2P connections between browsers and is optimized for continuous media streaming… but voice is discontinuous by nature.

ODIN is developed from scratch based on HTTP/3 and QUIC with nearly zero dependencies allowing us to deliver excellent voice quality seamlessly embedded into your game engine.

Hosted by us or host yourself

We love gaming! We are gamers! We know that real-time communication is essential for a fun and immersive gaming experience. This is why our new and innovative voice chat adds another layer of realism to any game or any other virtual interaction, elevating regular voice from chatter to a true communication feature.

With our Voice SDK, we provide a complete out-of-the-box solution that has been designed and built from the ground up for gamers, developers and publishers: flexible, feature-rich and cross-platform.

Reduce development time by leveraging our best-in-class technology to deliver seamless in-app communication.

4Players has more than 20 years of experience hosting game and voice servers for gamers. You can trust in us that we provide the highest quality of service for you and your players.

If you want to be in charge, no worries, we got you covered. Our servers can be easily hosted everywhere. Contact us for more information about self-hosting.