Fx.message

Fx.message:和发送消息有关的API

1. 发送文本消息

Fx.message.send(<String textMessage>, <List receiverIds>, <Channel channel>)

参数说明

参数 类型 说明
textMessage String 文本消息
receiverIds List 接收人id列表
channel Channel 消息通道

返回值类型

APIResult

返回值说明

String

Java举例

Channel channel = Channel.Service("FSAID_bebd374");
List receiverIds = Lists.newArrayList(1000); //消息接收用户
APIResult ret = Fx.message.send("这是一条文本消息",receiverIds,channel);

Groovy举例

Channel channel = Channel.Service("FSAID_bebd374")
List receiverIds = [1000] //消息接收用户
def (error,date,errorMessage) = Fx.message.send("这是一条文本消息",receiverIds,channel)
(1).参考Channel

2. 发送卡片消息

Fx.message.send(<Card card>, <List receiverIds>, <Channel channel>)

参数说明

参数 类型 说明
card Card 卡片消息
receiverIds List 接收人id列表
channel Channel 消息通道

返回值类型

APIResult

返回值说明

String

Java举例

Card.Head head = Card.Head.create();
head.setTitle("head title");                     //卡片标题(必填)

Card.Body body = Card.Body.create();
body.setContent("body content");                 //卡片内容(必填)
body.setEntries(Maps.of("a", 1));                //卡片表格(可选)

Card.Foot foot = Card.Foot.create();
foot.setTitle("foot title");                     //卡片底部(必填)

ObjectCard.Builder builder = ObjectCard.Builder.create();
builder.setHead(head);
builder.setBody(body);
builder.setFoot(foot);
builder.setObjectApiName("AccountObj");          //跳转对象的APIName(必填)
builder.setObjectId("5cbd28e47cfed9ea0cca09e4"); //跳转对象的id(必填)

Groovy举例

def card = ObjectCard.builder {
  head {
    title = "head title" //卡片标题(必填)
  }
  foot {
    title = "foot title" //卡片底部(必填)
  }
  body {
    content = "body content" //卡片内容(必填)
    entries = [key: "value"] //卡片表格(可选)
  }
  objectApiName = "AccountObj" //跳转对象的APIName(必填)
  objectId = "5cbd28e47cfed9ea0cca09e4" //跳转对象的id(必填)
}
Channel channel = Channel.Service("DSTX")
List receiverIds = [1000]
def (error,date,errorMessage) = Fx.message.send(card,receiverIds,channel)

3. 发送CRM通知

Fx.message.sendNotice(<String title>, <String content>, <List receiverIds>, <Notice notice>)

参数说明

参数 类型 说明
title String CRM通知标题
content String CRM通知内容
receiverIds List 接收人id列表
notice Notice 通知的类型,现有:
defaultNotice:普通通知,Notice notice = Notice.defaultNotice()
objectNotice:带对象详情页链接的crm通知,需要传对象的apiName和数据Id ,Notice notice = Notice.objectNotice(String apiName, String dataId)

返回值类型

APIResult

返回值说明

String

Java举例

List receiverIds = Lists.newArrayList("1000", "1001");
Notice objectNotify = Notice.objectNotice("AccountObj", "5fa4de2f832a9d00012868b8");
final APIResult ret = Fx.message.sendNotice("这也是一个标题", "这个是提醒的内容", receiverIds, objectNotify);
if (ret.isError()) {
    log.info(ret.message());
} else {
    log.info(ret.getData());
}

Groovy举例

List receiverIds = ['1000', '1001']
Notice objectNotify = Notice.objectNotice("AccountObj","5fa4de2f832a9d00012868b8")
def (Boolean error, String data, String errorMessage) = Fx.message.sendNotice("这也是一个标题","这个是提醒的内容",receiverIds, objectNotify)
if (error) {
log.info(errorMessage)
} else {
log.info(data)
}

4. 抛出异常信息

Fx.message.throwErrorMessage(<String errorMessage>)

参数说明

参数 类型 说明
errorMessage String 异常信息

返回值类型

void

Java举例

Fx.message.throwErrorMessage(" 函数异常 ");

Groovy举例

Fx.message.throwErrorMessage(" 函数异常 ")

5. 创建企信业务群

Fx.message.createTrustGroup(<String apiName>, <String dataId>)

参数说明

参数 类型 说明
apiName String 对象apiName
dataId String 对象数据Id

返回值类型

APIResult

返回值说明

Map (sessionId: 业务群Id, name: 业务群名)

Java举例

APIResult ret = Fx.message.createTrustGroup("object_94QeC__c", "5dae6f48a5083da25946e68c");
if (ret.isError()) {
    log.info(ret.message());
} else {
    log.info(ret.getData());
}

