欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【Knowledge】Salesforce 与 Backlog 的统合

程序员文章站 2022-05-19 13:38:55
...

概要

通过 Baklog 的 Webhook 和 salesforce 的 web site 机制,实现 backlog的课题同期到salesforce。
Backlog的课题创建后自动与salesforce同期

流程

  • 申请 我的域名
  • 创建 site
  • 自作与backlog同期之后的动作类(比如,新增课题等)
  • 创建 custom url
  • 设置对自作类的访问权限
  • 在backlog中设置webhook https://<サイトURL>/services/apexrest/

申请域名

【Knowledge】Salesforce 与 Backlog 的统合

创建site

【Knowledge】Salesforce 与 Backlog 的统合

自作类

public with sharing class BacklogParameter {
  public Project project ;
  public Content content ;

  public class Project{
    public String projectKey ;
  }

  public class Content {
    public String summary ;
    public String key_id ;
    public String description ;
    public Status status ;
  }

  public class Status {
    public String name ;
    public String id ;
  }
}

@RestResource(urlMapping='/put_issues')
global with sharing class BacklogAPI
{
  @HttpPost
  global static ID doPost(){
      RestRequest req = RestContext.request;
      BacklogParameter params = (BacklogParameter)JSON.deserialize(req.requestBody.ToString(),BacklogParameter.class);

      Issue__c issue          = new Issue__c();
      issue.Name               = params.project.projectKey + '-' + params.content.key_id ;
      issue.summary__c         = params.content.summary ;
      issue.description__c     = params.content.description ;
      issue.status__c          = params.content.status.name ;

      insert issue;
      return issue.Id;
  }
}

创建custom URL

【Knowledge】Salesforce 与 Backlog 的统合

设置对自作类的访问控制

【Knowledge】Salesforce 与 Backlog 的统合
【Knowledge】Salesforce 与 Backlog 的统合

在backlog中设置webhook

【Knowledge】Salesforce 与 Backlog 的统合

测试

新建课题
【Knowledge】Salesforce 与 Backlog 的统合
salesforce结果确认
【Knowledge】Salesforce 与 Backlog 的统合