/ios

Tinodios: Tinode Messaging Client for iOS

Primary LanguageSwiftApache License 2.0Apache-2.0

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

Tinodios is NOT a standalone app. It's a frontend, a client. It requires a backend. See installation instructions.

Important! Due to Microsoft's (GitHub owner) policy of requiring developers of open source projects to pay for for hosting large files on GitHub, this repository cannot include prebuilt binaries for MobileVLCKit and WebRTC-lib. As a consequence, we do not include Pod files into repository. You need to install them manually:

pod install

or on Apple Silicon (M1):

arch -x86_64 pod install

Helping out

  • If you appreciate our work, please help spread the word! Sharing on Reddit, HN, and other communities helps more than you think.
  • Consider buying paid support: https://tinode.co/support.html
  • If you are a software developer, send us your pull requests with bug fixes and new features.
  • Become a beta-tester: try new features first and help us discover and fix problems. Send us a message Add me to TestFlight at testflight @ tinode . co and we will add you to TestFlight.
  • If you use the app and discover bugs or missing features, let us know by filing bug reports and feature requests. Vote for existing feature requests you find most valuable.
  • If you speak a language other than English, translate the apps into your language. You may also review and improve existing translations.
  • If you are a UI/UX expert, help us polish the app UI.
  • Use it: install it for your colleagues or friends at work or at home.

Getting support

Features

Completed

  • One-on-one conversations and group chats.
  • Video or audio calling.
  • 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 typing indicators.
  • No support for switching between multiple backends.
  • No mentions, hashtags.
  • End-to-End encryption is not implemented.

Dependencies

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 the Tinodios/ 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
  • Ukrainian

More translations are welcome. See instructions.

Other

Screenshots

App screenshot - chat list App screenshot - conversation App screenshot - account settings App screenshot - find people App screenshot - forward message App screenshot - video call