Looking for any guides, tutorials, or documented setups for configuring a parrot/test server on AllStarLink 3. I've searched around but haven't found anything comprehensive — hoping someone has been down this road.
Our use case: We provide off-grid communication support for an ultra marathon using a portable repeater system. The setup consists of two computers, each running multiple ASL nodes, creating a linked repeater network. Each end of the system has radios on 2m, 70cm, and 6m (three repeater pairs total), with 1.25m serving as the inter-site link.
What I'd like to do is set up a parrot node/server that can repeat back on all bands simultaneously. The goal is to be able to key up on any band from the field and get a parrot response back on every repeater pair at once — making it easy to do range and access testing across all three bands in a single transmission rather than testing each one individually.
Has anyone set up something like this? Specifically:
Configuring a parrot node that feeds back through multiple connected nodes simultaneously
Any gotchas with timing or audio routing when doing multi-node parrot playback
Recommended app_rpt.conf settings for this kind of setup
Any pointers, configs, or war stories would be appreciated. Thanks!
There is a node on ASL that does. IMO it is the “Echolink Test Server” of the ASL world, but it has two drawbacks. It would require a network connection (which you may not have “off grid”) and it also gives a report of how your audio is afterwards.
ASL has internal Parrot, although I am uncertain if it will parrot to other nodes that are linked or if it is just local: Parrot Mode - AllStarLink Manual
This uses COP command number 21 to enable, and 22 to disable. This will make it parrot all the time if enabled.
By using COP 55, you can parrot on one transmission only*.* Which may be useful for what you are doing.
To use the COP commands via DTMF, open your rpt.conf file
Under the [functions] stanza, the commands you need are predefined. They look like this:
and this:
Simply remove the ; (this “;” makes the text after it a comment and for asterisk to ignore it.)
so the line should look like:
955 = cop,55
Save the file and restart asterisk.
Your commands would be *921 to enable, *922 to disable, and/or *955 for one shot parrot.
To have asterisk parrot all the time there is a parrot = 0 line under your [nodes] stanza. If you set this to 1, it will parrot all the time once it’s initially booted.
in the ASL Manual section just prior to Parrot mode is the one entitled Permanent Node Connection, and it refers to *811 to *818 functions.
the seeming vast number of ilink, cop, and remote functions is daunting and at first glance there appears to be some duplicates or very similar functions. it is hard to know which ones to activate.
additionally, the response from the ASL Node 2002 is more than simply playing back the audio. it also provides some technical values through text-to-speech. not sure if other ASL Network parrot nodes do the same. the additional technical information might be desirable for this use case
Node 2002? what are you talking about. Is this in reply to me? I’m not following what you’re trying to contribute here, you’re just saying “cop commands are hard”
Thanks for the detailed walkthrough on the COP commands — I appreciate the step-by-step on uncommenting the functions stanza lines.
I should have been clearer in my original post that I've already tried the standard parrot mode via *921, *922, and *955. The issue is that parrot only responds locally on the single node where it's enabled. The audio doesn't propagate back out through the other linked nodes in the network. So if I key up on 2m, I hear the parrot back on 2m only — but nothing comes back on 70cm or 6m.
What I really need is for the parrot to behave like a real station keying up, so the repeated audio routes through the linked network the same way any normal transmission would. That way a single test transmission on any band would confirm all three repeater pairs and the inter-site link are working.
Do you know if nodes like 2002 accomplish this with a custom script or AGI application that records the incoming audio and then re-transmits it as a new keyed-up source? And if so, is there any published source code or documentation for how those are built? Unfortunately 2002 itself won't work for us since we're fully offline with no internet.
Good call on the permanent connection functions — I hadn't considered whether using *811-*818 might change how parrot audio gets routed. My concern is that forcing permanent connections could create issues with the rest of the repeater network topology, but it's worth testing.
You raise a good point about node 2002 providing TTS technical data alongside the parrot playback. That kind of diagnostic info would actually be really useful for our field testing — knowing signal quality metrics while doing range checks across bands would be a bonus.
That's really the core of my question though: how are nodes like 2002 actually built on the backend? Is there documented guidance on setting up that kind of dedicated parrot server, or does everyone end up writing their own scripts from scratch? Even understanding the general architecture — whether it's a custom AGI script, a separate Asterisk context, or something else — would give me a solid starting point.
Steven: To answer your question about the propagation of audio on 2002, please take a look at the AMP_PARROT_MODE=CONFERENCE setting. As you point out, the default behavior is that the parrot audio stays private to the caller. This environment variable causes the parrot recording/payback to happen in the conference so that other connected nodes can all hear each other’s parrot test.
I’m not advocating this parrot method over others that are available because I don’t completely understand your setup, I just wanted to make it clear that the audio repeat feature is available. Please reach out directly if you have any questions about this. 73s KC1FSZ