Dingtalk: How to Realize System Interoperability in the Self-Built Scenario of Enterprises

Table of contents
1. Introduction to connection flow
2. How to create a connection flow by yourself
Third, the connection flow expansion
4. Q&A

1. Introduction to connection flow
The role of connection flow
case scenario
Apply for a reimbursement form through DingTalk OA approval, and then push the reimbursement form data to the enterprise group, and synchronize it to Pinbangbang and the internal system of the enterprise. The whole process involves the official application of DingTalk, the ecological three-party application and the internal application of the enterprise.
image.png
traditional way
To implement it using coding, it is necessary to have a good understanding of each input and output parameter of each node, and each API interface. At the same time, a server is required to deploy this data flow service, and the process is very complicated.
Use connection flow operation: create a simple connection flow on the connection platform (see the figure below), and only need to connect each node to realize data flow:
image.png

The data connection of the three systems can be completed without code development;
Able to connect DingTalk official/ecological tripartite applications with the internal system of the enterprise;
The above process supports reverse triggering, for example, it is initiated by the internal system of the enterprise, and then automatically creates a DingTalk/Pinbangbang reimbursement form, and then pushes the DingTalk message;
Development costs can be greatly reduced by connecting streams.
The concept of connection flow
The connection platform is divided into two parts: connector and connection flow;
Connectors include trigger events and perform actions;
The connection flow is a process orchestration service that takes the "trigger event" of the connector as the input and the "execution action" as the output, so as to realize the data exchange between applications;
At the same time, the connection flow supports logical judgment, completes the business logic of different nodes, selects different execution actions, etc. according to the different output parameters of upstream nodes.
image.png
Features of connection flow
Visual drag and drop to complete the process arrangement;
Support custom actions, network requests, logical branches, etc.;
Support expressions to complete some complex logical judgment/model conversion;
It can open up the data flow between Dingding-triple-enterprise.
image.png
Connection flow usage scenarios
The connection flow is the core bridge to realize the interconnection and intercommunication of DingTalk official, tripartite ecology, and internal application data of the enterprise.
image.png

2. How to create a connection flow by yourself
Create connection flow
Operation path: DingTalk Open Platform-->Open Capability-->Connect Platform-->Connect Flow-->Create Flow
image.png

stream editing
Click OK on the Create Flow page to enter the flow editing interface;
Operation path: select connection flow-->details-->connection flow;
Stream editing is to connect each node in series. The first node is the trigger event, such as: meeting room reservation, suitable form update, and the next node is the execution action, such as: synchronizing data to group chat, etc.
image.png

Typical scene
Scenario 1: Official App Interworking
[Case] ​​Send robot notification after meeting room reservation
The two official DingTalk applications involved in this case: Smart Meeting Room and Robot Messaging, are connected to each other through connection flows.
image.png

Steps:
Step 1: Create a meeting room
Go to the OA approval page, find "Smart Meeting Room" and click to enter;
image.png
Click Add Meeting to enter the setting page, fill in key information such as name, number of people, description and click Save;
image.png
The conference room is created;
image.png
Step 2: Add the bot
Go to the group settings on the group chat page, click the intelligent group assistant to enter the robot management page, and select "Add robot";
image.png
Select "Custom", click "Add", fill in the name, keywords and other information, and click "Finish";
image.png
The robot is added;
Step 3: Create a connection flow
Enter the Open Platform, click Open Capability - Connect Platform in turn, enter the Connect Platform page;
Click the connection flow on the left, and then click "Create flow";
image.png
Fill in the name and description, select the business flow, and click OK;
image.png
Set the trigger event and select the smart meeting room - meeting room scheduled event;
image.png
Set the execution action and select the robot under Official;
image.png
Execute the action and select the "Send markdown" message, and set the input title, body, and accessToken as the input parameters, and the title must contain the keyword "conference room";
image.png
Switch to the robot management page in the group chat to obtain accessToken, and select the robot you just created;
image.png
Copy the webhook connection and paste it into the chat box, copy the part after the access_token;
image.png
Switch back to the connection flow interface, select a fixed value and paste the token into the value box, click OK and save;
image.png
Publish the connection flow, and the connection flow is created;
image.png
Step 4: Effect Display
Enter the group chat and search for "smart conference room" in the search box;
image.png
Select the newly created meeting room and select the time to book;
image.png
After the reservation is successful, a robot will send a message to the group chat;
image.png
Scenario 2: Internal Application-Official Application Interworking
[Case] ​​The enterprise alarm information is sent to the group through the robot
In this case, the enterprise order payment timeout alarm notification is sent to the DingTalk group chat through the robot. The order payment timeout alarm is an internal application of the enterprise, and the robot is a DingTalk application, and the two applications are communicated through the connection flow.
image.png

