function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
SakthidasanSakthidasan 

workflow outbound message

I'm new to salesforce please clarify my doubt about outbound message,As I understand outbound message is part of work flow rule and it can be useful for sending on message to external service.what situation we should use outbound message.please give real time example
 
Best Answer chosen by Sakthidasan
Jyothylakshmy P UJyothylakshmy P U
Pros
- The most important pro as this is point and click code. No Apex code must be developed and no unit tests have to be created.
- The message is guaranteed to be delivered in a 24 hour window. This is not a small feature to overlook. To implement this type of guarantee with a callout from Apex takes a lot of extra work and planning
Cons
- The destination end point has to be pretty specifically setup in order for it to accept the contents of the SOAP message being sent. This makes it hard to use with existing web services.
- There is not as much control over how the call is build and made. - See more at: https://www.sundoginteractive.com/blog/workflows-and-the-outbound-message-option-in-salesforce#sthash.s2hXFDtF.dpuf


Real Time Example : 

SOAP messages can be sent to external systems using standard workflow with an outbound message action type.  Salesforce makes it absurdly easy to setup the workflow and outbound message, and once the outbound message is created in salesforce you can generate a wsdl that can be used to create the webservice that the outbound message will call.


We’ll setup a putsreq bucket as the “service” and use that as the Endpoint URL in the salesforce outbound message.
Navigate to http://putsreq.com
Select “Create a PutsReq”
In the response builder add the SOAP response for a successful acknowledgement.  This will be the response back to salesforce indicating that the message was received successfully and for salesforce to not retry the message.
Select “Update”
Note the “Your PutsReq URL”, we’ll be using that as the EndPoint URL in the outbound message.

Create the workflow:
Login in to salesforce and navigate to Setup>Create>Workflows & Approvals > Workflow Rules
Select “New Rule” and configure the workflow (I created mine to fire on contact when the email changes)
Don’t forget to activate the workflow when ready.

This may help you :)

All Answers

Onesh ReddyOnesh Reddy
Hi Sakthidasan,

An outbound message is a workflow, approval, or milestone action that sends the information you specify to an endpoint you designate, such as an external service. Outbound messaging is configured in the Salesforce setup menu. Then you must configure the external endpoint. You can create a listener for the messages using the SOAP API. Outbound messages are actions associated with workflow rules, approval processes, or entitlement processes.

Please find more info on outbound messages in the below Links.
https://developer.salesforce.com/docs/atlas.en-us.api.meta/api/sforce_api_om_outboundmessaging.htm
https://help.salesforce.com/HTViewHelpDoc?id=workflow_managing_outbound_messages.htm&language=en_US
https://www.sundoginteractive.com/blog/workflows-and-the-outbound-message-option-in-salesforce

Please let me know if it helps you.

Regards,
Onesh



 
Mahesh DMahesh D
Hi Sakthidasan

Outbound Messaging:

Outbound messaging allows you to specify that changes to fields within Salesforce can cause messages with field values to be sent to designated external servers.

Outbound messaging is part of the workflow rule functionality in Salesforce. Workflow rules watch for specific kinds of field changes and trigger automatic Salesforce actions, such as sending email alerts, creating task records, or sending an outbound message.

User-added image


Please look into below URLs for more information:

https://developer.salesforce.com/docs/atlas.en-us.api.meta/api/sforce_api_om_outboundmessaging.htm

https://developer.salesforce.com/docs/atlas.en-us.api.meta/api/sforce_api_om_outboundmessaging_understanding.htm

http://salesforce.stackexchange.com/questions/28113/real-time-updates-streaming-api-vs-workflow-outbound-messages

http://developer.force.com/cookbook/recipe/sending-outbound-messages-with-workflow

https://www.sundoginteractive.com/blog/workflows-and-the-outbound-message-option-in-salesforce

http://blog.giovannimodica.com/post/salesforce-workflow-outbound-messages-handled-in-net-with-wcf

http://clicksandcode.blogspot.com/2012/01/test-your-workflow-outbound-message.html


Please do let me know if it helps you.

Regards,
Mahesh
Jyothylakshmy P UJyothylakshmy P U
Pros
- The most important pro as this is point and click code. No Apex code must be developed and no unit tests have to be created.
- The message is guaranteed to be delivered in a 24 hour window. This is not a small feature to overlook. To implement this type of guarantee with a callout from Apex takes a lot of extra work and planning
Cons
- The destination end point has to be pretty specifically setup in order for it to accept the contents of the SOAP message being sent. This makes it hard to use with existing web services.
- There is not as much control over how the call is build and made. - See more at: https://www.sundoginteractive.com/blog/workflows-and-the-outbound-message-option-in-salesforce#sthash.s2hXFDtF.dpuf


Real Time Example : 

SOAP messages can be sent to external systems using standard workflow with an outbound message action type.  Salesforce makes it absurdly easy to setup the workflow and outbound message, and once the outbound message is created in salesforce you can generate a wsdl that can be used to create the webservice that the outbound message will call.


We’ll setup a putsreq bucket as the “service” and use that as the Endpoint URL in the salesforce outbound message.
Navigate to http://putsreq.com
Select “Create a PutsReq”
In the response builder add the SOAP response for a successful acknowledgement.  This will be the response back to salesforce indicating that the message was received successfully and for salesforce to not retry the message.
Select “Update”
Note the “Your PutsReq URL”, we’ll be using that as the EndPoint URL in the outbound message.

Create the workflow:
Login in to salesforce and navigate to Setup>Create>Workflows & Approvals > Workflow Rules
Select “New Rule” and configure the workflow (I created mine to fire on contact when the email changes)
Don’t forget to activate the workflow when ready.

This may help you :)
This was selected as the best answer
Pedro Freire 5Pedro Freire 5
Check this blog post http://www.jdope.com/blog/test-salesforce-workflow-outbound-messages-with-putsreq-com/