Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - asymetrixs

Pages: 1 2 [3] 4
31
Please describe in more detail what you want to do.

Maybe like

User A created in DB
User B calls User A
... etc. with information about what exactly should happen in the steps

A call will be disconnected when "timeout" is specified which tells yate how long a call may last.

32
Features requests / SQL query queue status / queue flush
« on: March 11, 2013, 12:47:22 PM »
Hi all,

as far as I know yate knows to ways of sending queries to the database, "enqueue" and "dispatch".

"enqueue" puts the SQL query into a queue and runs it as soon as it has free resources to do so. This can lead to a growing queue under very heavy load and maybe some queries get fired long time after they were enqueued.

"dispatch" runs the SQL query synchronously against the database and waits for the result to return. This is for example used in preroute and route where it is needed because yate routes depending on the value it retrieves from DB.

What I'd like to see as feature are two things:

1) At no time there is a way (or at least I do not know any) to see how many SQL queries are currently enqueued. 'status pgsqldb' should also display the amount of enqueued SQL statements so that one know, if there are still queries that need to be run. The reason is as follows: We saw that a yate server that retrieves more calls than it can handle performs the "dispatched" queries, but may forget to run some of the "enqueued" queries (like CDR query, we found lot's of CDR records that were not updated even though they were quite old and the call was terminated). This would give the user at least the chance to see how the queue is used and if there are queries pending.

2) Referring to 1) even if the server load decreases to a normal level, some SQLs may have get lost OR are pending for infinitive time. Therefore it would be nice to see a command like 'database pgsqldb flush' that causes yate to cleanup the queue and force running the enqueued queries against the database. This would be to solve the case where enqueued SQL queries are pending and not performed by yate automatically. We hade the issue that the server did not run the queries and we could not see if there are queries in the queue (mentioned in 1)) nor could we force yate to empty the queue and run all queries (referring to 2)).

What do you think?


33
Other Yate server issues / Re: Yate + MySQL connection
« on: February 18, 2013, 04:10:15 PM »
1) disable pgsqldb.yate if you do not need it
2) check that in register.conf in section [general] call.cdr=yes is set, default is call.cdr=no
3) check what the name was you configured in mysqldb.conf as database connection name (the thing in []), default is [default]
4) set this name in register.conf in section [default] on property account=  so in this case account=default - that tells yate to use the default-connection for all queries if not specified otherwise.

describe your problem in more detail if it still exists, maybe with debug output (start yate with yate -vvvvvvv  and show us what you got, the more -v the more detailed the output is)

34
Moreover why is your mysql-port 87?
Default MySQL Post is 3306, check your mysql configuration and check on which interfaces mysql is listening, maybe "localhost" causes a problem but 127.0.0.1 is just fine. So try changing localhost to 127.0.0.1.

35
Maybe it is just a typo, but it must be

call.cdr=on
(with N instead of M)


instead of

call.cdr=om

36
Yate users hangout place / Re: New Yate forum
« on: February 18, 2013, 08:06:30 AM »
you may find unofficial debs here
https://launchpad.net/~sico/+archive/yate

37
Other Yate server issues / Re: Yate + MySQL connection
« on: February 18, 2013, 07:56:48 AM »
What actually is your problem? Please describe it in more detail. I don't see any.

38
Other Yate server issues / Re: Yate + MySQL connection
« on: February 18, 2013, 06:58:52 AM »
Check the example at the bottom:

http://docs.yate.ro/wiki/Register_Database_Schema

also disable pgsqldb.yate if you only use mysql.

39
Features requests / Get Hostname in Yate
« on: February 16, 2013, 03:28:55 PM »
Hi,

currently we write the hostname of our yate servers into the config files and use them for example in SQL statements like SELECT * FROM table WHERE yate_instance = 'yate1';
We do need this, because results from and operations on the DB depend on which yate-server is querying.

This is very odd, because each server needs it's own set of configuration files just for the hostname.

It would be great if there would be a property on the message object like nodename (which is already present in some handlers) which is available globally. Maybe not to confuse both and influence existing yate installations it could be a new property called "hostname".
We do use it in
- user.register
- engine.timer
- call.preroute
- call.route
- call.cdr (initquery, cdr_initialize, cdr_update, cdr_finalize)
- accounts (initquery, timerquery, statusquery)

I already talked with Paul with that but we did not come to a conclusion so far. He suggested to write a small module for that.

For anyone who just needs it in CDR, you can put this in regexroute.conf
Code: [Select]
[contexts]
.*=;nodename=$(nodename)


Who else is interested in this?
Null-Team what do you think?

40
Linux / Re: (Self) Registerless Account?
« on: January 17, 2013, 07:52:11 AM »
Hi,

you are using yate-client. Yate-Client is a voip client that connects to a server. You can make outgoing calls with it and receive calls, BUT there is no way to send a call directly to the client. You need the client to be connected to a voip server. Then when you want to receive calls on your client, you have another client (or script in the server) that calls the first client.

Seems like you are trying to send a call from nowhere directly to your client, that would not work.

So please specify in detail what you are trying to achieve.

41
Yate IVR / Javascript + DTMF
« on: January 10, 2013, 07:53:10 PM »
Hi all,

is it possible to use DTMF in Javascript routing?

Can someone provide an example script?

Thanks!

42
Yate IVR / Re: Javascript Routing - Empty message-Object
« on: January 10, 2013, 08:22:28 AM »
Ok, as talked to Paul the answer is:

All parameters in the message object have to be copied and preserved in variables because they are overwritten in Channel.callTo().

43
Yate IVR / Javascript Routing - Empty message-Object
« on: January 09, 2013, 04:30:37 PM »
Hi,

I just wrote a simple routing script in Javascript and I have the following problem:

Code: [Select]
message.callto_account = mysqlAccount; // Setting the MySQL Account (this is a variable containing a string)
message.callto_query = "CALL yate_voice_timeout('" + dbTimeout + "', '" + language + "')"; // Setting up the query
Engine.output("1) ME: " + message.caller); // Gives: 123456
Channel.callTo("dbwave/play//backup.au"); // Plays the Binary Data returned by the SQL Query
Engine.output("2) ME: " + message.caller); // Gives: (empty)
...
message.callto.1  = "sip/sip:999@abc.com";
message.callto.2  = "sip/sip:888@xyz.org";
Channel.callJust("fork");

When issuing the callJust, then message.caller is empty which causes problems because the value in CDR insert/update/finalize is empty too.
As far as described in the docs, that behavior is correct, because the return values of Channel.callTo are written in the message object, but I want to call other targets as well.

So do I have to copy all parameters and store them in separate variables to reuse them or is there a way to retrieve the original 'incoming'-message with all its values?

Regards,
Damian / asymetrixs

44
Yate bugs / Re: transcoding from A-law to u-law not working
« on: November 23, 2012, 06:54:33 AM »
You are trying to forward RTP and to transcode? Is this even possible?
I guess yate has to handle the RTP to make transcoding, because that is where the voice data is in.
If you set rtp_forward to 'yes', then the two endpoints (the one sending SIP to you and the one you are sending SIP to) handle RTP directly without your interaction and then transcoding is impossible to happen in your system.

Try it with

[default]
rtp_forward=no
format=mulaw
formats=mulaw

Pages: 1 2 [3] 4