Jump to content

Adam

Recommended Posts

Hi All,

I am proud to announce that first release of Blesta-Cerb plugin.

What is it?

This plugin enables Cerb integration with the Blesta clients to create, update, reply, attach files and close tickets in the native Blesta client interface. This plugin replaces the built-in Support Manager with Cerb.

Why do I want it?

  • What is it good for?: If you receive high volume of emails or helpdesk tickets then replacing Blesta’s helpdesk for Cerb’s would increase productivity and reduce time spent answering emails.

  • What is it not good for?: If the Blesta built-in helpdesk and support system meets your needs then switching to Cerb might add additional complexity. However Cerb’s features are unmatched in the industry.

  • What is it not yet good for?: Cerb offers knowledge base articles that can be viewed by staff and published on its own support center portals. This functionality is not yet integrated into the blesta-cerb plugin.

  • Common use cases for Blesta-Cerb Plugin: If you find that you need to do any of the following then Blesta-Cerb would be a good fit.

    • Email and Helpdesk services are out source
    • Notify workers and staff of new emails and events
    • You offer out source services and need a central place for all support requests
    • Need the ability to automate email and support workflows such as password reset, IP unblocks, etc.
    • Collect Net Promoter Score (NPS), Customer Satisfaction (CSAT) or Customer Effort Score (CES) scores
    • … and so much more with their bots 

Cost:

This plugin is 100% open source under the MIT license and is offered at no cost to you. Paid support is available for those who need it. Otherwise support is offered as best effort on the BitBucket issue page.

Screenshot Tour:

Visit: https://docs.solidnet.software/blesta-cerb/tour/

How do I use this plugin?

Visit our online documentation: https://docs.solidnet.software/blesta-cerb/getting-started/

 

Link to comment
Share on other sites

  • 5 weeks later...

@Adam

Spent the last two hours foraging the around internet trying to figure out how to install this plugin.

1) - One link show how to download a .TAR file

Then a different link on a different page shows a link to download the zip.

========

2) - After we UN-zip it we get " solidnetwork-blesta-cerb-f520f65efb16 "

========

3) - We uploaded it to the "plugins " folder within Blesta

And then try to install it.

amongst the plugins list we cannot find it anywhere.

We have tried RE-name the plugin folder in five ( 5 ) different ways.

Still cannot find it amongst the list of plugins.

=========

Took a look at the documentation at . . .

https://docs.solidnet.software/blesta-cerb/

========

QUESTION :

What is the correct name for the plugin folder so that we can see it in the plugins list, so that we can install it ?

Link to comment
Share on other sites

Hi Turner!

The recommend way to download this plugin is via git. Git allows you to:

  • Quickly upgrade by fetching only changed files for the last update
  • Track local changes that you have made
  • Easily revert files back to their default condition
  • See what changes would occur before performing an upgrade
  • Continuously merge your local changes with our future updates.

If for what ever reason you do not want to use git, then you can download a tagged release as indicated from the documentation: https://docs.solidnet.software/blesta-cerb/getting-started/install/#download-direct

As mentioned, you will need to name the folder cerberus

 

I did take your feedback and update documentation website to make sure to emphases to name the folder cerberus within the plugins folder. 

 

Hope this helps.
-Adam

Link to comment
Share on other sites

  • 4 months later...

Hey Adam

Thanks very much for this plugin, it's great. One thing I can't figure out is the event to use as the trigger in a bot to email staff about a new ticket created and email the client an acknowledgement.

Cerb doesn't seem to treat a ticket created through the plugin the same event as a new ticket. I've also tried new record or modify record events as the trigger to no avail.

Any ideas?

Thanks again for the plugin, much appreciated.

Link to comment
Share on other sites

1 hour ago, cats said:

Hey Adam

Thanks very much for this plugin, it's great. One thing I can't figure out is the event to use as the trigger in a bot to email staff about a new ticket created and email the client an acknowledgement.

Cerb doesn't seem to treat a ticket created through the plugin the same event as a new ticket. I've also tried new record or modify record events as the trigger to no avail.

Any ideas?

