Giter Club home page Giter Club logo

amazon-ivs-chat-for-ios-demo's Introduction

Amazon IVS Chat for iOS Demo

A demo iOS application intended for use as an educational tool to demonstrate how a simple live video and chat application can be built with Amazon IVS video and chat.

Amazon IVS Chat for iOS Demo

This project is intended for education purposes only and not for production usage.

The demo showcases how you can implement a simple live streaming application with video and chat using Amazon IVS. Viewers are asked to enter their name the first time they begin chatting. Chat users can send plain text messages, emojis, and stickers. Chat moderators can delete messages and kick users.

Prerequisites

Setup

To open the demo iOS app, follow these instructions:

  1. Clone this repository to your local machine
  2. Install the SDK dependency using CocoaPods. This can be done by running the following commands from the repository folder:
    • pod install
    • For more information about these commands, see Bundler and CocoaPods.
  3. Open SimpleChat.xcworkspace.
  4. Open Constants.swift and set constants for:
    • Amazon IVS Playback URL playbackUrl
      • A sample playback url for a 24/7 livestream is pre-filled. You may add a playback url to use a custom livestream in this demo.
    • Amazon IVS Chat Demo backend endpoint apiUrl
    • Chat websocket address chatWebsocket
      • The websocket endpoint for the chat room: wss://edge.ivschat.<aws-region>.amazonaws.com.
      • For example, if your chat room is located in us-west-2, the websocket endpoint would be wss://edge.ivschat.us-west-2.amazonaws.com.
    • Chat room id chatRoomId
      • The ID (or ARN) of the Amazon IVS Chat Room that the app should use.
      • You must create an Amazon IVS Chat Room to get a chat room ID/ARN. Refer to Getting Started with Amazon IVS Chat for a detailed guide.
  5. You can now build and run the project in the simulator or real device running iOS 14.0 or later.

Known issues and limitations

  • The application is meant for demonstration purposes and not for production use.
  • This application is only tested in the us-west-2 (Oregon) region. Additional regions may be supported depending on service availability.

About Amazon IVS

Amazon Interactive Video Service (Amazon IVS) is a managed live streaming and stream chat solution that is quick and easy to set up, and ideal for creating interactive video experiences. Learn more.

Security

See CONTRIBUTING for more information.

License

This library is licensed under the MIT-0 License. See the LICENSE file.

amazon-ivs-chat-for-ios-demo's People

Contributors

amazon-auto avatar dependabot[bot] avatar hectormatos2011 avatar slee-aws avatar uldiszz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

amazon-ivs-chat-for-ios-demo's Issues

Crash on old devices (iPhone 7 Plus, iPhone 8)

Facing this issue while using IVSChat sdk, not specific to this demo, unable to find anywhere to raise this.

The app is crashing on sending a message, however I am able to receive message.

The message is delivered to other participant but crashed the app of sender.

OS Version: iOS 15.8 (19H370)
Report Version: 104

Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: SEGV_NOOP
Crashed Thread: 14

Application Specific Information:
ngOperatorsO_SStFT >
KERN_INVALID_ADDRESS at 0x8000000000000010.

Thread 14 Crashed:
0 AmazonIVSChatMessaging 0x1031b2760 Collection.map
1 AmazonIVSChatMessaging 0x1031b1e78 [inlined] Session.stateChanged
2 AmazonIVSChatMessaging 0x1031b1e78 Session.stateChanged
3 AmazonIVSChatMessaging 0x1031b3694 Session.urlSession
4 AmazonIVSChatMessaging 0x1031b4aec SessionDelegate.urlSession
5 CFNetwork 0x301cdb72c CFURLRequestCopyHTTPRequestMethod
6 libdispatch.dylib 0x30074b090 _dispatch_call_block_and_release
7 libdispatch.dylib 0x30074c090 _dispatch_client_callout
8 libdispatch.dylib 0x3006f2738 _dispatch_lane_serial_drain$VARIANT$mp
9 libdispatch.dylib 0x3006f3220 _dispatch_lane_invoke$VARIANT$mp
10 libdispatch.dylib 0x3006fcec4 _dispatch_workloop_worker_thread
11 libsystem_pthread.dylib 0x3b751fdfc _pthread_wqthread

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.