# Service introduction
HyperRTC internet calling service can provide in app internet calling in different applications. You can simply add internet calling option to your service by adding hyperrtc calling SDK to your iOS or android application.
Caller and receptor can be an android or iOS application or even a web-app.
Before anything, some phrases need to be defined:
- Caller : a person who calls and starts calling.
- Receptor : a person who receives calls.
- Messaging Server : messaging server informs events and changes the logs.
- Media Server : transmits audio from caller to receptor and vice versa.
- Call Id : this is the profile of the call between caller and receptor. That we need it for performance of some API methods.
- Access Token : user identifying and authorization can be done with this token.
# A glance at steps of a call
# 1. Call making with REST web service
The first step is making a call, in this case your backend should send a HTTP request to HyperRTC REST API. Therefore you will receive Call ID and Access Token for requested call.
# 2. Message interchanging-send and receive call status
In this step, the status of a call request would be define by these values: Missed, accepted, rejected.
# 3. Conversation (send and receive audio)
In this part, the connection link between caller and receptor would be happen through media server and calling it by SDK then caller and receptor can start their conversation.
After accepting call request by Receptor, Server would make a session in media server and immediately will put the call in