Thanks again for the plugin, much appreciated.

Hi Cats,

I was able to re-create the issue you described in my staging environment running Cerb 9.6.8. None of the standard bot behaviors that Cerb offers is able to alert workers of the participates in a ticket that one was opened.

I suspect this is an issue with Cerb as I noticed the activity log does not record the ticket being assigned or moved to any group or bucket. I have sent an email to the Cerb team to see if this is an issue with Cerb or how I am using their ReST API.

I will let you know the outcome.

 

Thanks!

-Adam

Link to comment
Share on other sites

On 1/11/2021 at 11:44 PM, Adam said:

Hi Cats,

I was able to re-create the issue you described in my staging environment running Cerb 9.6.8. None of the standard bot behaviors that Cerb offers is able to alert workers of the participates in a ticket that one was opened.

I suspect this is an issue with Cerb as I noticed the activity log does not record the ticket being assigned or moved to any group or bucket. I have sent an email to the Cerb team to see if this is an issue with Cerb or how I am using their ReST API.

I will let you know the outcome.

 

Thanks!

-Adam

Cats,

Plugin has been updated to address this issue. v.1.20 has been tested and releasted with the latest version of Cerb and Blesta 4 series. Blesta 5 support is being test now.

https://github.com/SolidNetSoftware/plugin-cerberus/issues/1

https://github.com/SolidNetSoftware/plugin-cerberus/releases/tag/v1.2.0

Follow the upgrade process here: https://docs.solidnet.software/blesta-cerb/getting-started/upgrade/

Thanks,

-Adam

Link to comment
Share on other sites

On 1/15/2021 at 2:14 PM, Adam said:

Cats,

Plugin has been updated to address this issue. v.1.20 has been tested and releasted with the latest version of Cerb and Blesta 4 series. Blesta 5 support is being test now.

https://github.com/SolidNetSoftware/plugin-cerberus/issues/1

https://github.com/SolidNetSoftware/plugin-cerberus/releases/tag/v1.2.0

Follow the upgrade process here: https://docs.solidnet.software/blesta-cerb/getting-started/upgrade/

Thanks,

-Adam

Thanks Adam. Really appreciate your quick response and fix, especially as it's a plugin you've provided for free.

Link to comment
Share on other sites

  • 2 months later...
  • 3 months later...

Just upgraded to Blesta 5 and latest version of the plugin. 

In doing some tests, the submit new ticket form doesn't require a client to select a service from the drop down menu. If they don't, submitting a ticket returns an error which is: "Undefined index: service_id."

Once a service is selected, it cannot be unselected.

Not sure if it's just my installation that doesn't require a service to be selected, will keep testing variations.

Edit: quick update; seems to only be a problem for clients with multiple services. For clients with one service, it selects that service by default.

Link to comment
Share on other sites

12 hours ago, cats said:

Just upgraded to Blesta 5 and latest version of the plugin. 

In doing some tests, the submit new ticket form doesn't require a client to select a service from the drop down menu. If they don't, submitting a ticket returns an error which is: "Undefined index: service_id."

Once a service is selected, it cannot be unselected.

Not sure if it's just my installation that doesn't require a service to be selected, will keep testing variations.

Edit: quick update; seems to only be a problem for clients with multiple services. For clients with one service, it selects that service by default.

Hi Cats!

Running version 5.1.2 of Blesta and Cerb 10.0.5 I was able to reproduce part of your problems. I went ahead and opened an issue on GitHub: https://github.com/SolidNetSoftware/plugin-cerberus/issues/5 and fixed what I could reproduce:

  • Enforce services to be selected by users

This should remove the "undefined index" error you were getting. 

I was not able to reproduce any of the other errors you mentioned. I created a client that has 2 services and one that 0 services. The client with 2 services is able to select the services from the drop down without issue and switch between them. The client with 0 services will see an empty dropdown and the Create Ticket button is disabled.

If you have a custom theme, I am guessing that is what is causing issues. Hopefully the new version I released will offer more compatibility with custom themes.

Please let me know either way.

https://github.com/SolidNetSoftware/plugin-cerberus/releases/tag/v1.3.1