Steps:
Step 1: Create the connector
Enter the connection platform, select "Connector" on the left, and click "Create Connector";
image.png
Enter the necessary information such as name, connection, authentication, etc., and then click "OK";
image.png
Select the connector you just created, select "Trigger Event", and click "Create Trigger Event";
image.png
Set trigger event:

Fill in the basic information;
image.png
Model configuration, add a message field;
image.png

The connector is created;
Step 2: Create a connection flow
Enter the connection flow page, click "Create Flow", fill in the name and description and select "Business Flow";
image.png
Set the trigger event, and select the "Message Alert Notification" event of the newly created self-built connector "Enterprise Alert Notification";
image.png
Set the execution action and select the robot under Official;
image.png
Execute the action and select the "Send markdown" message, and enter important information such as title, body, Token, etc. in the parameter settings, among which AccessToken reuses the conference room reservation notification robot;
image.png
Click OK and publish the connection flow, and the connection flow is created.
The third step: effect display
Select the connector you just created in "My Connectors";
image.png
Select the trigger event and copy the Webhook connection;
image.png
Simulate internal application calls through ApiPost, paste the Webhook into the request address bar, enter the necessary message fields and click "Send";
image.png
Switch back to the group chat page and see the alert notification sent by the robot;
image.png
Scenario 3: Three-party application-internal application interworking
[Case] ​​Pinbangbang new customers are synchronized to the internal system of the enterprise
Pinbangbang CRM has new customers and needs to synchronize customer data to the internal application of the enterprise. In this case, the third-party application Pinbangbang communicates with the internal application of the enterprise through the connection flow, and completes the business logic processing.
image.png

Steps:
Step 1: Create a connection flow
Enter the connection platform, click "Create Stream" and fill in the relevant information;
image.png
Trigger the event to select "pinbangbang" - "add customer";
image.png
Delete the default execution action, add "Network Request", fill in the network request information of the business system, select the required business fields, save and publish the connection flow;
image.png
The connection flow is created.
The second step: effect display
Enter the Pinbangbang customer management page, and click "New";
image.png
Fill in the customer information and save it;
image.png
Switch to the business system, wait for the breakpoint to be triggered, and you can see that the data of Pinbangbang has been synchronized to the business system.
image.png
Third, the connection flow expansion
Extension 1: Integration Flow
Operation path
Open Capability-->Connect Platform-->Connect Flow-->Create Flow-->Select Integration Flow
image.png

Integration Flow vs Business Flow
The integration flow is used by integration in the business, and requires input and output parameters without triggering events;
The business flow can refer to the integration flow by referring to the sub-function in the node, so that the logic of the common flow can be precipitated into the integrated flow and introduced into the related business flow to reduce the orchestration of the flow and create convenience for the development of the business flow;
image.png

Extension 2: Three-way stream
Three-way streams are already configured streams that can be selected and installed for use in the Connected Streaming Marketplace of Connected Platforms.
image.png

Expansion Three: Expressions
Operation path
Stream Editing-->Select Node-->Input Parameter Mapping;
When setting the execution action, it is necessary to set the input and output parameters of each node, and the input parameters of the downstream node come from the output parameters of the upstream node, which is usually operated by dragging and dropping;
image.png
However, when some complex scenes cannot directly connect the input and output parameters, expressions need to be used;
Expression is an important data mapping service in connection flow. It completes data conversion between complex models by providing various functions to realize complex logical conversion and node association.
image.png
4. Q&A
Q: What is the relationship between the connection flow and the connector?
Our DingTalk connection platform mainly has two parts, one is the connector and the other is the connection flow. Connectors are mainly composed of some simple actions or trigger events. Then connect the flow and each node in it needs to be taken from the connector. For example, to get a trigger event in the connector, to get a practical action from the connector, and so on. In addition to taking out execution actions and trigger events from the connector, the connection flow also supports some of its own such as logical nodes or gateway nodes like some self-defined webbooks.

Q: If our connection flow does not pass the request, how should we troubleshoot it?
If we have no connection flow, please check it, then we have two troubleshooting methods. The first way to check is that we can see an execution record of your connection flow in an execution record of the entire connection platform, and we can see an exception of each node, and then check according to the exception. If you still can't find it, it is recommended to add one of our groups, then attach some of your execution, such as some TraceId, to us in the co-creation group, and then we have technical staff to help you check together .

