Table of Contents
A list of tutorials on how to build a contact/messaging app with Agora Signaling SDK aka Agora RTM
- Swift & SwiftUI
- Agora RTM SDK 2.x.x (aka Signaling SDK)
- Xcode 13.0+
- Physical iOS device (iPhone or iPad) or simulators
- Create an Agora account and enable the Signaling/RTM product [https://docs.agora.io/en/signaling/get-started/beginners-guide?platform=ios]
- Enable the Storage Configuration (Storage, User attribute callback, Channel attribute callback, and Distributed Lock)
- Clone this repo to your local machine
git clone https://github.com/Bac1314/AgoraRTMTutorials.git
- Import the RTM SDK for each tutorial (By default, it should be included in each tutorial)
### Option 0 - Import the framework from the 0_Libraries### ### Option 1 - Through CDN option ### Download the RTM framework, then drag and drop it to your project https://api-ref.agora.io/en/signaling-sdk/ios/2.x/index.html ### Option 2 - Through Cocoapods pod 'AgoraRtm_iOS' --> Add this to your pod file pod install
- Enter your API in
Configurations.swift
filestatic let agora_AppdID: String = "Agora App ID"
The list of samples and what feature is used
Samples | Description | Status | RTM Features |
---|---|---|---|
Tutorial 1 | How to login to RTM and user Presence to check user online | Done | .message , .presence |
Tutorial 2 | How to use USER METADATA to save friend list | Done | .message , .presence , .usermetadata |
Tutorial 3 | How to send direct message | Done | .message , .presence , .usermetadata |
Tutorial 4 | How to send emojis | Ongoing | .message , .presence , .usermetadata |
Tutorial 5 | How to send audio message | Pending | .message , .presence , .usermetadata |
Tutorial 6 | How to use RTM for video calls | Pending | .message , .presence , .usermetadata |
Tutorial 7 | How to build group messaging | Pending | .message , .presence , .usermetadata |
Tutorial 8 | How to use CHANNEL METADATA to post notice | Pending | .message , .presence , .usermetadata |
- API Reference (https://docs.agora.io/en/signaling/reference/api?platform=ios)
- Pricing (https://docs.agora.io/en/signaling/overview/pricing?platform=ios)
- API Limitations (https://docs.agora.io/en/signaling/reference/limitations?platform=android)
- Security/Compliance (https://docs.agora.io/en/signaling/reference/security?platform=android)
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE.txt
for more information.
Bac Huang - bac@boldbright.studio
Project Link: https://github.com/Bac1314/APIExample_AgoraRTM2x