There are probably a million ways to accomplish the same end result, but it always helps to see an example of a working solution. Here is good place for examples of the tricks and approaches you have taken that actually work with Asterisk + Uplink in making and receiving Skype calls to phones in Asterisk pbx systems. I'll start with my own setup, for example:
Asterisk version 1.2.6 on a power-pc based Mac-Mini running OS X (Tiger 10.4.5)
Uplink downloaded 4/21/2006 on a Dell running Windows XP Pro /SP2
In asterisk, I created a sip.conf entry for Uplink called [5506] of the type: friend
In uplink, I matched the credentials from [5506] in sip.conf, and send skype incoming calls to my main [inbound] setup that I call '1000' (which is setup to ring at a number of desks in the office).
To use skype-out from any extention in the office the user just enters the entire country code-area-code-number.
To dial skype accounts directly I setup a numeric extension for each of our clients, friends or family.
That's it, works great.
Below are some snips from sip.conf and extensions.conf:
;Skype 2.0, Windows XP Pro/SP2
;Uplink downloaded 4/21/2006
;Asterisk 1.2.6 (Running on a mac-mini with OS X Tiger 10.4.5 )
;On Uplink sip setup:
;username: 5506, passwd: xxxxxxx
;Send to username: 1000 main [incoming] call group on asterisk
;sip.conf
[5506]
username=5506
host=dynamic
nat=yes
secret=xxxxxxx
allow=all
type=friend
insecure=very
context=extensions
canreinvite=yes
caninvite=yes
callerid="Incoming Skype"<206-555-1212>
;extensions.conf
[globals]
DIALIN1=SIP/2001&SIP/1955&SIP/2000&SIP/1973
[incoming]
exten => 1000,1,Dial(${DIALIN1},20,r) ; DIALIN1 is a list of extensions to ring
exten => 1000,2,Voicemail(u101) ; main voicemain for office
exten => 1000,3,Hangup
[dialout]
exten => _001XXXXXXXXXX,1,Macro(UpLink,${EXTEN}) ;for skype-out numbers from pbx
[macro-UpLink]
exten => s,1,Dial(SIP/${ARG1}@5506,60,)
exten => s,2,Congestion
[extensions]
include=>dialout
;friends on skype that I can call from regular old phone on the pbx
exten => 1977,1,Macro(UpLink,myskypebuddy)
exten => 1976,1,Macro(UpLink,mymomskyer)
exten => 5506,1,NoOp(Skype Extension)
exten => 5506,2,Dial(SIP/5506,15,tr)
exten => 5506,3,Hangup