BeamAPI 1.5.7

BeamAPI 1.5.7

TestsTested
LangLanguage SwiftSwift
License MIT
ReleasedLast Release May 2017
SwiftSwift Version 3.0
SPMSupports SPM

Maintained by Jack Cook.



 
Depends on:
Starscream~> 2.0
SwiftyJSON~> 3.1
 

BeamAPI 1.5.7

  • By
  • Jack Cook

BeamAPI

This is a client library for Beam written in Swift.

Features

  • Authenticate with Beam and manage your user session
  • Retrieve full data about channels, users, and other resources
  • Send and receive packets through the chat and Interactive servers
  • Complete Documentation

Usage

To run the example project, clone the repo, and run pod install from the Example directory first.

Requirements

  • iOS 8.2+ / tvOS 9.0+ (macOS and watchOS coming soon)
  • Xcode 7.3+

Usage

Retrieving Channel Data

import BeamAPI

BeamClient.sharedClient.channels.getChannelWithId(252) { (channel, error) in
    guard let channel = channel else {
        return
    }

    print("\(channel.token) has \(channel.viewersCurrent) viewers.")
}

Connecting to Chat

import BeamAPI

class ChatReceiver: NSObject, ChatClientDelegate {

    // Connect to the channel with an id of 252
    func start() {
        let client = ChatClient(delegate: self)
        client.joinChannel(252)
    }

    // Called when a connection is made to the chat server
    func chatDidConnect() {
        print("connected to chat")
    }

    // Called when the chat server sent us a packet
    func chatReceivedPacket(packet: Packet) {
        if let packet = packet as? MessagePacket {
            print("message received: \(packet.messageText)")
        }
    }

    // Called when there is a new viewer count available
    func updateWithViewers(viewers: Int) {
        print("\(viewers) are watching")
    }
}

License

BeamAPI is available under the MIT license. See the LICENSE file for more info.