Configuration¶
Application Config¶
- api_url - The URL to the customers Lime Marketing API
- api_key - The API key to Lime Marketing
- api_user - The user associated to the API key
- max_recipients - Limit how many recipients can be in the same sendout. (If left empty the default value is 5000)
Example for an on-prem customer¶
Edit the application_config.yaml on the Lime CRM server
YOUR_APPLICATION_NAME:
config:
addon_manual_sms:
newsletter:
api_url: https://app.bwz.se/[customername]/bedrock/api/
max_recipients: 5000
secrets:
addon_manual_sms:
newsletter:
api_key: [Lime Newsletter API-key]
api_user: [email protected]
Example for a cloud customer¶
Edit the application config in CAFE
Config section
addon_manual_sms:
newsletter:
api_url: https://app.bwz.se/[customername]/bedrock/api/
max_recipients: 5000
Secrets section
addon_manual_sms:
newsletter:
api_key: [Lime Newsletter API-key]
api_user: [email protected]
Warning
addon-manual-sms doesn't work if the solution is using record access on limetypes used by the addon. This means that if record access is used for any limetypes related to smsrecipient the addon won't be able to create smsrecipients.
Add the following line to cafe for cloud or the task-handler config for on-prem:
security:
types_with_record_access_are_accessible: true
This will allow the task to fetch the record id of the smsrecipient related limetypes.
Lime Admin config¶
Addon Manual SMS has 3 config pages in Lime Admin:
Limetypes Configuration¶
Configure tables and fields for the integration.
Start by choosing the lime types for smssendout
, smsrecipient
and smstemplate
. The integration will now automatically suggest fields for the properties on each limetype. It can of course be changed if your database structure is different from the suggestions in the LIP package.
Addon Configuration¶
Configure Sender Info, Merge Variables and Reciever Config.
Sender Info¶
A list of available numbers/names to send from that can be used with the app.
- display name - The internal name of the sender inside the app
- sender name - The actual sender name that will be shown for recipients
Merge Variables¶
A list of merge variables that are available when creating an SMS message.
- Limetype - Pick a limetype for the merge variable. When sending an SMS to a specific limetype, only merge variables matching that limetype can be used.
- Path for recipient property - The path to the property that will be used for the merge variable. It is based on the limetype. (I.e. "company.coworker.name" for limetype "person")
- merge variable - The name for the merge variable in Lime Marketing. It must match the name of the recipient property.
- Description - A user friendly name shown in the application.
Receiver Configuration¶
Configure the limetype that should be used as sms receivers. Remember to create relations between smsrecipient
and these limetypes in LISA if you have not already using the Addon Installer.
- Name of receiver table - Pick a limetype to act as receiver.
- Property for name on receiver table - The property on the limetype to use as name for the receiver. (I.e. "company.coworker.name" for limetype "person")
- Property for mobile phone on receiver table - The property on the limetype to use as phone number for the receiver. (I.e. "company.coworker.phone" for limetype "person")
- Extra relations - A list of relations for the receiver
Extra relations¶
- Relation limetype name for smsrecipient - The name of the relation on the
smsrecipient
table - Relation limetype name for receiver - The name of the relation on the receiver table
When creating a new smsrecipient it will automatically try to attach the smsrecipient
to the configured receiverConfigs.limetypeName
.
If the relation exists it will attach it, otherwise it will not.
With Extra Relations
you can configure it to attach more relations.
For instance if you send an SMS from an helpdesk
you may want the smsrecipient
to be attached to the helpdesk's person relation as well. Then you can configure that by creating the relation smsrecipient <=> person
, and configure it by setting smsRecipientRelation
to person
and receiverRelationPath
to the name of the relation between helpdesk <=> person
(usually person
)
Lime Marketing connection¶
This view contains a webcomponent to test the connection to Lime Marketing. It will also display a readonly version of the application config and the lime-marketing settings.
The lime marketing settings are automatically synced when you click the Synchronize to Lime CRM
button on the settings page for the integration in Lime Marketing.
The lime marketing settings contains:
- publication_id - The publication used for sending SMS messages in Lime Marketing
- transactionhandler_id - The id of the Lime CRM integration in Lime Marketing
- mobilenumber_property_name - The name of the SMS recipient property "mobile number" in Lime Marketing ("Mobile number" by default)
Web client views¶
SMS recipient¶
Import this JSON file as view configuration for the smsrecipient table.
Remember to add all relations you have added to smsrecipient in LISA to the webclient view for the smsrecipient
SMS sendout¶
Import this JSON file as view configuration for the smssendout table.
SMS template¶
Import this JSON file as view configuration for the smstemplate table.
Configure the webcomponents¶
Addon Manual SMS contains 2 webcomponents that can be used to trigger the application.
Command trigger¶
The command addon_manual_sms.send-sms
can either be used from the table view of a limetype or from the card view.
Add the command by adding a Custom Action on Views > <Limetype> > Custom Actions
to be able to trigger the app from the card view
Add the command by adding an Action on Views > <Limetype> > Table > Actions
to be able to trigger the app from the table view.
Button trigger¶
The webcomponent lwc-addon-manual-sms-send-sms-button
can be used from the card view in the webclient. For the desktop client can be added to the actionpad.
Add the button by adding a Web component on Views > <Limetype> > Card > Web components
to be able to trigger the app from the card view.
Template sender component¶
The webcomponent lwc-addon-manual-sms-template-sender-picker
can be added to the templatesender
field on the smstemplate card. This will give you a picker for all available senders. If you do not want to use this component you can leave it as a text field.
Template editor component¶
The webcomponent lwc-addon-manual-sms-template-editor
can be added the the message
field on the smstemplate card. This will give you an editor that allows you to add merge variables to the content of the template. If you do not want to use this component you can leave it as a text field.
Example config¶
{
"limetypesConfig": {
"smsSendoutLimetype": {
"propertyName": "name",
"propertyMessage": "message",
"propertySendDate": "send_date",
"propertyStatus": "smssendoutstatus",
"propertyBwSmsmessageId": "bw_sms_message_id",
"propertySmsrecipient": "smsrecipient",
"limetype": "smssendout"
},
"smsTemplateLimetype": {
"propertyName": "name",
"propertyInactive": "inactive",
"propertyForTable": "fortable",
"propertyDefault": "default",
"propertyMessage": "message",
"limetype": "smstemplate"
},
"smsRecipientLimetype": {
"propertySmssendout": "smssendout",
"propertyStatus": "smsrecipientstatus",
"propertyBwSmsrecipientId": "bw_smsrecipient_id",
"propertyPhonenumber": "phoneno",
"limetype": "smsrecipient"
}
},
"addonConfig": {
"senders": [
{
"displayname": "Internal communication",
"sendername": "Lime"
},
{
"displayname": "External communication",
"sendername": "Lime Tech"
}
],
"mergeVariables": [
{
"limetype": "person",
"propertyPath": "firstname",
"bwRecipientProperty": "firstname",
"description": "person firstname"
},
{
"limetype": "person",
"propertyPath": "lastname",
"bwRecipientProperty": "lastname",
"description": "person lastname"
}
],
"receiverConfigs": [
{
"extraRelations": [
{
"smsRecipientRelation": "coworker",
"receiverRelationPath": "company.coworker"
}
],
"limetypeName": "person",
"namePropertyPath": "name",
"phonenumberPropertyPath": "mobilephone"
}
]
},
"lime_marketing": {
"settings": {
"publication_id": null,
"transactionhandler_id": null,
"mobilenumber_property_name": null
},
"app_cfg":{
}
}
}