Brainvire SMS Extension allows you to conveniently communicate with clients via SMS in SuiteCRM. Both incoming SMS and outgoing SMS are supported in this add-on with just a simple configuration. Other APIs outside of Nexmo, Plivo and Twilio can also be configured.
#5504 - Opt-In and Opt-Out Questions
Do you have any Opt-In / Opt-Out integrations or functionality in the CRM and your Twilio Integration? For Opt-Out, I know that Twilio generally handles this and will reject any attempts to send an SMS to a number that has opted out via their Opt-Out process. What I am wondering is if your integration gets any API or Web-hook notification back from the Twilio process and marks an account, contact, lead, or phone number, etc... in some way that prevents the CRM from attempting to send an SMS so we don't lose money on sending an SMS that just ends up getting rejected?
Do you have any integration for opt-in, or will I need to manually handle this?
Thank you for your help.
one month ago
Hello
We do not have it currently in our plugin. But we are doing our R&D on the same. Will update you soon
Thank You, Brainvire Team
one month ago
Hello
Sorry for delay in response. We have added Opt out process in our plugin and added the latest plugin in the store.
We will be tracking Opted out numbers while sending SMS, if its opted out then we will not be sending message to that number\
Please take the latest package from store and check it.
Thank You, Brainvire Team.
one month ago
Hello
Were you able to test the new feature. Please let me know if you are facing any issue
Thank you, Brainvire Team
3 weeks ago
I apologize for the delay, I did not see this response till today. I will download the new version and test it out. And give you feedback.
Thank you.
2 weeks ago
Ok, I have uninstalled my current version, I then downloaded the one from the store again, installed it, rebuilt angular files, and then did a quick rebuild and repair. I have added my webhook endpoint path to my Twilio messaging configuration. I am able to send SMS to my phone so at least base functions are still working after the update. However, I have a few questions, 1. Where does your plugin set the opt-out for a specific phone number?
Where can I manually mark/unmark a phone number as opt-out? I have looked around since I installed the update but I don't see where to mark/unmark a phone number as being opted out. The only thing I see is where I can mark/unmark an account, contact, or lead email address as opt-out but nothing specific to phone numbers.
If someone replies to an SMS where is that supposed to show up in the CRM? I tested to see what happens if someone replies to the SMS message they received, so I sent myself an SMS and then replied "Testing 1234". I expected to get a notification in SuiteCRM but I didn't see anything indicating the CRM received any response from Twilio. I even checked the Calls area, since you log the outgoing SMS there, thinking I might see the incoming SMS, but there is nothing there.
2 weeks ago
Hello Joseph
sorry for delay in response. Addressing your two concerns below :
Opted Out numbers we are managing in a table in back end which will store all the numbers that opts out by sending messages like STOP, CANCEL, UNSUBSCRIBE. We are not managing that in frontend. We can surely work on frontend by adding a new field. Will update you soon on that
Did you configure Webhook in Twilio to receive SMS as mentioned in the documentation. Once you configure this then only we will start receiving the incoming message in CRM.
Thank You, Brainvire Team.
2 weeks ago
Thank you for the information on the opt-out numbers, I look forward to seeing your front-end changes for the SMS opt-out features. Regarding my Twilio integration, yes, I have entered my CRM's webhook URL for the incoming messages section of my Twilio account. I have also attempted to switch between HTTP and HTTPS protocol for the URL with neither working. Is there any way I can send a test to this endpoint using Postman? If you could give me the information on what the "receiveSMS" entry point is expecting for an HTTP request I could attempt to test it in a more controlled environment. Until then I will go look at the Twilio API and see if I can see what they send and maybe try to build a test request in Postman using that information.
Thank you for all your help.
2 weeks ago
Quick update, I went and researched the Twilio API and created a basic HTTP request in Postman to test. It is a POST action to my "https://suitecrmURL/index.php?entryPoint=receiveSMS" endpoint (http protocol also works the same), I added the following fields to my form-data, From, To, and Body. These messages are now showing in the CRM Calls area however when you click on them they just pull up a blank screen with no data at all. I don't know if you are trying to match incoming SMS numbers to phone numbers assigned to accounts, contacts, or leads or if there is any extra form data that is expected that I am not sending in my test HTTP Request. Please advise, thank you.
2 weeks ago
One more thing, even though they showed up in the Calls area there was no CRM system notification, does your software provide a system notification when an incoming text comes in?
2 weeks ago
Yes admin user will get notification via our api when incoming message comes in
2 weeks ago
Ok more information, I logged in as the admin user and I can see the notifications. However, there are a few issues:
When I click on them, just like when I click on them in the Calls area it takes me to a blank screen.
Because I am the only one who would ever log in as admin AND I do not use that account as my primary account, no one else can see any incoming messages for any questions that may be asked in response to the outgoing SMS message.
There needs to be a way to do at LEAST 1 of the following if not all 3 of the following: - Enable the incoming SMS alerts for ALL users. - Enable the incoming SMS alerts for a specific Role that can be assigned to specific Users. - Enable the incoming SMS alerts for Specific Users directly.
I will inform you of anything I discover regarding my Twilio webhook troubleshooting. However, I am reaching a point where I may have to choose to create and use my own endpoint to handle the opt-out functionality, incoming SMS notifications, and call logging until these things are addressed in a future update. Unfortunately, there is a good chance that by that time I may be instructed by our management team to abandon this SMS integration and create our own internal SMS integration for SuiteCRM so that we can move forward with our marketing and sales plans. I hope it doesn't come to that as I have invested a great deal of time both on and off the clock on this integration with our CRM so anything you can do to help me get this working I GREATLY appreciate it.
Thank you for all your help.
2 weeks ago
Hello
Can we schedule a call on Monday to check the webhook issue. Can you please let me know your availability
Thank you, Brainvire team
2 weeks ago
Can you please let me know you are using Twilio trial account or paid number
Can you please hit the webhook url that you have added in twilio directly in browser. Can you please let me know what did you observe by doing so
2 weeks ago
I have created my own web API endpoint for Twilio, I configured Twilio's Incoming Message webhook to use that URL., then I tested it by replying to the SMS I sent my phone via the CRM, and Twilio sent their response to my test endpoint and I successfully logged it so I know that Twilio is working. I suspect there may be a problem with your plugin endpoint or something else so I will check to see if there are any errors in the CRM or PHP log files this morning, test a few other things, and let you know.
To answer your other questions: 1. I am using a paid number on Twilio and they have approved the campaign and opt-in /opt-out methods that we submitted to them. 2. When I attempt to open the webhook URL in my browser it just returns a blank page. This probably doesn't help much but I inspected it with the Dev View of my Chrome browser to see if there were any errors in the console, but there weren't any. Also looking at the response HTML all it had had was an empty HTML Header tag and an empty Body tag with the following attributes "data-new-gr-c-s-check-loaded="14.1207.0" and data-gr-ext-installed=""
Thanks again for your help, I will let you know what else I find.
2 weeks ago
Hello
Custom API is getting called and plugin API is not getting called is quite strange as its getting called from postman. I feel we need to take a call to solve this issue. We are not facing this issue at our end.
For this we have added a scheduler, which will check all the customer numbers that have opted out by sending message like STOP/UNSUBSCRIBE/CANCEL and this will check OptOut field on UI.
When we send a message to opt out numbers, we will get error message as below
Please let me know if you need any improvement in Opt Out functionality.
Take the latest package from store and verify it
Thank You, Brainvire Team
2 weeks ago
After adding some debug logging to the plugin PHP code, doing further debug testing, and inspecting the PHP and CRM logs yesterday, I found a few things that were causing issues.
To test I added the following code to the findNumberInCRM() function in the "BVSMS/functions.php" file to have it strip the country codes from the numbers before searching the modules.
The result was that it allowed the relations to be found and properly assigned to the call log and the call logs were able properly load when you clicked on them. As this is just an incomplete and temporary workaround, if you decide to address this issue you should consider checking to see if the number has the country code, if it has a country code and fails to locate the number in the module databases, strip out the country code, and query again using the phone number without a country code. You may also want to consider creating a custom module where you can log any incoming SMS number that you can't resolve back to a specific module. If you do this the plugin won't create a broken record in the Calls module that can't be viewed when it can't reconcile a number to a module. You may even want to consider moving ALL logging and viewing of SMS messages into a custom module to unify the user experience.
With the temporary workaround changes I have done, I am now able to receive the incoming webhook requests from Twilio and I can now properly see the incoming calls logged in the Calls module. I will download and install the latest version to test the opt-out features you have implemented. I have created a CRM endpoint that will act as a middleman to temporarily handle the formatting of the incoming SMS numbers and then forward the request to your endpoint, this way I can continue to update your plugin easily and still retain the incoming SMS functionality until they are addressed in your end.
Also, please let me know if you are considering creating a way to configure global/group/role-based notifications for incoming SMS. Until then I will try to implement that functionality with my middleman CRM endpoint.
I will let you know how the new update works out,
Thank you again for all your time and help I really appreciate it.
one week ago
Hello Joseph,
if (str_start_with($number,'+1')){ $number = str_replace('+1','',$number); }
With our plugin, we can schedule SMS using module BV_Schedule_SMS. The logichook you mentioned bv_schedule_sms_logic.php is for that purpose. We have declared in that module. Actually we forgot to remove the old logichook defintion in the Calls module which is not required any more. Sorry for the inconvenience, you can comment out the logic present in the file in path custom/Extension/modules/Calls/Ext/LogicHooks/bv_logic.php. Its not needed any more
global/group/role-based notifications for incoming SMS, I did not get this point. Can you please let me know in detail. As per our new package, if Account A is having a number and assigned to of Account is Joseph and if an incoming messages flows into this number then Joseph will get notification. Is this you require ?
Please take the latest package from store and explore the new functionalities.
Thank You, Brainvire Team.
one week ago
Thank you for your response,
I will install the new build and let you know how things go.
Thank you for all your help, I appreciate how responsive and helpful you have been.
Have a great day!
one week ago
Hello
Yes we will not be implementing bulk notification as its specific requirement. But please let us know if you are facing any issue in existing requirement. We will surely look into it.
If you are happy with our plugin functionalities and our support, please provide us feedback in https://store.suitecrm.com/addons/bv-sms-extension/reviews
It would be great help to us.
Thank You, Brainvire Team