Skip to main content

How LINE Planet works

LINE Planet is a cloud-based real-time communications platform as a service (CPaaS). Applications can connect with LINE Planet Cloud using the SDK. Once connected, the applications can support real-time communication features such as audio or video call, live broadcast, and chat through LINE Planet Cloud.

Workflow

General topology

Let’s take a look at the topology of LINE Planet and applications by call type. The parts marked in yellow in the figures are the service developer's implementation area.

1-to-1 calls

The following figure shows a simplified topology of LINE Planet and applications in 1-to-1 calls. In addition to LINE Planet and applications, you need a push system to notify users of incoming calls. You can use a push system provided by mobile platforms or your own implementation.

The clients of caller and callee (app client) and an application server (app server) belong to the application domain, so you must implement them. If you use your own push system, this is also included in the application domain.

1-to-1 call topology

In 1-to-1 calls, LINE Planet and the application communicate with each other in the following order:

  1. App clients of the caller and callee register their devices on the app server.
  2. The caller's app client requests a 1-to-1 call to LINE Planet Cloud. (Call PlanetKit.makeCall)
  3. LINE Planet Cloud sends a call notification to the app server.
  4. The app server requests a push notification to the push system.
  5. The push system sends a push notification to the callee's app client.

Group calls

The following figure shows a simplified topology of LINE Planet and applications in group calls.

Group call topology

In group calls, LINE Planet and the application communicate with each other as follows:

  • The first participant requests to join a new group call. (Call PlanetKit.joinConference)
    • A group call room is created in LINE Planet Cloud, and the first participant joins the group call.
    • LINE Planet Cloud notifies the app server that the group call has started and the first participant has joined the group call.
  • Other participants request to join the group call. (Call PlanetKit.joinConference)
    • Each participant joins the group call.
    • LINE Planet Cloud notifies the app server that each participant has joined the group call.

LINE Planet interfaces

In real-time communication, LINE Planet and the applications that use LINE Planet must play their roles. LINE Planet provides the cloud that handles real-time communication and tools for feature development, while the applications call LINE Planet's API to configure or use required features.

LINE Planet provides client API and server API. You must implement a client (app client) and a server (app server) to call the corresponding APIs as shown in the following figure.

Interface

An app client and an app server use the APIs as follows:

  • An app client uses the client API provided by the SDK to handle user requests and receive events related to each request.
    • For 1-to-1 calls, the app client uses the client API to make, accept, or end a call.
    • For group calls, the app client uses the client API to join or leave a room.
    • For both call types, the app client can use the client API for additional functions such as screen share and data sessions.
  • An app server uses the server API to handle server-side requests or receive call-related events.
    • For group calls, the app server can use the server API for functions such as sending application control messages or kicking out a user from a room.
    • Server callbacks are used to notify events such as incoming 1-to-1 calls, an end of a 1-to-1 call, or joining or leaving of participants in a group call.

For more information, see PlanetKit, Server API, and Role of the app server.

PlanetKit

LINE Planet's client API is used by application clients to implement call features. To make using the API more convenient, LINE Planet provides SDKs for widely-used platforms. This SDK is called PlanetKit. PlanetKit supports the following platforms:

  • Android
  • iOS/macOS
  • Windows
  • Web
Tip

PlanetKit for the web is also called WebPlanetKit.

Before using PlanetKit, check the PlanetKit system requirements.