00:48.16 | *** join/#asterisk DivideBy0 (DivideBy0@unaffiliated/divideby0x0) |
00:48.16 | *** mode/#asterisk [+o DivideBy0] by ChanServ |
00:48.49 | *** join/#asterisk ghoti (~paul@dsl-rb-64-118-22-159.wtccommunications.ca) |
01:35.27 | *** join/#asterisk post-factum (~post-fact@vulcan.natalenko.name) |
01:56.30 | *** join/#asterisk tsal (~tsal@i59F52625.versanet.de) |
01:57.12 | *** join/#asterisk mr44er1 (~mr44er@dynamic-046-114-002-130.46.114.pool.telefonica.de) |
01:57.47 | jbg | Can anyone explain this behaviour? an ODBC function always returns the column value truncated to 15 characters https://www.irccloud.com/pastebin/JoDnr2im/ |
02:03.02 | jbg | oh wow, it is... deliberate? https://github.com/asterisk/asterisk/blob/master/funcs/func_odbc.c#L929 |
02:03.15 | jbg | nobody ever wanted to select more than 15 characters via func_odbc before? |
02:03.53 | seanbright | it is not deliberate |
02:04.03 | seanbright | what is the column type and length? |
02:04.12 | jbg | it's a text column, no specified length |
02:04.34 | jbg | if it's not deliberate, I should be safe to increase the size of this buffer? |
02:04.50 | seanbright | that won't do anything, but knock yourself out |
02:04.54 | jbg | ... |
02:05.04 | seanbright | and if it does do something, then there is another bug |
02:05.22 | seanbright | that 16 is an initial size |
02:05.45 | seanbright | oh wow... is making space in the buffer... deliberate? https://github.com/asterisk/asterisk/blob/master/funcs/func_odbc.c#L956 |
02:06.01 | jbg | it's mighty convenient that it's the exact length the text is being truncated to, though, isn't it? |
02:06.08 | seanbright | sure is |
02:06.14 | seanbright | like i said, knock yourself out |
02:06.22 | jbg | so you'd guess the bug lies elsewhere |
02:06.25 | seanbright | that's american for "go for it" |
02:06.42 | seanbright | what version of asterisk are you running? |
02:07.08 | jbg | 18.2.2 |
02:07.28 | jbg | I seem to be not the first to have this issue, and not the first to think that patching that value would solve it: https://community.asterisk.org/t/asterisk-16-12-0-func-odbc-truncates-field-data-to-15-symbols/85627 |
02:07.32 | jbg | (and in their case it did solve it) |
02:08.07 | seanbright | ok, then by all means |
02:08.18 | jbg | in their case it's the write function though |
02:08.22 | jbg | so potentially handled differently |
02:08.41 | seanbright | right after this line: https://github.com/asterisk/asterisk/blob/18/funcs/func_odbc.c#L1597 |
02:08.44 | seanbright | add this: |
02:09.20 | seanbright | ast_log(LOG_ERROR, "octetlength: %d\n", octetlength); |
02:09.29 | seanbright | recompile, reinstall, test again |
02:09.48 | jbg | it looks like make_space uses the 'length' from SQLDescribeCol, which maybe isn't provided for a column like 'text' without a provided length? |
02:10.25 | seanbright | certainly possible |
02:11.09 | seanbright | odbc is a dumpster fire |
02:12.23 | seanbright | to be clear - that log message will only show up when executing 'odbc read ... exec' from the CLI |
02:12.33 | jbg | yeah. with the column type changed to varchar(128) it works fine |
02:12.43 | seanbright | awesome |
02:30.06 | *** join/#asterisk ghoti (~paul@dsl-rb-64-118-22-159.wtccommunications.ca) |
03:14.56 | *** join/#asterisk silverwhitefish (~hidden@47.203.212.155) |
03:58.13 | *** join/#asterisk pchero (~pchero@211.178.226.108) |
05:03.14 | *** join/#asterisk Ner0Zer0 (~Ner0Zer0@87.253.63.54) |
06:16.48 | *** join/#asterisk sekil (~sekil@178-222-13-110.dynamic.isp.telekom.rs) |
06:37.55 | *** join/#asterisk TandyUK2 (~admin@TandyUK/staff/James) |
06:42.24 | *** join/#asterisk TriJetScud (~TriJetScu@2602:fca7:1:6:5733:d000:1111:1111) |
07:06.26 | *** join/#asterisk BakaKuna (~Thunderbi@86-89-65-191.fixed.kpn.net) |
07:44.28 | *** join/#asterisk TriJetScud (~TriJetScu@23.172.144.5) |
08:27.00 | *** join/#asterisk UncleKiwi (~UncleKiwi@unaffiliated/unclekiwi) |
08:29.18 | UncleKiwi | greetings phone users - im too lazy to figure out how to use pjsip just wondering if i can use sip on asterisk 18 ? |
08:30.22 | UncleKiwi | im sipping on a coffee... |
08:30.45 | UncleKiwi | awaiting your wisdom |
08:33.44 | file | yes. |
08:34.04 | UncleKiwi | ok great |
08:34.11 | UncleKiwi | thank you |
08:35.00 | UncleKiwi | im considering installing v18 LTS |
08:35.11 | UncleKiwi | is that a good idea ? |
08:35.31 | UncleKiwi | vs standard |
08:35.35 | *** join/#asterisk TriJetScud (~TriJetScu@2602:fca7:1:6:5733:d000:1111:1111) |
08:35.55 | UncleKiwi | or is there no v18 std |
08:50.24 | *** join/#asterisk giesen (~ggiesen@ego.giesen.me) |
09:03.13 | file | there is no "v18 std" |
09:03.27 | UncleKiwi | correct |
09:03.28 | file | each version is either a standard release or a long term supported release, 18 is an LTS |
09:03.48 | UncleKiwi | ok thanks |
09:06.05 | UncleKiwi | i need some very simple config files - |
09:08.55 | *** join/#asterisk sekil (~sekil@nat-73.net011.net) |
09:16.34 | *** join/#asterisk TriJetScud (~TriJetScu@2602:fca7:1:6:5733:d000:1111:1111) |
09:18.49 | jbg | what would the syntax be in extensions.lua to obtain two columns from the result of a single func_odbc function? |
09:19.03 | jbg | the equivalent of `Set(ARRAY(MY_VAR1,MY_VAR2)=ODBC_GET_VALUE())` but for lua |
09:20.30 | jbg | I have var1 = channel.ODBC_GET_VALUE():get() and that works fine for the first, but how to get the second column? |
10:17.46 | *** join/#asterisk sa02irc (~mbax@155-079-043-212.ip-addr.inexio.net) |
10:49.18 | *** join/#asterisk pchero (~pchero@211.178.226.108) |
11:46.47 | *** join/#asterisk bford (uid283514@gateway/web/irccloud.com/x-tfjxzqpabgxqrwgr) |
11:46.48 | *** mode/#asterisk [+o bford] by ChanServ |
11:48.14 | *** join/#asterisk ghoti_ (~paul@45.78.100.196) |
11:53.16 | *** join/#asterisk ghoti_ (~paul@45.78.111.28) |
12:44.00 | *** join/#asterisk ghoti_ (~paul@45.78.102.125) |
13:02.13 | *** join/#asterisk InterLinked (~ambassado@cpe-24-209-155-151.wi.res.rr.com) |
13:12.09 | *** join/#asterisk sekil (~sekil@188.255.183.167) |
13:18.43 | *** part/#asterisk sekil (~sekil@188.255.183.167) |
13:27.01 | seanbright | jbg: the code suggests they come back comma delimited, although it's a bit hard to follow |
13:37.44 | InterLinked | Quick question - the Asterisk wiki says to start changes in the oldest branch to which changes will apply: right now, does that mean we have to start with 16, or could we just do 18 and cherry pick to master? |
13:39.00 | file | if the changes are applicable to 16, then 16 |
13:39.12 | file | in the end as long as the change is cherry picked everywhere it should be then it's fine |
13:39.56 | InterLinked | So that means if the change would technically be compatible with 16, we should start with 16? |
13:40.09 | file | yes. |
13:40.17 | InterLinked | Got it, thanks! |
13:44.36 | jbg | seanbright: thanks, I'll try that. I had resorted to just doing two separate SQL queries :) |
13:44.45 | *** join/#asterisk CatCow97 (~mine9@c-73-96-109-206.hsd1.or.comcast.net) |
13:45.13 | jbg | any idea how to do predial handlers with args in Lua? I am trying app.dial("PJSIP/foo", 10, "b(handlers,addheaders,1(" .. arg .. "))") |
13:45.31 | jbg | PJSIP/foo gets dialled, but the predial handler doesn't execute |
13:47.06 | seanbright | i know if 1 person using pbx_lua |
13:47.17 | seanbright | and that person is you |
13:47.31 | jbg | haha, you are confirming the strong feeling I had already got |
13:47.42 | seanbright | which is 1 more person than has patched pbx_lua in the last... year? |
13:47.43 | jbg | when every google search has a single useful result, or no useful result :P |
13:48.04 | jbg | what is your recommended dialplan module? just the standard one? |
13:48.14 | file | I vaguely recall another person on the forum, who said we should drop dialplan completely and focus on lua and other things |
13:48.33 | Samot | shiver |
13:48.53 | file | jbg: standard dialplan is what the vast majority of the user base uses |
13:49.04 | jbg | right, I'll port over to that then |
13:49.07 | file | some use it standalone, some use it in combination with AGIs to do more complex things |
13:49.51 | seanbright | jbg: what does your verbose output look like when calling app.dial? |
13:49.56 | Samot | I believe that I've seen less than six people ask about LUA in here over the years of being around. |
13:50.06 | Samot | So it averages to like 1 person a year or so. |
13:50.18 | jbg | I didn't make the decision very consciously, just grabbed Lua since I spend most of my time writing software (albeit mostly not in Lua, but I am familiar with it) so writing the dialplan in something that looks more like a typical programming language was more familiar to me |
13:50.35 | jbg | but I'd definitely rather that searching for something gives more than 1 result :) |
13:50.56 | seanbright | there is AEL2, but it's gross |
13:51.06 | Samot | Yeah. |
13:51.08 | seanbright | stick with lua or use standard dialplan |
13:51.30 | Samot | Sadly, I think there are more using AEL than LUA. |
13:51.58 | seanbright | jbg: there should be a verbose message printed that says "Executing [...]" when you call app.dial |
13:52.09 | seanbright | which will tell you what it is actually trying to do |
13:52.53 | seanbright | jbg: actually... try this |
13:53.04 | seanbright | app.dial("PJSIP/foo", "10,b(handlers,addheaders,1(" .. arg .. "))") |
13:53.52 | seanbright | assuming that is valid lua syntax |
13:54.19 | jbg | ah ok, I can try that |
13:54.30 | jbg | this is the verbose: |
13:54.36 | jbg | https://www.irccloud.com/pastebin/JEs744Kz/ |
13:54.51 | jbg | so it has the predial handler there |
13:55.39 | jbg | but there's an app.verbose() call in the handler that doesn't execute |
13:55.53 | jbg | I'm just going to port this dialplan to the standard dialplan module, it's still small so it's better to do it now |
13:57.07 | seanbright | you have app_stack loaded? |
13:59.52 | jbg | I do not! that's probably the issue |
14:00.04 | jbg | and would have remained an issue after porting then |
14:00.14 | igcewieling | why in the name of all that is good in the world are you not running app_stack? |
14:00.37 | jbg | because I'd never heard of it before now, and I've been loading modules as I discover that I need them |
14:00.50 | igcewieling | There is a treatment for premature optimization. |
14:00.59 | jbg | it's not in the name of optimisation, as such... |
14:01.06 | seanbright | i do the same thing |
14:01.06 | jbg | autoload loaded the kitchen sink and half of the pantry |
14:01.28 | *** join/#asterisk kharwell (uid358942@gateway/web/irccloud.com/x-nfqdytxbaqylnjcb) |
14:01.28 | *** mode/#asterisk [+o kharwell] by ChanServ |
14:01.38 | jbg | many of those things seem to have hooks that mean I don't have to directly invoke them for parts of the module to be executing |
14:01.43 | seanbright | i would assume there would be an error message about Gosub being missing |
14:01.49 | jbg | I'm just not comfortable with that for a whole lot of stuff that I don't want or need |
14:02.10 | jbg | I didn't see any error, but it's possible my logging config is suboptimal in some way |
14:02.23 | jbg | in general I haven't seen errors when modules have been missing, I just find out because something mysteriously doesn't work |
14:02.41 | igcewieling | jbg: You are going to spend a lot of time realizing you are missing this module or that module. |
14:02.51 | jbg | well, my needs from asterisk are pretty small |
14:03.00 | jbg | I think this is the third module I have been missing beyond what I guessed I needed from the names |
14:03.14 | jbg | and I'm almost done with setting this thing up, so I don't think overall I'll spend much time |
14:03.26 | jbg | but in any case I consider that time well spent |
14:04.14 | igcewieling | you are using pjsip? |
14:04.17 | jbg | yup |
14:04.38 | jbg | (the other two were both pjsip modules :) ) |
14:04.57 | Samot | You're loading all the pjsip modules right? |
14:05.01 | Samot | Because there are a few. |
14:06.00 | *** join/#asterisk ghoti_ (~paul@45.78.102.24) |
14:06.23 | jbg | I'm loading all the ones that my configuration needs, as far as I can tell |
14:06.43 | jbg | I'm not loading "all the pjsip modules", because for example I don't need res_pjsip_pidf_eyebeam_body_supplement.so |
14:06.47 | *** join/#asterisk driz (~driz@joinsg.net) |
14:07.58 | Samot | But a good chunk, considering there's 47 or so of them |
14:09.12 | jbg | I appear to be loading 14, and the SIP side of things is working without any issues. from inspection of the list of modules I'm not loading, they're all pretty clearly things I'm not using |
14:09.24 | jbg | I fully expect to need to load additional modules if I need to use additional features |
14:09.46 | Samot | Can you show "module show like pjsip" |
14:09.50 | seanbright | lol |
14:09.50 | Samot | I'm just curious. |
14:09.53 | seanbright | jbg: run |
14:09.58 | jbg | lol, I'm not interested in this game |
14:10.02 | jbg | you do your config, I'll do mine |
14:10.03 | Samot | OK. |
14:10.17 | jbg | it seems mad to have loadable modules and then try to encourage everyone to load them all |
14:10.18 | Samot | Sorry for trying to help make sure you had what you needed. |
14:10.27 | jbg | no apology necessary |
14:10.29 | Samot | I didn't say to load them all |
14:10.38 | Samot | But whatever. You got your way going. |
14:10.42 | seanbright | 14:04 < Samot> You're loading all the pjsip modules right? |
14:10.57 | Samot | I followed up |
14:11.00 | seanbright | load? check |
14:11.02 | seanbright | all? check |
14:11.06 | Samot | OK. |
14:11.07 | jbg | I'm new to asterisk, but I'm not new to SIP, I'm familiar with what almost every one of these modules is doing just from the name |
14:11.19 | Samot | I was referring to pjsip modules, not all modules. But point made. |
14:11.21 | jbg | if I need one, I'll load it |
14:11.27 | Samot | I'll just let this lay. |
14:12.08 | igcewieling | I use autoload with noloads of the modules I know I don't need. |
14:31.18 | *** join/#asterisk sekil (~sekil@178-222-13-110.dynamic.isp.telekom.rs) |
14:32.25 | *** part/#asterisk sekil (~sekil@178-222-13-110.dynamic.isp.telekom.rs) |
14:40.43 | *** join/#asterisk Janos (~Janos@201.204.94.76) |
14:49.41 | *** join/#asterisk drathir_tor (~drathir@gateway/tor-sasl/drathir) |
15:13.31 | seanbright | what do people use to check on global network outages? |
15:15.20 | igcewieling | I don't. |
15:15.30 | file | Twitter? :D |
15:16.56 | igcewieling | What am I going to do about an outage outside of my network? Call them up and complain? |
15:25.40 | Samot | Well knowing that Level 3, Hurricane Electric, Microsoft, Softlayer, etc where having issues in Chicago and the west coast the other day stopped me from wondering why there were intermittent issues with calls, email and web sites not working right. |
15:25.50 | electronic_eel | i have a bunch of tier 1 providers and major datacenter providers on a list that my network monitoring system constantly pings |
15:26.03 | Samot | Or trying to figure out if there where issues inside my network or systems. |
15:26.04 | electronic_eel | so i see if there are packet losses or increased ping times |
15:26.10 | Samot | https://www.thousandeyes.com/outages/ |
15:26.21 | Samot | seanbright: That's a place you can use. |
15:27.05 | Samot | https://outage.report/us < That's US based. |
15:27.54 | seanbright | thanks |
15:28.50 | electronic_eel | i would prefer to run something on my own systems. because then you can see issues with your connection too |
15:29.02 | electronic_eel | smokeping is a tool commonly used for that |
15:29.26 | electronic_eel | see for example here how the cloud provider OVH uses it: http://smokeping.ovh.net/smokeping?target=EMEA |
15:30.05 | Samot | https://livemap.pingdom.com/ |
15:30.16 | Samot | And if you want all sorts of details. |
15:31.11 | *** join/#asterisk driz (~driz@joinsg.net) |
15:32.25 | igcewieling | We use SNMPc to monitor our devices. |
15:33.05 | *** join/#asterisk ghoti_ (~paul@dynamic-64-118-29-118.wtccommunications.ca) |
16:01.29 | Samot | Yeah but what happened the other day wasn't that things where down, certain traffic wasn't routing properly. |
16:01.45 | Samot | My monitoring systems said 6 locations where down, but I could reach them. |
16:13.34 | *** join/#asterisk pchero (~pchero@211.178.226.108) |
16:16.08 | *** join/#asterisk rpifan (~rpifan@p200300d2670b9500843c9bb8c648bd8b.dip0.t-ipconnect.de) |
16:28.19 | avb | gentlemen, is there are any possible cases where an asterisk setup with ICE would cause one way audio in some cases? |
16:29.02 | avb | im getting complaints that like on 1-2% of the calls caller doesnt hear the called part |
16:29.29 | avb | while trunk provider claims that they do see bidirectional RTP |
16:29.37 | igcewieling | People use ICE other than for WebRTC? |
16:30.13 | avb | thats for a webrtc yes |
16:30.51 | avb | webrtc softphone connects to kamailio, while they are getting media straight from the asterisk |
16:30.52 | file | if ICE negotiation fails for some reason in the specific direction then yes, it is possible |
16:31.27 | avb | there is a turn involved, so its only a single candidate |
16:32.07 | file | then it sounds like you need to look at a failure case and look at everything end to end |
16:32.09 | avb | file: i just cant figure out a usecase why that would happen in such a low amount of calls |
16:32.52 | avb | turn is bloody complicated to get the logs from :-/ |
16:33.30 | file | the WebRTC end to end media flow is complex, guessing is futile usually, only examining things and looking at stuff yields results |
16:35.40 | avb | seems I need to install homer to log webrtc traces |
16:35.45 | avb | will be a good start :) |
16:36.22 | igcewieling | Homer is like using a nuke to kill a roach. |
16:37.03 | avb | how would you try to catch this bad calls? |
16:37.40 | avb | there are a lot of calls on the platform, lot of users and I by myself never can get one dead air call |
16:38.19 | file | the wonderful world of WebRTC |
16:39.53 | igcewieling | avb: wireshark? pcapsipdump? tcpdump? |
16:40.16 | igcewieling | I like pcapsipdump, but it can be a bit picky |
16:43.59 | Samot | sngrep |
16:46.34 | Samot | Man, carriers are filing big time for copper line retirement |
16:47.00 | Samot | Oh FYI, that's happening in the US now. |
16:47.31 | igcewieling | Samot: the "we are converting you to fiber, you have no choice" e-mails from Verizon have been going on for a while. lol. |
16:48.08 | Samot | Yeah but they have to do proper filings with the FCC. |
16:48.16 | igcewieling | It is entirely a coincidence that fiber doesn't fall under all those pesky regulations which apply to copper. |
16:48.21 | Samot | Including those that need to be grandfathered for some time. |
16:48.38 | Samot | Such as? |
16:48.56 | Samot | It doesn't matter if I'm delivering voice over copper or fiber or coax. |
16:49.07 | Samot | I'm still delivering voice, that's what is regulated for me. |
16:49.17 | igcewieling | You? correct? an ILEC, not a chance. |
16:50.04 | Samot | Do you have an example of a pesky regulation that is only for copper but not fiber? |
16:50.06 | igcewieling | Generally, copper must be resold to CLECs, where fiber or coax doesn't require that. |
16:50.40 | Samot | Oh you mean by ATT going to all fiber, the dont have to share with the CLECs? |
16:50.50 | Samot | So screw the CLECs? |
16:51.01 | Samot | Go run your own fiber? |
16:51.06 | igcewieling | Samot: pretty much. |
16:51.16 | Samot | So they don't want the money then. |
16:51.17 | Samot | OK. |
16:51.41 | igcewieling | They would not resell copper if they were not required to. |
16:51.55 | Samot | They have to resell copper because of the 90's ruling. |
16:52.02 | Samot | Before FIBER was a major thing. |
16:52.11 | Samot | It was about access to the infrastructure. |
16:53.15 | Samot | So I'm going to guess that this was covered. I should review the reports/rulings over at the FCC to double check but I doubt this would be happening without some major push back if what you claim is true. |
16:53.27 | Samot | Just a few billion in money that would just be lost to ILECs. |
16:55.26 | igcewieling | If a monopoly is replacing copper with fiber, then I feel similar regulations should apply. Otherwise it is just a way to get out from under copper requirements. |
16:55.36 | Samot | Monoply. |
16:55.38 | Samot | Wow. |
16:55.40 | Samot | OK. |
16:55.48 | igcewieling | an ILEC is not a monopoly? |
16:56.28 | Samot | I guess it can be. |
16:56.37 | Samot | In a very regional manner. |
16:57.00 | igcewieling | The same can be applied to the power company or water service. |
16:57.10 | Samot | You mean, utilities. |
16:57.16 | Samot | Highly regulated utilities. |
16:57.24 | Samot | The one thing Comcast keeps fighting against. |
16:57.25 | igcewieling | yes, same as phone lines. |
16:57.40 | Samot | They do not want to be considered a utility. |
16:57.49 | Samot | Because TV is not a utility. |
16:58.01 | Samot | They don't want Internet to be considered a utility. |
16:58.38 | Samot | But Telecom, Electric, Gas, Water these are all public utilities. |
16:59.07 | Samot | And the biggest, oldest of those players being around *before* government was in control of things and areas. |
16:59.23 | Samot | There was no federal government in territories |
17:00.08 | Samot | The US wasn't even 48 states until after the 1900's |
17:00.18 | Samot | Or 50 until the mid 1900's. |
17:00.47 | igcewieling | I am talking about telecom |
17:00.52 | Samot | So am I |
17:01.13 | Samot | If there was phone service in Nevada before Nevada was a state is was because a private telecom went there a built it. |
17:01.30 | Samot | And since Telecom has always been local -> state -> federal that's how it was always handled. |
17:01.51 | Samot | A local telecom (ILEC) was for a specific area. |
17:02.09 | Samot | Could be an entire county, one city or 2 counties. |
17:03.12 | Samot | Then companies like ATT where in the business of making Hounddog, Arkansas be able to connect calls to NY City. |
17:05.09 | Samot | The first 82 NPAs weren't even established until the 1940's which was about 10-20 years in telecom being around. |
17:05.30 | Samot | probably close to 20 |
17:09.22 | Samot | One of the ILEC issues that has been a result of the CLEC rulings is they cant just charge a CLEC whay they want. |
17:10.48 | *** join/#asterisk clarjon1 (~clarjon1@unaffiliated/clarjon1) |
17:11.46 | Samot | I mean we were paying ATT and Verizon a butt load of money every month. Between circuits, cross connects and colocation |
17:13.09 | Samot | So Im not sure I see them giving up multi-million dollar customers |
17:32.24 | avb | igcewieling: yeh, i just got 10gig dump :) |
17:32.28 | avb | lets see |
17:32.46 | avb | hopefully it will have something |
17:33.22 | igcewieling | avb: pcapsipdump splits the calls into individual files. |
17:36.23 | avb | im more concerned about ICE |
17:36.44 | avb | ill try pcapsipdum on the asterisk servers too |
17:44.59 | *** join/#asterisk tripleslash (~triplesla@unaffiliated/imsaguy) |
17:50.36 | *** join/#asterisk InterLinked (~ambassado@cpe-24-209-155-151.wi.res.rr.com) |
17:53.44 | InterLinked | Iâve been thinking about adding a custom notch filter to Asterisk somehow to filter out / attenuate specific frequencies (e.g. 2600 Hz). It seems like the most efficient way to do this would be using Goertzel, just like the DTMF and MF filters in dsp.c do. goertzel_init seems to be promising. |
17:53.51 | InterLinked | Iâm not sure what the best way would be to have this set with a function - Iâm thinking similar to how you can do Set(VOLUME(TX)=-5) or Set(MUTEAUDIO(in)=on), something like SET(NOTCH_FILTER(2600)=on) or SET(NOTCH_FILTER(2600)=4) (to control the attenuation). |
17:53.54 | InterLinked | When I look at examples of new DSPs being created though, itâs all in the context of applications which are blocking, such as creating a new DSP for silence detection and then releasing it. Iâd want this to be active for the duration of the call. Iâm wondering if anyone has thoughts on the optimal way this might be architected. Thanks! |
18:02.37 | seanbright | i mean, VOLUME() seems to be the way to go, no? |
18:02.44 | seanbright | in terms of examples, that is |
18:03.07 | igcewieling | Maybe look at func AGC, which requires speex |
18:03.20 | InterLinked | VOLUME() doesn't use DSP though, does it? |
18:07.02 | *** join/#asterisk InterLinked (~ambassado@cpe-24-209-155-151.wi.res.rr.com) |
18:07.28 | InterLinked | Sorry, I got kicked out for the past 2 minutes |
18:20.14 | seanbright | no, i think VOLUME() uses audiohooks (maybe?) |
18:20.44 | seanbright | but it is an example of a function that manipluates media passively |
18:24.28 | igcewieling | Maybe look at func AGC, which requires speex |
18:24.39 | InterLinked | It looks like AGC also uses audiohooks, would an audiohook be the preferred way to do it? |
18:31.53 | seanbright | if the goal is to isolate a tone, probably not |
18:31.59 | seanbright | are DSPs not async? |
18:33.15 | seanbright | wait... if the goal is to manipulate the audio, you need to use audiohooks |
18:53.48 | InterLinked | The examples I've seen with dsp don't appear to be async, that's why I was wondering. I can find them used in applications (like WaitForSilence) but not functions. |
18:58.28 | InterLinked | That makes sense to me though - using audiohooks. If I understand this right, I need to write a callback function that's used to process every frame, and then perhaps I could make use of the Goertzel algorithm in the DSP library? |
18:59.32 | seanbright | sure. why not. |
19:20.54 | *** join/#asterisk waldo323 (~waldo323@d149-67-45-83.clv.wideopenwest.com) |
19:32.56 | *** join/#asterisk sa02irc (~mbax@155-079-043-212.ip-addr.inexio.net) |
19:36.05 | *** join/#asterisk sa02irc (~mbax@155-079-043-212.ip-addr.inexio.net) |
19:36.19 | seanbright | re: outages: https://puck.nether.net/pipermail/outages/2021-May/thread.html |
19:56.09 | *** join/#asterisk rpifan (~rpifan@p200300d2670b950014e21655a334993b.dip0.t-ipconnect.de) |
20:09.38 | *** join/#asterisk tuxd00d (sid401305@gateway/web/irccloud.com/x-aqcosrnougqldbse) |
20:10.21 | *** join/#asterisk bengoa (~alberto@194.50.55.200) |
20:14.25 | *** join/#asterisk tsal (~tsal@i59F52625.versanet.de) |
20:44.47 | *** join/#asterisk ldm (~ldm@hacksoc/member) |
21:34.06 | *** join/#asterisk sekil (~sekil@178-222-13-110.dynamic.isp.telekom.rs) |
22:51.31 | *** join/#asterisk ttys000 (~ttys000@50.92.213.208) |
22:54.58 | *** join/#asterisk jkroon (~jkroon@165.16.203.106) |