ios
ios copied to clipboard
Tinodios: Tinode Messaging Client for iOS
Tinodios: Tinode Messaging Client for iOS
iOS client for Tinode in Swift.
Status: beta. Usable and mostly stable but bugs may happen.
Installing and running
Important! This repository contains large files which require a git extension git-lfs.
This is NOT a standalone app, this is just a frontend, a client. It requires a backend. See installation instructions.
Getting support
- Read server-side API documentation.
- For support, general questions, discussions post to https://groups.google.com/d/forum/tinode.
- For bugs and feature requests open an issue.
- Use https://tinode.co/contact for commercial inquiries.
Features
Completed
- One-on-one conversations and group chats.
- Channels with unlimited number of read-only subscribers.
- Unread message counters.
- Push notifications and in-app presence notifications.
- Message status notifications: message delivery to server; received and read notifications.
- Markdown-style formatting of text, e.g. *style* → style.
- Replying and forwarding messages.
- Trusted account badges: verified account, staff, etc.
- Form messages suitable for chatbots.
- Attachments and inline images, voice/audio messages.
- Muting/un-muting conversations and other granular permission management.
- Integration with iOS's stock Contacts.
- Invite contacts to the app by SMS or email.
- Transport Level Security - https/wss.
- Offline mode.
Not Done Yet
- Previews not generated for videos, links or docs.
- No video messages. No video or audio calling.
- Typing indicators.
- No support for switching between multiple backends.
- Mentions, hashtags.
- End-to-End encryption.
Dependencies
- Google Firebase for push notifications, analytics, and crash reporting. See below.
- Kingfisher for out-of-band image handling.
- MobileVLCKit for voice messages.
- PhoneNumberKit for normalizing phone numbers.
- SQLite.swift for convenience of SQLite use.
- SwiftKeychainWrapper for convenience of Keychain access.
Push notifications
If you want to use the app with your own server and want push notification to work you have to set them up:
- Register at https://firebase.google.com/, set up the project if you have not done so already.
-
Download your own config file
GoogleService-Info.plist
and place it in theTinodios/
folder of your copy of the project. The config file contains keys specific to your Firebase/FCM registration. - Copy Google-provided server key to
tinode.conf
, see details here.
Translations
The app is currently available in the following languages:
- English (default)
- Chinese (simplified)
- Chinese (traditional)
- Russian
- Spanish
More translations are welcome. See instructions.
Other
- Demo avatars and some other graphics are from https://www.pexels.com/ under CC0 license.
- Some icons are from SF Symbols under Apple license.
Screenshots