Giter VIP home page Giter VIP logo

customer_portal's Introduction

Customer Portal

Sonar Customer Portal

This is a prebuilt and self-hosted customer portal for Sonar.

Quick start

These instructions will get you set up and running with SSL through LetsEncrypt as well as automatic updates provided by Watchtower.

If you are a current Sonar customer, and you need assistance with any part of this process, please don't hesitate to reach out to [email protected] for help. We are more than happy to help you get your portal setup!

You'll need a machine running Ubuntu 16 or 18 x64. Please note that the customer portal will not work Ubuntu 19, as Docker is currently unsupported. The installation script currently assumes a Debian-based distro. We recommend a minimum of 2 vCPUs and at least 2GB of RAM.

It will need a public facing IP address and a valid domain name pointing to it (e.g. portal.myisp.com).

Getting started

SSH into your VM.

Install required packages: sudo apt-get -y update && sudo apt-get -y upgrade && sudo apt-get -y install git unzip

Clone the repository: git clone https://github.com/SonarSoftwareInc/customer_portal.git

Now change directory into the repository that we've just cloned: cd customer_portal

Run the install script: sudo ./install.sh | tee customerportal-install.log

Follow the instructions as prompted by the installation script. You can view the installation log by running cat customerportal-install.log

Define a Role

SonarV1 Role Instructions

  1. Go to System > Roles
  2. Create a new role called Customer Portal
  3. Assign the following permissions:
    • Accounts: Read, Create, Update, Delete
    • Financial: Read
    • Ticketing: Read, Create, Update, Delete
    • Ticket Super User: Enabled

SonarV2 Role Instructions

The Sonar version 2 instructions have been moved to the Sonar Knowledge Base.

Define a Username

The API username and API password you are prompted for are credentials for your Sonar instance. You should create a dedicated user to utilize for the customer portal - do not use your admin username/password! Create the user as instructed above and assign to this "Customer Portal" role.

Post-Installation Setup

After the setup process is complete, your instance should be up and running. You can navigate to the settings URL (which is /settings on the domain you setup, e.g. https://portal.myisp.com/settings) and use the settings key that should have been generated for you with the installation script.

Common tasks

Starting the customer portal: sudo docker-compose start

Stopping the customer portal: sudo docker-compose stop

Viewing the logs: sudo docker-compose logs

Commands you can use after setup

From the customer_portal directory, you can execute sudo docker-compose exec app /bin/bash to access the docker container that the portal is running in. After doing this, you can execute the commands below.

  • php artisan sonar:settingskey will generate a new key for the /settings page if you forget the one you had.
  • php artisan sonar:test:smtp {email} will test your email configuration. Replace {email} with your email address, and the portal will attempt to send you a test email.
  • php artisan sonar:test:paypal will test your PayPal configuration, if it is enabled.

Upgrading

Upgrades for the customer portal are done automatically and require no interaction on your part! The customer portal will automatically check for updates every 5 minutes and update itself. For further customization such as setting an update window or configuring email and/or Slack notifications, please see https://github.com/v2tec/watchtower

Troubleshooting

If you get the following error during setup:

[/var/www/html/storage]:rw': invalid mount config for type "volume": invalid mount path: '[/var/www/html/storage]' mount path must be absolute

Try removing the created storage volume by executing sudo docker volume rm customer_portal_storage and rerunning the installation script.

Customizing the portal

This portal is built using Laravel. You are welcome to fork and modify this repository for your own needs! Do not attempt to customize the files inside the existing Docker container, as they will be automatically overwritten during upgrade. If you need help customizing this portal beyond what is currently available, we recommend Solutions4Ebiz as an experienced third party developer.

customer_portal's People

Contributors

geneccx avatar sonarsoftware avatar cjw6k avatar alectrocute avatar theglossy1 avatar t1nfoil avatar zulandar avatar tinfoilcat avatar godron629 avatar codybohn avatar helloooonewman avatar petersdavis avatar butane avatar dependabot[bot] 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.