{"id":19824789,"url":"https://github.com/commongateway/customernotificationsbundle","last_synced_at":"2026-01-31T04:00:58.561Z","repository":{"id":208997480,"uuid":"722983118","full_name":"CommonGateway/CustomerNotificationsBundle","owner":"CommonGateway","description":"A bundle containing logic for sending email/sms messages and optionally using notifications as triggers for this.","archived":false,"fork":false,"pushed_at":"2024-07-02T10:33:10.000Z","size":5599,"stargazers_count":0,"open_issues_count":3,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-06-05T07:59:16.551Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Twig","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CommonGateway.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-11-24T12:02:54.000Z","updated_at":"2024-02-12T09:47:20.000Z","dependencies_parsed_at":"2023-12-04T14:41:07.243Z","dependency_job_id":"37c3abc0-d806-414a-98f9-b944c2f1f541","html_url":"https://github.com/CommonGateway/CustomerNotificationsBundle","commit_stats":null,"previous_names":["commongateway/customernotificationsbundle"],"tags_count":40,"template":false,"template_full_name":"CommonGateway/PetStoreBundle","purl":"pkg:github/CommonGateway/CustomerNotificationsBundle","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CommonGateway%2FCustomerNotificationsBundle","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CommonGateway%2FCustomerNotificationsBundle/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CommonGateway%2FCustomerNotificationsBundle/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CommonGateway%2FCustomerNotificationsBundle/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CommonGateway","download_url":"https://codeload.github.com/CommonGateway/CustomerNotificationsBundle/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CommonGateway%2FCustomerNotificationsBundle/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28928630,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-31T02:59:34.861Z","status":"ssl_error","status_checked_at":"2026-01-31T02:59:05.369Z","response_time":128,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-12T11:05:55.097Z","updated_at":"2026-01-31T04:00:58.528Z","avatar_url":"https://github.com/CommonGateway.png","language":"Twig","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Over de berichten service [![Codacy Badge](https://app.codacy.com/project/badge/Grade/980ea2efc85a427ea909518f29506ff6)](https://app.codacy.com/gh/CommonGateway/CustomerNotificationsBundle/dashboard?utm_source=gh\\\u0026utm_medium=referral\\\u0026utm_content=\\\u0026utm_campaign=Badge_grade)\n\n## Hét echt omnichannel component\n\nDe berichtenservice positioneert zich als het ultieme omnichannel component, door een uitzonderlijke veelzijdigheid in communicatiekanalen aan te bieden. Deze service gaat verder dan alleen SMS, e-mail, en de Mijn Overheid berichtenbox; het omarmt ook de kracht van sociale media en messaging apps door ondersteuning te bieden voor het versturen van berichten via WhatsApp, Facebook, en LinkedIn. Deze aanpak zorgt ervoor dat overheidsinstanties een brede en gevarieerde doelgroep kunnen bereiken, ongeacht hun voorkeursplatform voor communicatie.\n\nBovendien breidt de berichtenservice zijn horizon uit door integratie met chatdiensten zoals Slack, waardoor het een ideaal platform wordt voor zowel interne als externe communicatie. Deze toevoeging versterkt de brug tussen overheidsinstanties en burgers, maar ook binnen teams en afdelingen, door een gestroomlijnde en efficiënte communicatieomgeving te bieden.\n\nDaarnaast introduceert het ondersteuning voor pushberichten, die direct in browsers of op mobiele telefoons van gebruikers kunnen worden afgeleverd. Deze technologie stelt overheidsorganisaties in staat om real-time updates en belangrijke informatie te versturen, wat de betrokkenheid en het bereik van hun communicatie verder vergroot.\n\nDe integratie met Postex voor het versturen van fysieke post rondt het omnichannel aanbod af, door een naadloze overgang tussen digitale en traditionele communicatiemethoden te bieden. Deze omvattende aanpak verzekert dat elke burger effectief bereikt kan worden, of ze nu de voorkeur geven aan digitale media, traditionele post, sociale platformen, chatdiensten, of directe meldingen. Zo wordt de toegankelijkheid en doeltreffendheid van overheidscommunicatie op een innovatieve manier verbeterd, passend bij het digitale tijdperk.\n\n## Brede ondersteuning van aanbieders\n\nDe berichtenservice van de CustomerInteractionBundle maakt gebruik van de Symfony Notifier component, een flexibel en krachtig systeem dat is ontworpen om applicatieontwikkelaars in staat te stellen notificaties te verzenden via een veelheid aan kanalen. Door deze basis kunnen ontwikkelaars gemakkelijk integreren met een breed scala aan externe diensten, wat de berichtenservice tot een werkelijk omnichannel communicatieplatform maakt. Symfony Notifier ondersteunt niet alleen traditionele communicatiemethoden zoals e-mail en SMS, maar ook moderne messaging apps en sociale netwerken, en biedt zelfs de mogelijkheid voor het versturen van pushberichten naar browsers en mobiele apparaten.\n\nDe flexibiliteit van Symfony Notifier ligt in zijn ontwerp, waardoor ontwikkelaars eenvoudig nieuwe \"transport\" kanalen kunnen toevoegen en configureren, afhankelijk van de behoeften van de applicatie. Dit maakt het een ideale keuze voor overheidsinstanties die op zoek zijn naar een oplossing die kan groeien en zich aanpassen aan de veranderende communicatievoorkeuren van hun burgers.\n\n## Automatisch berichten sturen aan de hand van notificaties\n\n### Installation with the Common Gateway admin user-interface\n\nOnce a bundle is set up correctly (like this repository), the Common Gateway can discover the bundle without additional configuration. Head to the `Plugins` tab to search, select and install plugins.\n\n#### Installing with PHP commands\n\nTo execute the following command, you will need [Composer](https://getcomposer.org/download/) or a dockerized installation that already has PHP and Composer.\n\nThe Composer method in the terminal and root folder:\n\n\u003e for the installation of the plugin\n\n`$composer require common-gateway/customer-notifications-bundle:dev-main`\n\n\u003e for the installation of schemas\n\n`$php bin/console commongateway:install common-gateway/customer-notifications-bundle`\n\nThe dockerized method in the terminal and root folder:\n\n\u003e for the installation of the plugin\n\n`$docker-compose exec php composer require common-gateway/customer-notifications-bundle:dev-main`\n\n\u003e for the installation of schemas\n\n`$docker-compose exec php bin/console commongateway:install common-gateway/customer-notifications-bundle`\n\n## Configuration for emails and/or SMS\n\nThis bundle can be used for (only) sending emails or SMS messages by creating email or SMS-specific Common Gateway Actions.\nTo do this you will need to create a Common Gateway Action for the `EmailHandler` or `SmsHandler` [ActionHandler](https://commongateway.github.io/CoreBundle/pages/Features/Action_handlers) respectively.\n\n### How to create an email or SMS Action\n\nMost of the configuration for these Actions can be configured by using the Gateway admin UI, except for one configuration property: `variables`.\nIf you want/need to use or change this Action configuration property: `variables`, we recommend including your Action directly in the installation files of the bundle ([Common Gateway plugin](https://commongateway.github.io/CoreBundle/pages/Features/Plugins)) you are working with or use an API-platform tool like Postman to directly POST (, PATCH or UPDATE) your Action on the Common Gateway you are working with.\n\nSo now that you know how to create an email and/or SMS Action, you should also know and understand the requirements of the configuration for one of these (/any) Actions:\n\n* A `name`, your Action is going to need a name.\n* A `reference`, each Action needs a unique reference URL starting with `https://{your-domain}/action/{short-name-for-your-bundle}` and ending with `.action.json`, something like: `\"https://commongateway.nl/action/notifications.ZaakCreatedEmailAction.action.json\"`\n* Each Action needs to listen to one or more [Common Gateway events](https://commongateway.github.io/CoreBundle/pages/Features/Events) you can add this to the `listens` array of your Action.\n* Some [JsonLogic](https://jsonlogic.com/) `conditions` that will be compared to the Action data, these conditions determine when your Action should be triggered. Use `{\"==\": [1, 1]}` for 'always true'.\n* The `class`, this should be `\"CommonGateway\\CustomerNotificationsBundle\\ActionHandler\\EmailHandler\"` or `\"CommonGateway\\CustomerNotificationsBundle\\ActionHandler\\SmsHandler\"` for this type of Action.\n* A `configuration` array containing specific configuration for your email or SMS Action, is probably the most complex thing in this list, so because of that [below](#email-and-sms-action-configuration) this summary/list you will find a more detailed explanation.\n\n### Email and SMS Action configuration\n\nThe email and SMS Action configurations are very similar, here is a list of configuration properties that can be used for email and SMS Actions:\n\n* \\[**Required**] `serviceDNS` The DNS of the [mail](https://symfony.com/doc/6.2/mailer.html) or [sms](https://symfony.com/doc/current/notifier.html#sms-channel) provider.\n* \\[**Required**] `template` The template of your email or sms. This should be a base64 encoded [twig template](https://symfony.com/doc/current/templates.html#twig-templating-language). For (not base64 encoded) examples see the [root/src/EmailTemplates folder](https://github.com/CommonGateway/CustomerNotificationsBundle/tree/main/src/EmailTemplates).\n* \\[**Required**] `sender` The sender. Email for email Action. 'from' string for SMS (example: Gemeente%20Mordor). It is possible to use twig here to add one or multiple variables from the `variables` array.\n* \\[**Required**] `receiver` The receiver. Email for email Action. Phone number for SMS. It is possible to use twig here to add a variable from the `variables` array.\n* `variables` The variables array, with this you can configure which variables (keys of the `variables` array) can be used in your template and fill these values (values of the `variables` array) by using a dot notation reference to a property in the Action data.\n\n\u003e **Note:**\n\u003e For examples of SMS Actions see all Actions in the [root/Installation/Action folder](https://github.com/commonGateway/customernotificationsBundle/tree/main/Installation/Action) that use the ActionHandler (class) `CommonGateway\\CustomerNotificationsBundle\\ActionHandler\\SMSHandler`.\n\n\u003e **Note:**\n\u003e It is possible to use twig to add variables from the `variables` array in another value in the `variables` array, as long as the variables used are defined earlier/higher in the `variables` array. (See variables.body in [this example](https://github.com/CommonGateway/CustomerNotificationsBundle/blob/main/Installation/Action/notifications.ZaakCreatedEmailAction.action.json)).\n\n#### Email Action specific configuration\n\nThe email Action configuration has a few more properties you can use than with the SMS Action configuration.\nFor all these properties it is possible to use twig to add one or multiple variables from the `variables` array:\n\n* \\[**Required**] `subject` The subject of the email.\n* `cc` Carbon copy, email boxes that should receive a copy of this mail.\n* `bcc` Blind carbon copy, people that should receive a copy without other recipients knowing.\n* `replyTo` The address the receiver should reply to, only provide this if it differs from the sender's address.\n* `priority` An optional priority for the email.\n\n\u003e **Note:**\n\u003e For examples of email Actions see all Actions in the [root/Installation/Action folder](https://github.com/commonGateway/customernotificationsBundle/tree/main/Installation/Action) that use the ActionHandler (class) `CommonGateway\\CustomerNotificationsBundle\\ActionHandler\\EmailHandler`.\n\n## Configuration for notifications\n\nIt is also possible to trigger the email and/or SMS Actions you configured through notifications. The CustomerNotificiationsBundle adds a new Common Gateway endpoint that can be used to send your [ZGW notifications](https://vng-realisatie.github.io/gemma-zaken/themas/achtergronddocumentatie/notificaties) to: `{{gateway-domain}}/api/notifications`\n\nAll notifications sent to this endpoint will trigger a [Common Gateway event](https://commongateway.github.io/CoreBundle/pages/Features/Events): \\\n`notifications.notification.created`\n\nAnd by creating a Common Gateway Action using the `NotificationsHandler` [ActionHandler](https://commongateway.github.io/CoreBundle/pages/Features/Action_handlers) you can configure which notifications should trigger a new [Common Gateway event](https://commongateway.github.io/CoreBundle/pages/Features/Events) for sending an email or sms.\n\n### How to create a notification Action\n\nNormally you can create Actions through the Gateway admin UI, but the notification Action has some complex configuration that can currently not be configured with the Gateway UI.\nBecause of this it is recommended to include your Action directly in the installation files of the bundle ([Common Gateway plugin](https://commongateway.github.io/CoreBundle/pages/Features/Plugins)) you are working with or use an API-platform tool like postman to directly POST (, PATCH or UPDATE) your Action on the Common Gateway you are working with.\n\nNow that you know how to create a notification Action, you should also know and understand the requirements of the configuration for a (notification) Action:\n\n* A `name`, your Action is going to need a name.\n* A `reference`, each Action needs a unique reference URL starting with `https://{your-domain}/action/` and ending with `.action.json`, something like: `\"https://commongateway.nl/action/notifications.ZaakCreatedAction.action.json\"`\n* Each Action needs to listen to one or more [Common Gateway events](https://commongateway.github.io/CoreBundle/pages/Features/Events) you can add this to the `listens` array of your Action. This will most likely be `[\"notifications.notification.created\"]` if you are working with [ZGW notifications](https://vng-realisatie.github.io/gemma-zaken/themas/achtergronddocumentatie/notificaties).\n* Some [JsonLogic](https://jsonlogic.com/) `conditions`, these conditions determine when your notification Action should be triggered. When it triggers it will throw the event that will trigger the Action that sends an email or SMS. [Below](#notification-action-conditions) this summary/list you will find an example.\n* The `class`, this should be `\"CommonGateway\\CustomerNotificationsBundle\\ActionHandler\\NotificationsHandler\"` for your notification Action.\n* A `configuration` array containing specific configuration for getting and passing information to your email and/or SMS Actions, probably the most complex thing in this list, so because of that [below](#notification-action-configuration) this summary/list you will find a more detailed explanation and example.\n\n### Notification Action conditions\n\nTo only send an email or SMS for a specific type of notification you can use the Action `conditions` in combination with the Action configuration to only make your Action trigger for the notifications you want.\nAction conditions use [JsonLogic](https://jsonlogic.com/) to compare the Action data with your conditions.\n\nHere is an example of the conditions for a 'case created' / 'zaak aangemaakt' notification Action:\n\n```json\n{\n    \"and\": [\n        {\n            \"in\": [\n                \"https://open-zaak.test.buren.opengem.nl/zaken/api/v1\",\n                {\n                    \"var\": \"body.kanaal\"\n                }\n            ]\n        },\n        {\n            \"==\": [\n                {\n                    \"var\": \"body.kanaal\"\n                },\n                \"zaken\"\n            ]\n        },\n        {\n            \"==\": [\n                {\n                    \"var\": \"body.resource\"\n                },\n                \"zaak\"\n            ]\n        },\n        {\n            \"==\": [\n                {\n                    \"var\": \"body.actie\"\n                },\n                \"create\"\n            ]\n        }\n    ]\n}\n```\n\n\u003e **Note:**\n\u003e In these Action conditions you can use most properties of the Request through the Action data, so besides checking body.bodyProperty you could for example check method=POST as well.\n\n\u003e **Note:**\n\u003e For more examples see all Actions in the [root/Installation/Action folder](https://github.com/commonGateway/customernotificationsBundle/tree/main/Installation/Action) that use the ActionHandler (class) `CommonGateway\\CustomerNotificationsBundle\\ActionHandler\\NotificationsHandler`.\n\nIn some cases, you want to check a little bit more than is possible with only the Action conditions.\nSuch as getting and checking information from the ZGW notification hoofdObject or resourceUrl objects.\nTo learn more about this please check the Action configuration `extraConditions` [below](#extraconditions).\n\n### Notification Action configuration\n\nThe configuration of your notification Action can be used for a few things, we will go into detail here on what you can configure.\n(The same information should be provided in the `src/ActionHandler/NotificationsHandler.php` file itself).\nMost properties are not required to add, please consider what you need for your use case and add the required configuration for that.\nIf you are missing any required fields you will find error logs about this in the Gateway UI while testing.\n\nHere is a very complex and extensive example of the Action configuration for a 'case status is finished' / 'zaak status is eindstatus' notification:\n\n```json\n{\n    \"extraConditions\": {\n        \"getObjectDataConfig\": {\n            \"source\": \"https://buren.nl/source/buren.zrc.source.json\",\n            \"notificationProperty\": \"body.resourceUrl\",\n            \"sourceProperties\": [\"statustype\"],\n            \"getObjectDataConfig\": {\n                \"forParentProperties\": [\"statustype\"],\n                \"source\": \"https://buren.nl/source/buren.ztc.source.json\",\n                \"sourceProperties\": [\"isEindstatus\"]\n            }\n        },\n        \"conditions\": {\n            \"isEindstatus\": true\n        }\n    },\n    \"hoofdObjectSource\": \"https://buren.nl/source/buren.zrc.source.json\",\n    \"emailConfig\": {\n        \"getObjectDataConfig\": {\n            \"source\": \"https://buren.nl/source/buren.zrc.source.json\",\n            \"sourceEndpoint\": \"/rollen\",\n            \"sourceQuery\": {\n                \"zaak\": \"{{body.hoofdObject}}\",\n                \"omschrijvingGeneriek\": \"initiator\"\n            },\n            \"sourceProperties\": [\"results.0.betrokkeneIdentificatie.inpBsn\"],\n            \"searchSchemas\": [\"https://commongateway.nl/klant.partij.schema.json\"],\n            \"searchQuery\": {\n                \"externeIdentificaties.partijIdentificator.objectId\": \"{{results.0.betrokkeneIdentificatie.inpBsn}}\",\n                \"externeIdentificaties.partijIdentificator.objecttype\": \"ingeschrevenpersonen\"\n            }\n        },\n        \"objectConditions\": {\n            \"embedded.voorkeurskanaal.soortDigitaalAdres\": \"emailadres\"\n        },\n        \"throw\": \"notifications.zaak.status.finished.email\"\n    },\n    \"smsConfig\": {\n        \"getObjectDataConfig\": \"sameAsEmail\",\n        \"objectConditions\": {\n            \"embedded.voorkeurskanaal.soortDigitaalAdres\": \"telefoonnummer\"\n        },\n        \"throw\": \"notifications.zaak.status.finished.sms\"\n    },\n    \"createObjectConfig\": {\n        \"schema\": \"https://commongateway.nl/klant.klantcontact.schema.json\",\n        \"mapping\": \"Mapping ref or uuid\"\n    }\n}\n```\n\n\u003e **Note:**\n\u003e For more examples see all Actions in the [root/Installation/Action folder](https://github.com/commonGateway/customernotificationsBundle/tree/main/Installation/Action) that use the ActionHandler (class) `CommonGateway\\CustomerNotificationsBundle\\ActionHandler\\NotificationsHandler`.\n\n#### extraConditions\n\nThe extra conditions for this action, make it possible to check properties from an object in a Source outside the Gateway and use that data as extra conditions for running this action.\nAll conditions in the `\"conditions\"` array are checked.\n\nOnly properties/keys defined in a `sourceProperties` array can be used to check conditions in the `\"conditions\"` array.\nSee the example [above](#notification-action-configuration), we check if `isEindstatus = true`, `isEindstatus` is present in a `sourceProperties` array.\n\nWith `getObjectDataConfig` you can configure how a source will be called, to get the `sourceProperties` you need for your `\"conditions\"`.\n`getObjectDataConfig` can be used recursively, if you do this you will need to add the array property `forParentProperties` containing the `sourceProperties` you would like to use to call another Source with.\nSee the example [above](#notification-action-configuration), `\"statustype\"` is a property on the source containing a url, it is present in the first `sourceProperties` array and the `forParentProperties` after that.\n\n`getObjectDataConfig` must always have the properties:\n\n* `source` Reference of the source to call.\n* `sourceProperties` Properties to use from source response.\n* \u0026 one of:\n  * `notificationProperty` Get URL from the notification to call on a source.\n  * `sourceEndpoint` Define a specific endpoint to call on a source.\n  * `forParentProperties` In case of recursion add the sourceProperty name here, that has an URL in the value, so that can be used to call another (or the same) source.\n\nBut `getObjectDataConfig` can also have the property:\n\n* `sourceQuery` Query to use to call the source.\n\n#### hoofdObjectSource\n\nWhen this property is set the data from the notification hoofdObject will be available in your email and SMS template.\nThe given source (reference) will be called using the notification hoofdObject URL and the return value will be passed through the thrown email/SMS event. \\\nOnly set this if you need it.\n\n#### resourceUrlSource\n\nDoes exactly the same as hoofdObjectSource but for the notification resourceUrl instead. (not present in the example [above](#notification-action-configuration))\\\nOnly set this if you need it.\n\n#### emailConfig\n\nThis contains the configuration for sending an email after the notification has been received.\nIf not present it will not be possible for emails to be sent.\n\n* `getObjectDataConfig` can be used to configure how to find and add the data of one Common Gateway Object to the email Action data (and email message through the email template).\n* `objectConditions` can be used to add some final conditions to check using the object found with the `getObjectDataConfig`. If these conditions fail the email will not be sent. (as long as `objectConditions` is not empty, the email will also not be sent if no object was found with `getObjectDataConfig`).\n* `throw` is the event we should throw to trigger another [EmailHandler action](#configuration-for-emails-andor-sms) that will send the actual email.\n\nBasic details about how `getObjectDataConfig` works can be found in the description of the [extraConditions](#extraconditions) property, please take a look at that first.\nGood to know \u0026 emailConfig specific properties:\n\n* `source` Reference of the source to call.\n* `sourceProperties` This is the array with property names to get from the response of the source.\n* `searchSchemas` Array with Schema references to use when searching an Object in de Gateway.\n* `searchQuery` Query array to use when searching an Object in de Gateway, use {{sourcePropertyName}} here to insert the values got using `sourceProperties`. See example [above](#notification-action-configuration).\n\n\u003e **Note:**\n\u003e that it is also possible to use `getObjectDataConfig` recursively, see [extraConditions](#extraconditions) for how this is done.\n\n#### smsConfig\n\nThis contains the configuration for sending an SMS after the notification has been received.\nIf not present it will not be possible for sms to be sent.\n\n* `getObjectDataConfig` can be used to configure how to find and add the data of one Common Gateway Object to the SMS Action data (and SMS message through the SMS template), if set to `\"sameAsEmail\"` the same object (response from sources) as for email will be used (or the same configuration).\n* `objectConditions` can be used to add some final conditions to check using the object found with the `getObjectDataConfig`. If these conditions fail the SMS will not be sent. (as long as `objectConditions` is not empty, the SMS will also not be sent if no object was found with `getObjectDataConfig`).\n* `throw` is the event we should throw to trigger another [SMSHandler action](#configuration-for-emails-andor-sms) that will send the actual SMS.\n\nFor more details about how `getObjectDataConfig` works, please see the [emailConfig property](#emailconfig).\n\n\u003e **Note:**\n\u003e smsConfig works exactly the same as the emailConfig except for the use of `\"sameAsEmail\"`.\n\n#### createObjectConfig\n\nThis currently doesn't do anything, this is a work in progress. \\\nWhen this is finished it can however be used to create specific Common Gateway Objects at the end of handling a notification. To create for example a 'klantcontact' Object after the email and/or SMS has been sent.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcommongateway%2Fcustomernotificationsbundle","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcommongateway%2Fcustomernotificationsbundle","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcommongateway%2Fcustomernotificationsbundle/lists"}