Package com.bytedesk.call.esl
Class EslController
java.lang.Object
com.bytedesk.call.esl.EslController
@RestController
@RequestMapping("/freeswitch/api/v1/esl")
@ConditionalOnProperty(prefix="bytedesk.call.freeswitch",
name="enabled",
havingValue="true",
matchIfMissing=false)
public class EslController
extends Object
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classstatic classstatic classstatic classstatic classstatic classstatic classstatic classstatic class -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.springframework.http.ResponseEntity<JsonResult<?>>api(@Valid EslController.ApiRequest req) 通用同步 API(等同 fs_cli 中的 api 命令)CompletableFuture<org.springframework.http.ResponseEntity<JsonResult<?>>>bgapi(@Valid EslController.ApiRequest req) 通用异步 BGAPI(返回 BACKGROUND_JOB 事件数据)org.springframework.http.ResponseEntity<JsonResult<?>>org.springframework.http.ResponseEntity<JsonResult<?>>conference(@Valid EslController.ConferenceRequest req) conference 子命令统一入口org.springframework.http.ResponseEntity<JsonResult<?>>originate(@Valid EslController.OriginateRequest req) 直接透传 originate 参数串org.springframework.http.ResponseEntity<JsonResult<?>>触发 reloadacl(重载 ACL)org.springframework.http.ResponseEntity<JsonResult<?>>触发 reloadxml(重载 XML 配置与拨号计划)org.springframework.http.ResponseEntity<JsonResult<?>>org.springframework.http.ResponseEntity<JsonResult<?>>show 系列查询(channels/calls/registrations 等)org.springframework.http.ResponseEntity<JsonResult<?>>sofiaProfile(String profile, String action) 对指定 profile 执行动作(rescan/restart/start/stop)org.springframework.http.ResponseEntity<JsonResult<?>>获取 sofia 总览状态org.springframework.http.ResponseEntity<JsonResult<?>>status()FreeSWITCH 运行状态org.springframework.http.ResponseEntity<JsonResult<?>>uuidAnswer(String uuid) 应答通道org.springframework.http.ResponseEntity<JsonResult<?>>uuidBridge(@Valid EslController.UuidBridgeRequest req) 桥接两个通道org.springframework.http.ResponseEntity<JsonResult<?>>uuidBroadcast(@Valid EslController.UuidBroadcastRequest req) 向通道注入播放(广播)org.springframework.http.ResponseEntity<JsonResult<?>>uuidGetVar(String uuid, String var) 获取通道变量org.springframework.http.ResponseEntity<JsonResult<?>>挂断通道(可带 hangup cause)org.springframework.http.ResponseEntity<JsonResult<?>>uuidRecord(@Valid EslController.UuidRecordRequest req) 控制通道录音org.springframework.http.ResponseEntity<JsonResult<?>>uuidSendDtmf(@Valid EslController.UuidDtmfRequest req) 发送 DTMForg.springframework.http.ResponseEntity<JsonResult<?>>uuidSetVar(@Valid EslController.UuidVarRequest req) 设置通道变量org.springframework.http.ResponseEntity<JsonResult<?>>uuidTransfer(@Valid EslController.UuidTransferRequest req) 转接通道org.springframework.http.ResponseEntity<JsonResult<?>>刷新 XML 缓存(配合 mod_xml_curl)
-
Field Details
-
eslService
-
-
Constructor Details
-
EslController
-
-
Method Details
-
status
FreeSWITCH 运行状态 -
api
@PostMapping("/api") public org.springframework.http.ResponseEntity<JsonResult<?>> api(@RequestBody @Valid @Valid EslController.ApiRequest req) 通用同步 API(等同 fs_cli 中的 api 命令) -
bgapi
@PostMapping("/bgapi") public CompletableFuture<org.springframework.http.ResponseEntity<JsonResult<?>>> bgapi(@RequestBody @Valid @Valid EslController.ApiRequest req) 通用异步 BGAPI(返回 BACKGROUND_JOB 事件数据) -
reloadxml
@PostMapping("/reloadxml") public org.springframework.http.ResponseEntity<JsonResult<?>> reloadxml()触发 reloadxml(重载 XML 配置与拨号计划) -
reloadacl
@PostMapping("/reloadacl") public org.springframework.http.ResponseEntity<JsonResult<?>> reloadacl()触发 reloadacl(重载 ACL) -
xmlFlushCache
@PostMapping("/xml_flush_cache") public org.springframework.http.ResponseEntity<JsonResult<?>> xmlFlushCache()刷新 XML 缓存(配合 mod_xml_curl) -
show
@GetMapping("/show/{what}") public org.springframework.http.ResponseEntity<JsonResult<?>> show(@PathVariable String what) show 系列查询(channels/calls/registrations 等) -
sofiaStatus
@GetMapping("/sofia/status") public org.springframework.http.ResponseEntity<JsonResult<?>> sofiaStatus()获取 sofia 总览状态 -
sofiaProfile
@PostMapping("/sofia/profile/{profile}/{action}") public org.springframework.http.ResponseEntity<JsonResult<?>> sofiaProfile(@PathVariable String profile, @PathVariable String action) 对指定 profile 执行动作(rescan/restart/start/stop) -
originate
@PostMapping("/originate") public org.springframework.http.ResponseEntity<JsonResult<?>> originate(@RequestBody @Valid @Valid EslController.OriginateRequest req) 直接透传 originate 参数串 -
uuidAnswer
@PostMapping("/uuid/answer/{uuid}") public org.springframework.http.ResponseEntity<JsonResult<?>> uuidAnswer(@PathVariable String uuid) 应答通道 -
uuidKill
@PostMapping("/uuid/kill/{uuid}") public org.springframework.http.ResponseEntity<JsonResult<?>> uuidKill(@PathVariable String uuid, @RequestParam(required=false) String cause) 挂断通道(可带 hangup cause) -
uuidTransfer
@PostMapping("/uuid/transfer") public org.springframework.http.ResponseEntity<JsonResult<?>> uuidTransfer(@RequestBody @Valid @Valid EslController.UuidTransferRequest req) 转接通道 -
uuidBridge
@PostMapping("/uuid/bridge") public org.springframework.http.ResponseEntity<JsonResult<?>> uuidBridge(@RequestBody @Valid @Valid EslController.UuidBridgeRequest req) 桥接两个通道 -
uuidBroadcast
@PostMapping("/uuid/broadcast") public org.springframework.http.ResponseEntity<JsonResult<?>> uuidBroadcast(@RequestBody @Valid @Valid EslController.UuidBroadcastRequest req) 向通道注入播放(广播) -
uuidRecord
@PostMapping("/uuid/record") public org.springframework.http.ResponseEntity<JsonResult<?>> uuidRecord(@RequestBody @Valid @Valid EslController.UuidRecordRequest req) 控制通道录音 -
uuidSetVar
@PostMapping("/uuid/setvar") public org.springframework.http.ResponseEntity<JsonResult<?>> uuidSetVar(@RequestBody @Valid @Valid EslController.UuidVarRequest req) 设置通道变量 -
uuidGetVar
@GetMapping("/uuid/getvar") public org.springframework.http.ResponseEntity<JsonResult<?>> uuidGetVar(@RequestParam String uuid, @RequestParam String var) 获取通道变量 -
uuidSendDtmf
@PostMapping("/uuid/dtmf") public org.springframework.http.ResponseEntity<JsonResult<?>> uuidSendDtmf(@RequestBody @Valid @Valid EslController.UuidDtmfRequest req) 发送 DTMF -
conference
@PostMapping("/conference") public org.springframework.http.ResponseEntity<JsonResult<?>> conference(@RequestBody @Valid @Valid EslController.ConferenceRequest req) conference 子命令统一入口 -
setLogLevel
@PostMapping("/log/level/{level}") public org.springframework.http.ResponseEntity<JsonResult<?>> setLogLevel(@PathVariable IModEslApi.LoggingLevel level) -
cancelLogLevel
@PostMapping("/log/cancel") public org.springframework.http.ResponseEntity<JsonResult<?>> cancelLogLevel()
-