Coder Social home page Coder Social logo

ringcentral-js-cti-demo's Introduction

RingCentral CTI Demo for JavaScript

Overview

This is a demo that showcases various Call Telephony Integration (CTI) use cases for the RingCentral Connect Platform. The demo runs as a set of HTML5 static webpages that can on a server or locally.

The demo showcases the following use cases:

  1. Authorization via 3-Legged OAuth 2.0
  2. Click-to-Call
  3. Inbound Screen Pop
  4. Call Log Retrieval
  5. Call Recording Retrieval and Playback
  6. SMS

View Screenshot

View Live Demo - https://ringcentral.github.io/cti-demo/

Getting Started

The full installation instructions are included as an HTML file in the demo itself. You can view the full installation instructions on the live demo.

Since this runs live on GitHub Pages, you can run this demo without any server-side installation, though it may be worthwhile to install the RingCentral for Desktop softphone as described in the instructions.

You can also run this demo on any webserver by adding the public directory to the server's html directory. This may be useful if you wish to edit the pages. There is no need to run a database as the demo stores all necessary data using HTML5 Local Storage (e.g. window.localStorage). Instructions are provided below for Node.js http-server as one easy approach for this.

Installation

$ git clone https://github.com/ringcentral/ringcentral-cti-demo-js
$ cd ringcentral-cti-demo-js
$ bower install ringcentral ringcentral-helpers --save

The included .bowerrc file will save components to the public/components directory.

Using Node.js http-server

You can run this demo using any server that can host static webpages, including GitHub pages.

Using Node.js and http-server (NPM package) is presented as one easy to use option.

Pre-reqs

Install NPM globally:

$ curl https://npmjs.org/install.sh | sh

Install http-server globally so it cna be run from the command line.

$ npm install http-server -g

Install and run demo.

$ git clone https://github.com/ringcentral/ringcentral-cti-demo-js
$ http-server ringcentral-cti-demo-js/public

Navigate Google Chrome to the location sepcified by http-server, e.g.

http://localhost:8080

Customization

Syntax Highlighting

This demo uses highlight.js for syntax highlighting. The CSS style files are located in the GitHub repo. To choose any style, simply copy the desired style CSS file to the project's css/highlight.css location.

Links

Project Repo

RingCentral SDK for JavaScript

RingCentral API Developer and Reference Guide

RingCentral API Explorer

Contributions

Any reports of problems, comments or suggestions are most welcome.

Please report these on GitHub.

License

RingCentral CTI Demo JS is available under an MIT-style license. See LICENSE.txt for details.

RingCentral CTI Demo JS © 2016 by RingCentral

RingCentral CTI Demo JS © 2015 by John Wang

ringcentral-js-cti-demo's People

Contributors

anilkumarbp avatar grokify avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ringcentral-js-cti-demo's Issues

Upgrade RingOut drop-down lists for from phone numbers and caller id

RingOut should provide drop-down lists for from phone numbers and caller id numbers.

  1. From phone numbers can be retrieved using the extension/forwarding-number endpoint filtering on the CallForwarding feature.
  2. Caller Id numbers can be retrieved using the extension/phone-number endpoint filtering on the CallerId feature.

These are shown here:

Add "password" authorizaton flow

Currently the demo only support OAuth 2.0 for authorizaton which is considered harder to set up (need to configure the redirect URL).
Do you plan to add a demo about "password" authorizaton flow? It might be better for demo purpose.

Clean up and refactor code

This was written quickly to be functional end-user demo.

The code should be cleaned up and refactored as well.

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.