Date: 20th Aug 2021
- Issue – Unnecessary continuous debug logs were getting created in the Dev Console
In the developer console, there were unnecessary debug logs getting generated from SMS-Magic.
The periodic polling mechanism was generating continuous logs. This call should not have been made for non-licensed users.
To solve this issue, a license check was added in the method ‘conversationsWrapper’ of MessageComposerServreController.cls. and access check was also added in conversationsComponent before calling apex method to fetch the latest messages.
Date: 06th Aug 2021
1. Issue: Non-selective query against large object error.
The customer was receiving the error ‘Non-selective Query’ even after indexing the fields. The query was arising when they were trying to send automated SMSs in the converse app. While querying on SMS history records in the ‘FetchMonthlyMessages’ method of ConsentService class, it was throwing an exception because ‘status != and template!=null’ was used in the clause and to solve the issue. Changes were made in the query. To solve this issue, the method ‘status in (status set) and Is_SMS_Template_Empty__c = false’ was added. != condition was removed from both places.
Date: 02nd Aug 2021
- Issue: The fallback Sender ID set for action was not consistent with the UI of the Converse App action
When a customer was trying to update the Sender ID on the UI of Converse App Action, it was getting auto-updated to the old one. Existing functionality was that while fetching Sender IDs based on SenderId value rather than Record Id, we were assigned the first element of the list to that Sender ID.
If an org contains Sender IDs with the same alphanumeric value, it was producing a list of Sender IDs with more than one value, and each time the first Sender ID was getting assigned to Converse app action.
The proposed solution was that instead of fetching Sender IDs based on values, now it would be fetched based on Record Ids, so that every time a unique Sender ID will get produced.
- Issue: Unable to Send MMS Via Bulk SMS button
The customer was facing an issue where the users were unable to attach media while sending messages via the Bulk SMS Button.
To solve this issue, implemented negation for the ‘AllowToChangeTemplateSelection’ variable.Negation for attribute ‘AllowToChangeTemplateSelection’ was missing in the ‘class’ attribute of the button element. A class with the name ‘slds-is-disabled’ was getting assigned to the button element thus the button was clickable yet shown disabled.
Date: 14th June 2021
- Issue – Issue of SMS getting sent to duplicate number in Converse App >> Bulk Campaign
ID of the converse app task was not passed to batch before execution. Thus the required check for duplicate numbers was not happening.
To solve this issue, the ID of the Converse App task was passed to batch ensuring check for duplicate numbers. With this, sending messages to duplicate numbers was avoided.
- Issue – Need to pass the record ID parameter to the injection service:CustomConsentService
The client wanted to check for field on the record and based on that they wanted to manage the Consent record. For customization, the case record ID was required to be passed to the custom class (“CustomConsentService”) at the injection point.
At the injection point, the record ID was passed to the custom class (“CustomConsentService”) to support the customization case.
Date: 24th May 2021
- Issue: Customer was getting an error while sending SMS from Bulk Campaign from the Converse App
When any object from parent-child relationship was configured in the Message Configuration Object (MOC), the package code was not able to resolve the relationship to get the value of the opt-out field. Due to this, the customer was getting an error while sending SMS from Bulk Campaign from the Converse App.
To resolve this issue, the code was updated to resolve the relationship and get the value of the opt-out field as expected.
- Issue: Customer was facing an issue with lookup object on SMS consent record
The last updated record ID was getting attached to each consent record that was created. This was causing the mentioned error.
To solve the issue, the unique record ID which is fetched from input consent data was updated.
Date: 17th May 2021
Fix: Conversations Lightning component was not loading messages properly. The customer was facing an issue where the messages before 16th march were not loading on the conversation component on the record page layout. In message.cmp there was an unnecessary use of the method sanitizeUrl() that was causing an issue while parsing the object instead of a string.
To solve this issue, we removed the unnecessary use of the method. Used it at a relevant place from a security perspective.
Date: 5th May 2021
- Issue: Customer asked for customization for SenderId Injection point
Fix: Customer wanted Sender IDs to be available in a specific sequence.
In the injection point, the data was run through the “transformData” method which was causing an issue in implementing the desired customization for the customer.
To address this customization requirement from the customer, an ‘IF’ condition was added where a deprecated flag ‘smagicinteract__Canned_Responses_Only__c’ from the ‘globalSetting’ was used. If it was true then the data was not transformed, if false, the functionality was executed as usual.
- Issue – Consent was not getting created for SMS channel via process builder
Fix -Customer had configured a process builder named “Lead Driven Processes on Lead” to create consent for SMS and WhatsApp channel when the conditions were fulfilled. This was done by the apex class coming with the managed package.
It was working fine, the customer could see that consent entries were getting created for the SMS channel till 17th March 2021.
Later, it only created consent for the WhatsApp channel.
The customer could see an entry created under the error log at the same time with an error “Attempt to de-reference a null object”.
- Issue – Consent was not getting created even when the criteria were met
Fix – A process builder was created for consent creation that calls apex” smagicinteract__ConsentService”, when the criteria of the checkbox “Consent to contact via Whatsapp” getting checked was met. But the number in the WhatsApp number field was not opted-in (Condition 2 and 3 in the process builder)
- Issue –
When any user was logging in and selecting any Sales or Service Path where the utility bar component was assigned, the tab at the top showed “Converse Desk|SMS-Magic”. The client users were getting confused with this and so the client wanted this to be resolved.
Misspelling in the error message that was getting displayed.
If the user does not have any license then they were getting an error message, “You don’t seems to have required license to send SMS or MMS”.
Here, in the error message, there was a spelling mistake; it should have been ‘SEEM’ and not ‘SEEMS’.
The ‘Send SMS’ button was configured on Lead, Opportunity, Account, and Case object. When the customer user was clicking on the button, it was not fetching the mobile number to send the SMS.
If the VisualForce pages assigned to the Send SMS button were edited and the phone fields were added to it, it was fetching the phone info. However, the client did not want to add any manual steps to update the VisualForce page script.
As per logic, the Send SMS VisualForce pages should have displayed the phone fields configured in the MOC, however it was not working.
Issue 1 – Added a condition in ConversationView to skip the execution of setting title if SF1 was not found in the context
Issue 2 – Custom Label was changed
Issue 3 – Removed the condition from LightningBulkSMSController which was limiting the selection of Phone Field from MOC configured.
- Issue – Issue with Lightning Tab and with Send SMS button
When any user logs in then selects any Sales or Service Path where we have assigned the utility bar component, the tab at the top shows “Converse Desk|SMS-Magic”.The user are getting confused with this and client wants this be resolved asap.
Lightning app name: Sales Path (Sales Management app for Lead Gen)
We have configured Send SMS button on Lead, Opportunity, Account and Case object. When we click on the button, it is not fetching the mobile number to send the SMS.
Date: 24th Feb 2021
Issue – The 24hr Conversation Window was not working properly on Facebook and WhatsApp
The 24hr Conversation Window was available on One record with the same mobile number and Sender ID. However, it was not available on another Object. The system was checking for the 24hr window on the basis of recordID, phone, Sender ID, and channel. The recordID was causing the issue.
To solve this issue, recordID was removed from the key. With this, the 24hr Conversation Window started functioning properly on WhatsApp and Facebook both.
Date: 20th Jan 2021
Issue – The consent records were not getting created with country code prefix
Consent records were not getting created with country code prefix for those who have set a specific country as messaging destination (other than the ‘All’ option). Consent records and compliance enforcement functionality was not working as expected.
To solve this issue, security enhancements were done in the country-specific consent recording.