According to http://ohnosec.org/drupal/node/143,

********************
Startup Macro
Additionally, there is one macro type which can executed once on system startup. Each node can have one startup macro defined in its node stanza.
To define the startup macro, place the something similar to this in your node stanza:

startup_macro=*9532011*9532000
This example executes two DTMF commands to establish two links at startup. The startup macro does not require a trailing # like a function macro.
********************

Let's be honest... have you ever entered at the CLI> prompt the command of
CLI> rpt fun [your-node] *3[their-node] {enter}
and have it fail?  (Note the lack of #?)

Either way, it works for me... except when the command is entered into a node stanza...

ie:

[1776] (*)                                                         ; Change this to your assigned node number
rxchannel=Radio/usb1776                        ; Rx audio/signalling channel
duplex=1
linktolink=yes
erxgain=-3                                                      ; Echolink receive gain adjustment      ; Note: Gain is in db-volts
etxgain=3                                                       ; Echolink transmit gain adjustment     ; Note: Gain is in db-volts (20logVI/VO)
scheduler=schedule
morse=morse
macro=macro
functions=functions                                     ; Repeater Function Table
phone_functions=functions                       ; Repeater Function Table
link_functions=functions                        ; Link Function Table
telemetry=telemetry                                     ; Telemetry descriptions
wait_times=wait-times                           ; Wait times
context =  radio                                        ; dialing context for phone
callerid = "Repeater" <0000000000>      ; callerid for phone calls
idrecording = rpt/repeater_id                                ; id recording or morse string
accountcode=RADIO                                       ; account code (optional)
hangtime=1000                                           ; squelch tail hang time (in ms) (optional)
althangtime=4000                                        ; longer squelch tail
totime=170000                                           ; transmit time-out time (in ms) (optional)
idtime=540000                                           ; id interval time (in ms) (optional)
politeid=30000                                          ; time in milliseconds before ID timer
; idtalkover=|i                                      ; Talkover ID (optional) default is none
unlinkedct=ct2                                          ; unlinked courtesy tone (optional) default is none
remotect=ct3                                            ; remote linked courtesy tone (indicates a remote is in the list of links)
linkunkeyct=ct8                                         ; sent when a transmission received over the link unkeys
startup_macro=*3[node-number]            ; this crap doesn't work.

(* = note: this story is true.  The actual node number and callsigns were altered to protect the innocent)

Why doesn't it work, is what I want to know.   I tried the command in the [macro1776] stanza - no good. 
Re-read and saw where it -had- to be in the 'node' stanza - entered it there and still - no bueno.  Que pasa?

-Geoff