Groovy举例

def (Boolean error, Map data, String errorMessage) = Fx.message.createTrustGroup('object_94QeC__c', '5dae6f48a5083da25946e68c')
if(error) {
    log.info(errorMessage)
} else {
    log.info(data)
}

注意事项

  • 使用该函数时需到管理后台的企信管理中开启该对象的业务群功能并做好相关配置

6. 发送邮件

Fx.message.sendEmail(<List toList>, <String subject>, <String content>, <boolean useSystemSend>)

参数说明

参数 类型 说明
toList List 接收人邮箱列表
subject String 邮箱题目
content String 邮箱正文
useSystemSend boolean 是否用系统身份发送(true 会取当前身份发送,如果取不到当前身份默认使用系统发送)

返回值类型

APIResult

返回值说明

Java举例

List toList = Lists.newArrayList("xiexd@fxiaoke.com");
String subject = "自定义函数发件_主题";
String content = "自定义函数发件_正文";
APIResult ret = Fx.message.sendEmail(toList, subject, content, true);

Groovy举例

List toList = ["xiexd@fxiaoke.com"]
String subject = "自定义函数发件_主题"
String content = "自定义函数发件_正文"
def ret = Fx.message.sendEmail(toList, subject, content, true)

7. 发送邮件,支持抄送和密送

Fx.message.sendEmail(<EmailAttribute attribute>)

参数说明

参数 类型 说明
attribute EmailAttribute 邮件相关信息

返回值类型

APIResult

返回值说明

Groovy举例

List toList = ["liumh8848@fxiao.com"]
String subject = "自定义函数发件_主题112"
String content = "自定义函数发件_正文112"
List ccList = ["xiexd@fxiaoke.com"]
List bccList = []
boolean useSystemSend = true

EmailAttribute attribute = EmailAttribute.builder()
  .toList(toList)
  .ccList(ccList)
  .bccList(bccList)
  .subject(subject)
  .content(content)
  .useSystemSend(useSystemSend)
  .build();
log.info(attribute)
def ret = Fx.message.sendEmail(attribute)
log.info(ret)
(1).参考EmailAttribute

8. 使用邮件模板和数据发送邮件

Fx.message.sendEmailByTemplate(<String templateId>, <String objectId>, <List toList>, <boolean useSystemSend>)

参数说明

参数 类型 说明
templateId String 模板id
objectId String 对象数据id
toList List 接收人邮箱列表
useSystemSend boolean 是否使用系统邮箱

返回值类型

APIResult

返回值说明

Java举例

APIResult ret = Fx.message.sendEmailByTemplate("6142e00f16bd944a7c878b77", "609ce6c2131e59000172ecfb", Lists.newArrayList("xiexd@fxiaoke.com"), true);

Groovy举例

def ret = Fx.message.sendEmailByTemplate("6142e00f16bd944a7c878b77", "609ce6c2131e59000172ecfb", ["xiexd@fxiaoke.com"], true)

9. 使用邮件模板和数据发送邮件,,支持抄送和密送

Fx.message.sendEmailByTemplate(<EmailAttribute attribute>)

参数说明

参数 类型 说明
attribute EmailAttribute 邮件相关信息

返回值类型

APIResult

返回值说明

Groovy举例

List toList = ["liumh8848@fxiao.com"]
List ccList = ["xiexd@fxiaoke.com"]
List bccList = []
boolean useSystemSend = true

EmailAttribute attribute = EmailAttribute.builder()
  .toList(toList)
  .ccList(ccList)
  .bccList(bccList)
  .templateId("6142e00f16bd944a7c878b77")
  .objectId("609ce6c2131e59000172ecfb")
  .useSystemSend(useSystemSend)
  .build();

def ret = Fx.message.sendEmailByTemplate(attribute)
log.info(ret)

参考类 com.fxiaoke.functions.model.Channel

1. 企信服务号通道

Channel.Service(<String appId>)

参数说明

参数 类型 说明
appId String 服务号的appId

返回值类型

Channel

返回值说明

Channel

Java举例

Channel channel = Channel.Service("appiD"); //发送服务号

Groovy举例:

Channel channel = Channel.Service("appiD") //发送服务号

参考类 com.fxiaoke.functions.model.EmailAttribute

字段说明

参数 类型 说明
toList List 接收人邮箱列表
ccList List 抄送邮箱列表
bccList List 密送邮箱列表
subject String 邮箱题目
content String 邮箱正文
useSystemSend Boolean 是否用系统身份发送(true 会取当前身份发送,如果取不到当前身份默认使用系统发送),默认为true
templateId String 模板id
objectId String 对象数据id

results matching ""

    No results matching ""