Coder Social home page Coder Social logo

117_cip3's Introduction

CIP3

Cisco IP Phone Portal - track and manage your Cisco UC endpoints

CIP3 is an open project to help Cisco Collaboration engineers track and manage devices within their Cisco UCM clusters.

It uses the PHP Laravel framework and contains a Docker workflow to help you get up and running fast.

The current version offers the following:

  • Cisco UCM Server(s) CRUD interface
  • Sync Cisco UCM Phones/Devices and RisPort data daily and on-demand
  • UCM Sync History
  • Sync success/fail notifications via Webex Teams BYOB (Bring Your Own Bot)
  • Display device information and real-time data (IP Address, Firmware, etc)
  • Delete ITL files from IP Phones
  • Push custom background images to IP Phones
  • Manage User accounts

Here's some of the packages included:

Laravel 5.8 - the core application framework

Laravel Backpack - for rapid UI prototyping

laravel-chartjs - build sweet looking charts in your Laravel controllers

Vessel - a Docker dev environment for Laravel

Webex Teams Integration - send Ucm sync event notifications to Webex Teams

Vessel is a wrapper around Docker and docker-compose that makes it really easy to get setup with a full stack docker environment with just a couple commands. The Vessel package and a lot of awesome training has been produced by Chris Fidao. The training is so good, I really can't say enough. He moves quickly through the topics so that you don't feel like you're wasting time, but not so fast that you can't keep up.

Here's some links that I highly recommend you check out if you're interested in learning more about docker, DevOps, Laravel and server management

I created this project as an opportunity to get more familiar with the Docker workflow. If you're interested in working on this project and helping to build in some other features, please check out the Contributing section below. I'd love to work with you to help build some free tools! Also, please send any suggestions if there's a feature you'd like to see.

Installation

Note - after installation your app will be reachable on your host IP or localhost at the port specified in the .env file (port 8000 by default)

http://<your_ip>:8000

Docker/Vessel

OS X & Linux:

git clone [email protected]:sloan58/cip3.git
cd cip3
cp .env.example .env
./vessel start
./vessel composer install
./vessel art key:generate
./vessel art migrate --seed

If you're using the app to push custom background images, you'll need to set the APP_URL in .env

APP_URL=http://<your.local.ip.address>:8000

And also link the public/storage directory

./vessel artisan storage:link

Windows:

TODO

Without Docker/Vessel

If you're not using the Docker/Vessel integration, you'll need to have a development environment with PHP, composer and a database (and Redis, if you'd like) already installed.

OS X & Linux:

git clone [email protected]:sloan58/cip3.git
cd cip3
cp .env.example .env
composer install
php artisan key:generate
php artisan migrate --seed

Be sure to configure your .env file to match your local resource configurations!

APP_URL=http://<your.local.ip.address>:8000

And also link the public/storage directory

./vessel artisan storage:link

Windows:

TODO

Cisco UCM Setup

Create an account with the following Roles so that it can use the AXL and RisPort API's:

  • AXL
  • Standard CCM Server Monitoring

Usage example

The .env file will have mostly everything set for the Docker/Vessel integration. At the bottom of the file, you can modify the APP_PORT and MYSQL_PORT if you need to run them on another port so they don't conflict with a running app. Please see the Multiple Environments section in the vessel docs for more.

Once the app is running (and if you've seeded the database) you can login with:

Username: [email protected]

Password: password123

Screenshots

Check out the screenshots folder for some visuals

Wish List

  • UCM CURRI call blocking
  • UCM CDR's
  • UCM Audit Logs
  • UCM PerfMon integration
  • Call Recording

Contributing

  1. Fork it (https://github.com/sloan58/cip3)
  2. Create your feature branch (git checkout -b feature/fooBar)
  3. Commit your changes (git commit -am 'Add some fooBar')
  4. Push to the branch (git push origin feature/fooBar)
  5. Create a new Pull Request

117_cip3's People

Contributors

sloan58 avatar

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.