[OpenSIPS-Devel] [OpenSIPS/opensips] 3a2489: freeswitch: Implement the fs_esl() API command

Liviu Chircu liviu at opensips.org
Wed Dec 13 12:24:00 EST 2017


  Branch: refs/heads/feature/freeswitch-extended-integration
  Home:   https://github.com/OpenSIPS/opensips
  Commit: 3a24892f8f84a4e8c62e185151fa82f23f64fc8b
      https://github.com/OpenSIPS/opensips/commit/3a24892f8f84a4e8c62e185151fa82f23f64fc8b
  Author: Liviu Chircu <liviu at opensips.org>
  Date:   2017-12-13 (Wed, 13 Dec 2017)

  Changed paths:
    M modules/freeswitch/fs_api.c
    M modules/freeswitch/fs_api.h
    M modules/freeswitch/fs_ipc.c
    M modules/freeswitch/fs_ipc.h
    M modules/freeswitch/fs_mod.c
    M modules/freeswitch/fs_proc.c

  Log Message:
  -----------
  freeswitch: Implement the fs_esl() API command

This API call allows execution of an arbitrary FreeSWITCH ESL command on
an arbitrary FS interface. It has the following flow:
    1. script worker
	- calls freeswitch_esl(), hence api->fs_esl()
	- fires an IPC job to the FS connection manager
	- busy-waits for an SHM response (with sleep())

    2. FS connection manager
	- receives the IPC job, runs the ESL command
	- places the reponse in SHM for the worker to find

    3. script worker
	- finds the corresponding response, stores it in the output
	  pvar (if provided) and resumes the OpenSIPS script




More information about the Devel mailing list