cplc modules implements a CPL (Call Processing Language) interpreter. Support for uploading/downloading/removing scripts via SIP REGISTER method is present. CPL is an IETF specification detailed in RFC3880 (https://tools.ietf.org/html/rfc3880).
| Parámetro | Tipo | Descripción |
|---|---|---|
| db_url | string | 3.2. db_table (string) 3.3. username_column (string) 3.4. domain_column (string) 3.5. cpl_xml_column (string) 3.6. cpl_bin_column (string) 3.7. cpl_dtd_file (string) 3.8. log_dir (string) 3.9. proxy_r |
| db_table | string | 3.3. username_column (string) 3.4. domain_column (string) 3.5. cpl_xml_column (string) 3.6. cpl_bin_column (string) 3.7. cpl_dtd_file (string) 3.8. log_dir (string) 3.9. proxy_recurse (int) 3.10. prox |
| username_column | string | 3.4. domain_column (string) 3.5. cpl_xml_column (string) 3.6. cpl_bin_column (string) 3.7. cpl_dtd_file (string) 3.8. log_dir (string) 3.9. proxy_recurse (int) 3.10. proxy_route (string) 3.11. case_se |
| domain_column | string | 3.5. cpl_xml_column (string) 3.6. cpl_bin_column (string) 3.7. cpl_dtd_file (string) 3.8. log_dir (string) 3.9. proxy_recurse (int) 3.10. proxy_route (string) 3.11. case_sensitive (int) 3.12. realm_pr |
| cpl_xml_column | string | 3.6. cpl_bin_column (string) 3.7. cpl_dtd_file (string) 3.8. log_dir (string) 3.9. proxy_recurse (int) 3.10. proxy_route (string) 3.11. case_sensitive (int) 3.12. realm_prefix (string) 3.13. timer_avp |
| cpl_bin_column | string | 3.7. cpl_dtd_file (string) 3.8. log_dir (string) 3.9. proxy_recurse (int) 3.10. proxy_route (string) 3.11. case_sensitive (int) 3.12. realm_prefix (string) 3.13. timer_avp (string) 3.14. lookup_domain |
| cpl_dtd_file | string | 3.8. log_dir (string) 3.9. proxy_recurse (int) 3.10. proxy_route (string) 3.11. case_sensitive (int) 3.12. realm_prefix (string) 3.13. timer_avp (string) 3.14. lookup_domain (string) 3.15. lookup_appe |
| log_dir | string | 3.9. proxy_recurse (int) 3.10. proxy_route (string) 3.11. case_sensitive (int) 3.12. realm_prefix (string) 3.13. timer_avp (string) 3.14. lookup_domain (string) 3.15. lookup_append_branches (int) 3.16 |
| proxy_recurse | int | 3.10. proxy_route (string) 3.11. case_sensitive (int) 3.12. realm_prefix (string) 3.13. timer_avp (string) 3.14. lookup_domain (string) 3.15. lookup_append_branches (int) 3.16. use_domain (integer) 3. |
| proxy_route | string | 3.11. case_sensitive (int) 3.12. realm_prefix (string) 3.13. timer_avp (string) 3.14. lookup_domain (string) 3.15. lookup_append_branches (int) 3.16. use_domain (integer) 3.17. redirect_route (string) |
| case_sensitive | int | 3.12. realm_prefix (string) 3.13. timer_avp (string) 3.14. lookup_domain (string) 3.15. lookup_append_branches (int) 3.16. use_domain (integer) 3.17. redirect_route (string) 3.18. ignore3xx (integer) |
| realm_prefix | string | 3.13. timer_avp (string) 3.14. lookup_domain (string) 3.15. lookup_append_branches (int) 3.16. use_domain (integer) 3.17. redirect_route (string) 3.18. ignore3xx (integer) |
| timer_avp | string | 3.14. lookup_domain (string) 3.15. lookup_append_branches (int) 3.16. use_domain (integer) 3.17. redirect_route (string) 3.18. ignore3xx (integer) |
| lookup_domain | string | 3.15. lookup_append_branches (int) 3.16. use_domain (integer) 3.17. redirect_route (string) 3.18. ignore3xx (integer) |
| lookup_append_branches | int | 3.16. use_domain (integer) 3.17. redirect_route (string) 3.18. ignore3xx (integer) |
| use_domain | integer | 3.17. redirect_route (string) 3.18. ignore3xx (integer) |
| redirect_route | string | 3.18. ignore3xx (integer) |
| ignore3xx | integer | 3.1. db_url (string) |
| db_url | string | A SQL URL have to be given to the module for knowing where the database containing the table with CPL scripts is locates. If required a user name and password can be specified for allowing the module |
| db_table | string | Indicates the name of the table that store the CPL scripts. This table must be locate into the database specified by “db_url” parameter. For more about the format of the CPL table please see the modul |
| username_column | string | Indicates the name of the column used for storing the username. |
| domain_column | string | Indicates the name of the column used for storing the domain. |
| cpl_xml_column | string | Indicates the name of the column used for storing the XML version of the cpl script. |
| cpl_bin_column | string | Indicates the name of the column used for storing the binary version of the cpl script (compiled version). |
| cpl_dtd_file | string | Points to the DTD file describing the CPL grammar. The file name may include also the path to the file. This path can be absolute or relative (be careful the path will be relative to the starting dire |
| log_dir | string | Points to a directory where should be created all the log file generated by the LOG CPL node. A log file per user will be created (on demand) having the name username.log. |
| proxy_recurse | int | Tells for how many time is allow to have recurse for PROXY CPL node If it has value 2, when doing proxy, only twice the proxy action will be re-triggered by a redirect response; the third time, the pr |
| proxy_route | string | Before doing proxy (forward), a script route can be executed. This parameter indicates the name of the route called. All modifications made by that route will be reflected only for the current branch. |
| case_sensitive | int | Tells if the username matching should be perform case sensitive or not. Set it to a non zero value to force a case sensitive handling of usernames. |
| realm_prefix | string | Defines a prefix for the domain part which should be ignored in handling users and scripts. |
4.2. cpl_process_register() 4.3. cpl_process_register_norpl()
4.3. cpl_process_register_norpl()
4.1. cpl_run_script(type, mode[, uri])
Starts the execution of the CPL script. The user name is fetched from new_uri or requested uri or from To header -in this order- (for incoming execution) or from FROM header (for outgoing execution). Regarding the stateful/stateless message processin
This function MUST be called only for REGISTER requests. It checks if the current REGISTER request is related or not with CPL script upload/download/ remove. If it is, all the needed operation will be done. For checking if the REGISTER is CPL related
Same as “cpl_process_register” without internally generating the reply. All information (script) is appended to the reply but without sending it out.
Copyright © 2003 FhG FOKUS
Copyright © 2021 MomentTech