-
Posts
1758 -
Joined
-
Last visited
Reputation Activity
-
Paul got a reaction from Jacob Ipsen in Pulseway app isn't sending notifications
We've released another update (v6.0.1) that addresses the PUSH notification deliverability problems. Please update and check again the PUSH notifications.
You need to launch the app at least once to get the device to register again.
-Paul
-
Paul reacted to itshero in Pulseway app isn't sending notifications
@Paul That didn't do anything.
Edit:
It works after getting pushed the update... Thanks!
-
Paul got a reaction from itshero in Pulseway app isn't sending notifications
We've released another update (v6.0.1) that addresses the PUSH notification deliverability problems. Please update and check again the PUSH notifications.
You need to launch the app at least once to get the device to register again.
-Paul
-
Paul got a reaction from Jacob Ipsen in Pulseway app isn't sending notifications
Hey everyone,
We've released an update to the Android app into the beta channel (you can enrol here) that fixes this issue. Thank you for your support.
-Paul
-
-
-
Paul got a reaction from AlanRTonn in File Transfer
Hey guys,
We're almost ready for a closed beta and guess what, both of you are on the list to get early access .
-Paul
-
Paul got a reaction from itshero in App version 5.4, Pixel XL, stock ROM
We have a Pixel 2 XL ourselves and we've reproduced the issue too.
-Paul
-
Paul got a reaction from Cristian Scarafiotti in Antivirus in language of the operating system.
Hi Christian,
I'll do some digging to see what can be done here. I'll let you know when I get to something.
-Paul
-
Paul got a reaction from AC_Martin_J in Is there a way to remove the system tray icon that began showing up after upgrading to 5.4.6?
Hi Martin,
I like the idea! We'll definitely be considering this .
-Paul
-
Paul reacted to AC_Martin_J in Is there a way to remove the system tray icon that began showing up after upgrading to 5.4.6?
Hi Paul!
I thought I'd ask in this thread, rather than creating a new one.. Is it possible to set which email a support request should be sent to?
I'm asking because I would like to receive all support requests on a dedicated email address for that specific purpose (while the notifications are sent to another dedicated address). But it seems like the support request will be sent to the email address of the account which is connected to the Pulseway Manager on that specific client.
A working solution could be if those emails are sent to an address based on what is specified in the "Company email"-section at the "Support Info Details"-tab.
-
Paul got a reaction from NathanB in Is there a way to remove the system tray icon that began showing up after upgrading to 5.4.6?
Hey everyone,
We've released an agent update that will remove the icon unless the User Support Request feature is turned on.
-Paul
-
Paul reacted to MaxITGarrett in [PHP] WHMCS Hook to Automatically Add to PSA
For those of you who would like to use WHMCS (Automated web hosting platform) but wish to use Pulseway PSA for your main ticketing software and for managing your consulting business if you are an MSP like us, I had to make a hook for WHMCS which takes the client details and automatically makes a client account for them within PSA and grants them access to the ticketing system, using the same password for WHMCS. This vastly simplifies things for the client, and conforms the tickets into one system.
Once this file is created, it needs to be placed into the following directory with any name:
\includes\hooks\AddClientToPSA.php YOU WILL NEED TO QUERY SOME VALUES YOURSELF THROUGH THE API TO MAKE THE HOOK VALID (mentioned as comments) (if you need help with this, I can provide code)
<?php add_hook('ClientAdd', 1, function($vars) { // Setup the curl request for PSA $curl = curl_init(); // Set the endpoint curl_setopt($curl, CURLOPT_URL, "https://psa.pulseway.com/api/token"); // POST Request curl_setopt($curl, CURLOPT_POST, true); // Credentials for Authorization curl_setopt($curl, CURLOPT_POSTFIELDS, "grant_type=password&username=username&password=userpassword&tenant=companyname"); // Proper header information curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded')); // Return the transfer as a string curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); // Get the response $response = json_decode(curl_exec($curl)); // Close the curl curl_close($curl); // Extract the token $token = $response->access_token; // Now to create a new company $curl = curl_init(); // Set the endpoint curl_setopt($curl, CURLOPT_URL, "https://psa.pulseway.com/api/crm/accounts"); // POST Request curl_setopt($curl, CURLOPT_POST, true); // Gather current datetime $date = new DateTime(); // Gather a company name, if specified $companyName = $vars['companyname']; // If they don't have a company name, make it their first name and last name if (empty($companyName)) { $companyName = $vars['firstname'] . $vars['lastname']; } // Build the JSON to go with the request $account = json_encode(array( "AccountCode" => (string)$vars['userid'], "AccountTypeId" => 12345, // UNIQUE TO YOU "AccountName" => $companyName, "Description" => "From WHMCS.", "Website" => null, "BusinessTypeId" => 0, "ServiceTypeId" => 123, // UNIQUE TO YOU "CurrencyId" => 1, "SalesTaxItemId" => null, "AccountManagerId" => 12345, // UNIQUE TO YOU "IsActive" => true, "IsBilling" => true, "AcquiredDate" => $date->format('Y-m-d\TH:i:s.u'), "CreditLimit" => null, "NetDays" => null, "Locations" => [array( "LocationName" => "Main", "IsActive" => true, "IsMain" => true, "Addresses" => [array( "Address1" => $vars['address1'], "Address2" => $vars['address2'], "City" => $vars['city'], "State" => $vars['state'], "ZipCode" => $vars['postcode'], "Phone" => $vars['phonenumber'], "Latitude" => null, "Longitude" => null, "EmailAddress" => $vars['email'], "Fax" => null, "AddressTypeId" => 1 )] )] )); // Add the JSON to the request curl_setopt($curl, CURLOPT_POSTFIELDS, $account); // Set the header, with the authorization token curl_setopt($curl, CURLOPT_HTTPHEADER, array( "Authorization: Bearer " . $token, "Content-Type: application/json", "Accept: application/json" )); // Return the transfer as a string curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); // Get the response $response = curl_exec($curl); // Close the curl curl_close($curl); // Get the ID of the new account $response_json = json_decode($response); $account_id = $response_json->{'Id'}; // Create a new Contact now $curl = curl_init(); // Set the endpoint curl_setopt($curl, CURLOPT_URL, "https://psa.pulseway.com/api/Import/contacts"); // POST Request curl_setopt($curl, CURLOPT_POST, true); // Build the JSON to go with the request $contact = json_encode(array( "AccountName" => $companyName, "LocationName" => "Main", "FirstName" => $vars['firstname'], "LastName" => $vars['lastname'], "Email" => $vars['email'], "Phone" => $vars['phonenumber'], "JobTitle" => "Client", "Poc" => true, "IsClientPortal" => true, "PortalUsername" => $vars['email'], "PortalPassword" => $vars['password'], "PortalSecurityLevel" => "External User" )); // To conform with Pulseway API format $contact = '[' . $contact . ']'; // Add the JSON to the request curl_setopt($curl, CURLOPT_POSTFIELDS, $contact); // Set the header, with the authorization key curl_setopt($curl, CURLOPT_HTTPHEADER, array( "Authorization: Bearer " . $token, "Content-Type: application/json", "Accept: application/json" )); // Return the transfer as a string curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); // Close the curl curl_close($curl); }); ?>
-
Paul reacted to MaxITGarrett in [C#] 3CX Windows Plugin to Open Ticket in PSA
Of course! I have some more snippets to share on the API side of things as well.
-
Paul reacted to MaxITGarrett in [C#] 3CX Windows Plugin to Open Ticket in PSA
Not sure how many people use 3CX for their phone systems, but our company utilizes the system and have recently adopted Pulseway as well. As a result, I have developed a plugin for 3CX Windows Client that opens a ticket as you pick up the phone from an incoming call. I have included the source code for reference if anyone else has a need for it.
Instructions:
Create a new project. Select C# Language and create a new “Windows Class Library” project. Ensure that the project targets .NET Framework 4.5.1 Add a reference to the library “MyPhoneCRMIntegration.dll” installed with 3CXPhone for Windows (usually C:\ProgramData\3CXPhone for Windows\PhoneApp). Rename Class1.cs to PulsewayTicketPlugin.cs and replace the code with the following: using System; using System.IO; namespace _PulsewayTicketPlugin { [MyPhonePlugins.CRMPluginLoader] public class PulsewayTicketPlugin { // Initialization of Variables private static PulsewayTicketPlugin instance = null; // Holds the instance private MyPhonePlugins.IMyPhoneCallHandler callHandler = null; // Holds the handler private static MyPhonePlugins.CallState lastStatus = MyPhonePlugins.CallState.Undefined; // Holds the last relevant phone status // Called upon loading 3CX Client [MyPhonePlugins.CRMPluginInitializer] public static void Loader(MyPhonePlugins.IMyPhoneCallHandler callHandler) { // Create a new instance of the plugin instance = new PulsewayTicketPlugin(callHandler); } // Constructor for plugin, to add event handler private PulsewayTicketPlugin(MyPhonePlugins.IMyPhoneCallHandler callHandler) { this.callHandler = callHandler; // As the status of the call changes, process the changes callHandler.OnCallStatusChanged += new MyPhonePlugins.CallInfoHandler(callHandler_OnCallStatusChanged); } // Processes the status of the call private void callHandler_OnCallStatusChanged(object sender, MyPhonePlugins.CallStatus callInfo) { // Process the current state // - If it is ringing, a call is incoming, so we want to monitor it // - If it has ended, no longer need to monitor it (happens when we end it or someone else picks it up) // - Don't process other cases, not necessary switch (callInfo.State) { case MyPhonePlugins.CallState.Ended: { lastStatus = MyPhonePlugins.CallState.Undefined; break; }; case MyPhonePlugins.CallState.Ringing: { lastStatus = MyPhonePlugins.CallState.Ringing; break; }; default: { break; }; } // If the phone was ringing and we picked it up, open a new ticket if (lastStatus == MyPhonePlugins.CallState.Ringing && callInfo.State == MyPhonePlugins.CallState.Connected) { // Windows will automatically use the default application used to open URL's System.Diagnostics.Process.Start("https://psa.pulseway.com/MSP/TicketEdit.aspx"); } } } } Build the DLL and place it into the 3CX Phone Directory (C:\ProgramData\3CXPhone for Windows\PhoneApp). Edit the 3CX Phone Configuration file (C:\ProgramData\3CXPhone for Windows\PhoneApp\3CXWin8Phone.user.config) and add the following: <add key="CRMPlugin" value="CallNotifier,3CXPhoneTapiPlugin,PulsewayTicketPlugin"/> Reload your 3CX Windows Client and it should work with the next incoming call! -
Paul reacted to Gary Haberl in 4.0.11, Thank you
Thank you, thank you;
Nice to see 4.0.11.1 now. There were a few fixes we were waiting for that the release notes say are fixed. Good work.
Also, I noticed the new feature in Workflows. Fantastic that we can now change tickets with tokens in emails. We used this feature all the time in another ticket system we had.
Thank you again,
-
Paul reacted to Gary Haberl in Pulseway Ad-Hoc Reports
Hi CHris,
Thank you for the help with this. To help others out, I am posting what I actually used. I was trying to print filter choices on a report, so I used the following.
=Concatenate(FilterValue(1,1)," - ",FilterValue(1,2))
From Filter
From Report
-
Paul reacted to Chris in Support Desktop Icon Shortcut
Hi,
Please edit the target for the shortcut as follows:
"C:\Program Files\Pulseway\pcmontask.exe" support
-
Paul got a reaction from Martin_T in Tickets - Cc'd replies create new tickets
Thanks for the update. I'll get the PSA development team to look into this.
-Paul
-
-
Paul got a reaction from Martin_T in PSA: Adding screenshots to ticket note only works sometimes.
An update on this, we're planning to release the 4.0.11 update tomorrow.
-Paul
-
Paul got a reaction from Martin_T in PSA: Bulk Ticket Operations
Thanks for the report. Please do let us know if you see any kind of slowness like this and I'll look into it right away.
-Paul
-
Paul got a reaction from Martin_T in White Labeled Agent Settings
This is going to be added in today's release. You'll be able to display your own logo and support contact information in the User Chat, Request Support and About windows of the User Agent. Remote Desktop session list rebranding is coming up next week.
-Paul
-
Paul reacted to Kelsier in Asset Info of Offline Computers
Ah - we hadn't gotten too far into the reporting yet. I was able to find everything I need under Reporting > Legacy> Audit. Thanks Paul!
-
Paul reacted to Kelsier in Deploy on Connect
It would be extremely useful if you had an option to run a script/task the next time a computer connects if it is currently offline. I'm at 25 mobile users right now and it is difficult to make sure a script is fully deployed. I'm considering rolling out to 100+ users and cant imagine how I would ensure that they all get a script.