Follow the upgrade process here: https://docs.solidnet.software/blesta-cerb/getting-started/upgrade/

 

-Adam

Link to comment
Share on other sites

On 8/15/2021 at 6:46 AM, Adam said:

fixed what I could reproduce:

  • Enforce services to be selected by users

This should remove the "undefined index" error you were getting. 

 

Thanks Adam. Whilst I do have a heavily customised theme, I think we are talking about the same thing, just my shorthand getting in the way. I was mentioning that when a user that had multiple services selected one from the dropdown box, they couldn't go back to having none selected - obviously a design feature - but they were able to switch between services.

Thanks for fixing it so quickly.

Link to comment
Share on other sites

  • 10 months later...

I had an issue with an invalid timestamp error being returned from Cerb API when viewing the helpdesk link from Blesta client view. The time was set correctly, and I couldn't see a difference in time in the verbose output from CURL. After some digging around, I saw that Cerb looks for X-Date custom header before falling back to $_SERVER['HTTP_DATE']:

Quote

$header_date = $_SERVER['HTTP_X_DATE'] ?? null;

// If the custom X-Date: header isn't provided, fall back to Date:
        if(empty($header_date))
            $header_date = $_SERVER['HTTP_DATE'] ?? null;

I changed the cerb_api.php for the plugin to add in the custom X-Date:

Quote

$header = array ('X-Date: '.$http_date, 'Cerb-Auth: '.sprintf("%s:%s",$this->_access_key,$hash));

This fixed the error.

Not sure if it is just my setup but I thought I would share in case it is a widespread error or affecting anyone else.

Link to comment
Share on other sites

11 hours ago, cats said:

I had an issue with an invalid timestamp error being returned from Cerb API when viewing the helpdesk link from Blesta client view. The time was set correctly, and I couldn't see a difference in time in the verbose output from CURL. After some digging around, I saw that Cerb looks for X-Date custom header before falling back to $_SERVER['HTTP_DATE']:

I changed the cerb_api.php for the plugin to add in the custom X-Date:

This fixed the error.

Not sure if it is just my setup but I thought I would share in case it is a widespread error or affecting anyone else.

Cats:

What version of Blesta and Cerb are you running? I can try and replicate the issue on my end.

From what you described it appears to be something very specific to your environment. The cerb_api.php file is provided by Cerb as a way for systems to authenticate with Cerb until Oauth Machine-to-Machine is implemented in Cerb. This is code that is provided by Cerb - https://cerb.ai/docs/api/libraries/php/

 

Part of the secure communication that occurs is that when you issue a request to cerb api, you sign the request with a timestamp as part of the Cerb-Auth header. That timestamp is matched against the request that is made to the cerb ReST endpoint.

If HTTP_DATE is not being set, then that means the request is coming from non-standard source. Maybe command line PHP program or something like javascript XMLHttpRequests request, etc. Does this occur in your environment?

 

-Adam

Link to comment
Share on other sites

Hi Adam

I'm running Blesta 5.4 and Cerb 10.2.5. 

http_date was being set successfully by cerb_api.php. I tested that first by setting it to display the output of http_date. I then set curl option for verbose, which showed the cerb-auth header was being sent successfully. The date and time sent by the server matched what http_date was set as. 

That's when I checked the Cerb side of the REST API to see what it was validating: https://github.com/jstanden/cerb/blob/10.2.5/features/cerberusweb.restapi/api/App.php

If no X-Date is set in the header, it uses $_SERVER['HTTP_DATE'] to validate the timestamp.

I did some more testing today and it seems like for whatever reason, it is ignoring all header[] lines except the last one, being cerb-auth, and not adding them to the header array (or it is creating a new array each time). This means that the PUT POST etc don't work, as it doesn't add the relevant line to the header. I changed them all to be array_push($header, ...) and it adds them to the header, even though PHP recommends $array[] if adding a single element. Not sure why that is happening, but array_push fixed that.

The http_date issue remains even with array_push. If I add date: $http_date to the header, I get an invalid timestamp error. But X-Date: $http_date works fine. Strange.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...