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

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

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

Liviu Chircu
  Branch: refs/heads/feature/freeswitch-extended-integration
  Home:   https://github.com/OpenSIPS/opensips
  Commit: 3a24892f8f84a4e8c62e185151fa82f23f64fc8b
  Author: Liviu Chircu <[hidden email]>
  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

Devel mailing list
[hidden email]