Using Yate's PHP library on windows

From Yate Documentation
Jump to: navigation, search

Test an existing PHP script on Windows.
By default Yate communicates through pipes with any script, but in Windows this is not possible, so a listener in external module must be configured to connect to a TCP socket.

Contents

Install PHP

Download and install the latest PHP version package from http://www.php.net/downloads.php. I suggest the self installer mirror.
Run the installer and don't forget to add the socket extensions (needed to connect to Yate via TCP).

Setup a listener

Add the following section to extmodule.conf (the word after "listener" will become the module name)

extmodule.conf

[listener test]
type=tcp
addr=0.0.0.0
port=5039
role=global

Modify provided example php files

These are found under <yatehome>\share\scripts. Let's open test.php and modify it as following:
change line 34 from

Yate::Init();

to

Yate::Init(true, "localhost", 5039, "");

(init without parameters uses unix sockets to connect - in windows you have to use TCP)

Test the installation

  • Restart yate
  • Execute php test.php
  • connect to yate in telnet and type "external". Output should be:
external                                                                                          
1. test 

raise debug level (debug on) and you should be able to see timer messages.

PHP Message: engine.timer id: 0xb636e144.347529168                                                
PHP Message: engine.timer id: 0xb636e144.964829973                                                
PHP Message: engine.timer id: 0xb636e144.38930286
................................


See also

Personal tools
Namespaces

Variants
Actions
Preface
Configuration
Administrators
Developers