Q: What are some differences between the DingTalk connection platform and a connector factory that should be built?
If we connect the platform with Dingding, it is an independent platform, and you can use it to connect some connectors of two or three parties to implement some of your required logic. Then, if it is a suitable connector factory, it is actually tied to our DingTalk connection platform. That is to say, in our ability to package our connectors in their platform, we can directly transfer the ability to our connectors in Yida. In this case, the two are not in conflict.

Q: Are there any charges for connection flows and some more advanced functions? Are we planning any new functions for some connection flows in the future?
If the connection to the stream is temporary, there is no charge, that is, all functions are free. However, if you want to use the capabilities of some of the professional version materials in these OA approvals, you may need to pay for the DingTalk professional version, and then you can enjoy some advanced features of OA approval. Then it is related to the connector, and then some new features are that our connection flow is currently able to support the connection flow between our enterprises and the integration flow like ours and the gateway like ours. A stream of side apas, this stream has not been fully opened to the outside world, and will be opened to the outside world in the future, that is, we can integrate the capabilities of our connectors into your business system. For example, I have a lot of execution actions, but it is not convenient for me to create one in the connector. Then at this time, we can call one of your interfaces and get some execution actions of which connectors you have from your interface. In this way, you can get more functions related to your business in the connector.

Q: Does the connection flow trigger event support a quick one-by-one debugging?
This is supported. At present, if we want to call the connection flow, we generally need to call the trigger event to further find its associated connection flow for a trigger. So the entry is a trigger event, and then there are two ways to call the trigger event: the first way is through the open API of the switch platform, you can find the relevant interface from the document and get it, for example, get the token and so on. Some parameters are given to us to help you call, which is relatively troublesome. Another is the ability to debug. That is, our trigger event supports webhook. On the management page of the trigger event, find the webhook address and copy it, and then you can request it directly. A debugging operation can be carried out very easily.

Q: Can we configure multiple connectors for one application system?
An application system can be configured with multiple connectors. This is possible.

Q: Does a use of connection flow require writing code or deploying a server?
One operation of the entire connector does not require writing code and deploying the server, that is, if we just mentioned above, we only need to do some related things in our entire connection platform, such as creating a connector, and then trigger the trigger in the connector. A combination of events and execution actions can complete the relevant business logic. At the same time, since it does not need to write code, it does not need to find a dedicated server for deployment. Click to publish the entire connection flow directly on our connection platform and you can use it.

Q: Can the connection flow actively call an API of the internal system of the enterprise?
This is supported. That is, if you connect to the internal API of the flow adjustment enterprise, it belongs to the one just mentioned, that is, the internal enterprise
A data exchange between applications. Then in the connection flow, you can have two ways, the first way you build a connector,
In the execution action of the connector, bind to your internal system through http request. Then the second way,
You can directly select a gateway node in the connection flow, and then use the gateway to adjust the API within your enterprise. Then, in this way, for example, if your upstream is from our official application, then it is quite So the official data is imported into your internal application. If my upstream comes from a third-party application, then we will import the data of the ecological application into your internal application.

Q: Does our connector have such an online setting?
There is currently no online setting. Of course, the call to the connector that only fires the event is a bit limited. That is, you can't call my trigger event frequently. This one has some simple current limiting operations.

Q: Do we need to create a connector in Dingding for some execution events of each of our functions in the self-developed system?
If you say that you have a lot of execution events, you can consider that what I just said is that we have not fully opened up our capabilities.
That is, we can get it from your system. Which execution events do you have, and then a related one is triggered.

Q: Can the address of the trigger's webhook be directly configured for use in the enterprise business system or can it only be used for debugging?
You can use it directly without much problem. But it is better to suggest that you call it through openapi. That way we can get you some more identities across our open platform. In terms of identity data, we call directly, such as performing some authentication operations
Q: How do I know the types and descriptions of some tremors required to perform actions?
To execute an action, we can find the relevant connector in the connector market, and then find him to execute the action. Generally speaking, there will be a detailed description after the execution of the action. A document link will be attached to the description, or if you click the document link, you will be able to know some input parameters required for this action, the type of each input parameter, and where he gets the data of this input parameter, etc.

Related Articles

Explore More Special Offers

  1. Short Message Service(SMS) & Mail Service

    50,000 email package starts as low as USD 1.99, 120 short messages start at only USD 1.00

phone Contact Us