|
Greetings Ivar,
Can you recommend me which is the best real SIP proxy server developed in C# with the future of SIP to PSTN call and other feature.
Thanks for your help.
Regards
ArunS
|
|
|
|
|
I dobt that there is any in C#.
|
|
|
|
|
Greetings Ivar,
Thank you very much for your support and timing.
Please let me know if you hear any free source code for my wish
Thank you very much and appreciate you
Regards
ArunS from India
|
|
|
|
|
Greetings IVAR,
Have a good day. You mentioned that there is 2 ways to communiacte with PSTN
1) tel: uri
2) sip: xxxx; and proxy dedects fone number.
I want to know how to use the "tel" method in the SIP proxy application.
Im in very need of this application to communicate with PSTN numbers.
Im using GRANDSTREAM switch for my application. Please help me on this and im thankful for you
Thanks in advance
ArunS from India
|
|
|
|
|
As i said this application is not meant for every day use. It's just demos how to use SIP stack to implement simple proxy.
If you need real proxy, you need to customize this code or use some commercail one.
|
|
|
|
|
Hi IVAR,
Could you tell me how to customize this code. Is there any possible to make a call to PSTN. How to change the sip:// to tel:// format to make call. Please help me on this.
Thank you for your quick information.
|
|
|
|
|
Hi IVAR,
Could you tell me how to customize this code. Is there any possible to make a call to PSTN. How to change the sip:// to tel:// format to make call. Please help me on this.
Thank you for your quick information.
|
|
|
|
|
Greetings Ivar,
Will I use the same code for my project with out changing the Dll and namespace and how many Clients we can connect in this server application.
Is there any limitation. Waiting for your reply eagerly.
|
|
|
|
|
Hello,thank you for a very nice project!
Would you be so kind and adviced me on the basic setting of this proxy please? I have a Asterisk PBX (lets say 10.0.0.108) and an zoiper softphone (10.0.0.21). If I setup the zoiper to register its extension directly to the Asterisk, the softphone registers, I can make calls, etc:
Zoiper(10.0.0.21)--->Asterisk(10.0.0.108)
However if I try to setup your SIP_Proxy_demo between the two (lets say on an IP 10.0.0.101):
Zoiper(10.0.0.21)---> SIP_Proxy_demo(10.0.0.101) --->Asterisk(10.0.0.108)
the zoiper softphone wont register (I changed the "domain" for the account from 10.0.0.108 to 10.0.0.101) - I get the message "SIP/2.0 407 Proxy Authentication Required". In the SIP_proxy_demo setting I leave the "hostname" empty, in the users I add the same credentials that worked allright in the softphone without proxy (eg 3000,password,3000@10.0.0.108) + press the "Play" button.
Please could you point me to what am I doing wrong? Should I fill the "hostname" settings in the SIP_proxy_demo with the IP of the asterisk? Or add the asterisk IP to the "gateways" tab?
Thank you for any information!
|
|
|
|
|
my dear friend ,you maybe write wrong size of your source code,it should be 1.1 mb,not 1.1 kb
|
|
|
|
|
Am not able to run the server. The log showing below given error :
Received (489 bytes): 192.168.1.43:5060 <- 192.168.1.43:3363
REGISTER sip:192.168.1.43 SIP/2.0
Via: SIP/2.0/UDP 192.168.1.43:16504
Max-Forwards: 70
From: <sip:1000@192.168.1.43>;tag=4630f16796754b3e83ab97138f51bcf5;epid=c43c95ac07
To: <sip:1000@192.168.1.43>
Call-ID: c15644c8b2634b08999b8553a44f71a4@192.168.1.43
CSeq: 1 REGISTER
Contact: <sip:192.168.1.43:16504>;methods="INVITE, MESSAGE, INFO, SUBSCRIBE, OPTIONS, BYE, CANCEL, NOTIFY, ACK, REFER"
User-Agent: RTC/1.2.4949
Event: registration
Allow-Events: presence
Content-Length: 0
Invalid request: Via: header field branch parameter is missing !
Sending (363 bytes): 192.168.1.43:5060 -> 192.168.1.43:16504
<begin>
SIP/2.0 400 Bad Request. Via: header field branch parameter is missing !
Via: SIP/2.0/UDP 192.168.1.43:16504
From: <sip:1000@192.168.1.43>;tag=4630f16796754b3e83ab97138f51bcf5;epid=c43c95ac07
To: <sip:1000@192.168.1.43>
Call-ID: c15644c8b2634b08999b8553a44f71a4@192.168.1.43
CSeq: 1 REGISTER
Allow: INVITE,ACK,OPTIONS,CANCEL,BYE,PRACK
Content-Length: 0
<end>
Received (489 bytes): 192.168.1.43:5060 <- 192.168.1.43:3363
REGISTER sip:192.168.1.43 SIP/2.0
Via: SIP/2.0/UDP 192.168.1.43:16504
Max-Forwards: 70
From: <sip:1000@192.168.1.43>;tag=4630f16796754b3e83ab97138f51bcf5;epid=c43c95ac07
To: <sip:1000@192.168.1.43>
Call-ID: c15644c8b2634b08999b8553a44f71a4@192.168.1.43
CSeq: 2 REGISTER
Contact: <sip:192.168.1.43:16504>;methods="INVITE, MESSAGE, INFO, SUBSCRIBE, OPTIONS, BYE, CANCEL, NOTIFY, ACK, REFER"
User-Agent: RTC/1.2.4949
Event: registration
Allow-Events: presence
Content-Length: 0
Invalid request: Via: header field branch parameter is missing !
Sending (363 bytes): 192.168.1.43:5060 -> 192.168.1.43:16504
<begin>
SIP/2.0 400 Bad Request. Via: header field branch parameter is missing !
Via: SIP/2.0/UDP 192.168.1.43:16504
From: <sip:1000@192.168.1.43>;tag=4630f16796754b3e83ab97138f51bcf5;epid=c43c95ac07
To: <sip:1000@192.168.1.43>
Call-ID: c15644c8b2634b08999b8553a44f71a4@192.168.1.43
CSeq: 2 REGISTER
Allow: INVITE,ACK,OPTIONS,CANCEL,BYE,PRACK
Content-Length: 0
<end>
|
|
|
|
|
thanks Ivar. would you consider moving your code base to Codeplex or Sourceforge? great Code. especially on SIP. Thanks! You are the ONE.
|
|
|
|
|
Hi,
I downloaded code last month and I quickly adapted it to use in my ASP.NET web server,
and it immediately works without problems!
Then I started "play" with code and I found it incredibly valuable and complete,
if you are patient, in this pack you can find a solid base for all your communication needs!
I'm a "normal" developer, to tell I use c# as straight as possible, so initially I found all very complex,
but now I must admit it improved a lot my knowledge and programming skills!
Thanks Ivar
|
|
|
|
|
Hi,
I have your sip client which is having audio support..is there update on your sip client? i mean is there any support for video thing?? can u plz gv me the link from where i can download that..?
Thanks in advance...
|
|
|
|
|
Hi,
No there is no video support ... .
|
|
|
|
|
ok..thanks for your quick reply..
can u suggest me how to implement video in sip client? how to send invite and all??
|
|
|
|
|
I'm using the example SIP UA.
I'm trying to modify to use TCP in mensagems SIP instead of UDP.
How can I do this?
|
|
|
|
|
I'm trying to create a proxy via TCP instead of UDP, but it's wrong, i send!
|
|
|
|
|
Hello,
When the forecast is the SIP_Gateway version implemented?
|
|
|
|
|
This probably wont happen before some month.
|
|
|
|
|
First I run the proxy in my computer, then run X-Lite client. But the client can't register in the proxy.
********************************************************************************************
Request [method='REGISTER'; cseq='1'; transport='UDP'; size='545'; received '127.0.0.1:34506' -> '127.0.0.1:5060'.
<begin>
REGISTER sip:127.0.0.1 SIP/2.0
Via: SIP/2.0/UDP 127.0.0.1:34506;branch=z9hG4bK-d8754z-6e730a1667197941-1---d8754z-;rport=34506;received=127.0.0.1
Max-Forwards: 70
Contact: <sip:kaiwn@127.0.0.1:34506;rinstance=effa56751174535f>
To: "kaiwn" <sip:kaiwn@127.0.0.1>
From: "kaiwn" <sip:kaiwn@127.0.0.1>;tag=9a4f4e47
Call-ID: MzNkMWM0YjY1ZDA0OWYwYThlYTFmN2IxM2E5NzJmNDA.
CSeq: 1 REGISTER
Expires: 3600
Allow: INVITE,ACK,CANCEL,OPTIONS,BYE,REFER,NOTIFY,MESSAGE,SUBSCRIBE,INFO
User-Agent: X-Lite release 1103d stamp 53117
Content-Length: 0
<end>
Transaction [branch='z9hG4bK-d8754z-6e730a1667197941-1---d8754z-';method='REGISTER';IsServer=true] created.
Transaction [branch='z9hG4bK-d8754z-6e730a1667197941-1---d8754z-';method='REGISTER';IsServer=True] switched to 'Trying' state.
Failed to send response to host '127.0.0.1' IP end point '127.0.0.1:34506'.
Transaction [branch='z9hG4bK-d8754z-6e730a1667197941-1---d8754z-';method='REGISTER';IsServer=true] transport exception: Host '127.0.0.1:34506' is not accessible.
Transaction [branch='z9hG4bK-d8754z-6e730a1667197941-1---d8754z-';method='REGISTER';IsServer=True] switched to 'Terminated' state.
Request [method='REGISTER'; cseq='1'; transport='UDP'; size='545'; received '127.0.0.1:34506' -> '127.0.0.1:5060'.
<begin>
REGISTER sip:127.0.0.1 SIP/2.0
Via: SIP/2.0/UDP 127.0.0.1:34506;branch=z9hG4bK-d8754z-6e730a1667197941-1---d8754z-;rport=34506;received=127.0.0.1
Max-Forwards: 70
Contact: <sip:kaiwn@127.0.0.1:34506;rinstance=effa56751174535f>
To: "kaiwn" <sip:kaiwn@127.0.0.1>
From: "kaiwn" <sip:kaiwn@127.0.0.1>;tag=9a4f4e47
Call-ID: MzNkMWM0YjY1ZDA0OWYwYThlYTFmN2IxM2E5NzJmNDA.
CSeq: 1 REGISTER
Expires: 3600
Allow: INVITE,ACK,CANCEL,OPTIONS,BYE,REFER,NOTIFY,MESSAGE,SUBSCRIBE,INFO
User-Agent: X-Lite release 1103d stamp 53117
Content-Length: 0
********************************************************************************************
X-lite: I set the IP address and domain as : 127.0.0.1
sip proxy: host name & address of record : 127.0.0.1
Please help and thank you very much
|
|
|
|
|
Its not reccomened t run on localhost(127.0.0.1).
Also you must ensure that firewall programs wont block UDP traffic.
|
|
|
|
|
Thank your reply, Ivar.
I close window's firewall and antivirus software, but it doesn't work.
After I replace localhost(127.0.0.1) with actual IP(192.168.1.112), error occurs in X-lite:
Registration error 407 - Proxy Authentication required. Authentication failed.
SIP debug:
*****************************************************************************************************************
Request [method='REGISTER'; cseq='1'; transport='UDP'; size='561'; received '192.168.1.112:37788' -> '192.168.1.112:5060'.
<begin>
REGISTER sip:192.168.1.112 SIP/2.0
Via: SIP/2.0/UDP 127.0.0.1:37788;branch=z9hG4bK-d8754z-fa6cb94e3d2ee844-1---d8754z-;rport=37788;received=192.168.1.112
Max-Forwards: 70
Contact: <sip:kaiwn@127.0.0.1:37788;rinstance=6fa201926d45caa5>
To: "kaiwn" <sip:kaiwn@192.168.1.112>
From: "kaiwn" <sip:kaiwn@192.168.1.112>;tag=f352ba6a
Call-ID: MWVjZWExYzI3NDI0NjFlZjAzYTIzMTZmNDhhNDdlMGM.
CSeq: 1 REGISTER
Expires: 3600
Allow: INVITE,ACK,CANCEL,OPTIONS,BYE,REFER,NOTIFY,MESSAGE,SUBSCRIBE,INFO
User-Agent: X-Lite release 1103d stamp 53117
Content-Length: 0
<end>
Transaction [branch='z9hG4bK-d8754z-fa6cb94e3d2ee844-1---d8754z-';method='REGISTER';IsServer=true] created.
Transaction [branch='z9hG4bK-d8754z-fa6cb94e3d2ee844-1---d8754z-';method='REGISTER';IsServer=True] switched to 'Trying' state.
Response [flowReuse=true; transactionID='z9hG4bK-d8754z-fa6cb94e3d2ee844-1---d8754z-'; method='REGISTER'; cseq='1'; transport='UDP'; size='537'; statusCode='407'; reason='Proxy Authentication Required'; sent '192.168.1.112:5060' -> '192.168.1.112:37788'.
<begin>
SIP/2.0 407 Proxy Authentication Required
Via: SIP/2.0/UDP 127.0.0.1:37788;branch=z9hG4bK-d8754z-fa6cb94e3d2ee844-1---d8754z-;rport=37788;received=192.168.1.112
From: "kaiwn" <sip:kaiwn@192.168.1.112>;tag=f352ba6a
To: "kaiwn" <sip:kaiwn@192.168.1.112>;tag=d64043f8812fe2a1eb7fe3ea
Call-ID: MWVjZWExYzI3NDI0NjFlZjAzYTIzMTZmNDhhNDdlMGM.
CSeq: 1 REGISTER
Allow: INVITE,ACK,CANCEL,BYE,MESSAGE
Proxy-Authenticate: digest realm="",nonce="c68b373754244ddebfe6170763732df6",opaque="f9905829986f45fc960e4e11fe81129c"
Content-Length: 0
<end>
Transaction [branch='z9hG4bK-d8754z-fa6cb94e3d2ee844-1---d8754z-';method='REGISTER';IsServer=True] switched to 'Completed' state.
Transaction [branch='z9hG4bK-d8754z-fa6cb94e3d2ee844-1---d8754z-';method='REGISTER';IsServer=true] timer J(Non-INVITE request retransmission wait) started, will trigger after 32000.
Request [method='REGISTER'; cseq='2'; transport='UDP'; size='785'; received '192.168.1.112:37788' -> '192.168.1.112:5060'.
<begin>
REGISTER sip:192.168.1.112 SIP/2.0
Via: SIP/2.0/UDP 127.0.0.1:37788;branch=z9hG4bK-d8754z-3938bc3f86545228-1---d8754z-;rport=37788;received=192.168.1.112
Max-Forwards: 70
Contact: <sip:kaiwn@127.0.0.1:37788;rinstance=6fa201926d45caa5>
To: "kaiwn" <sip:kaiwn@192.168.1.112>
From: "kaiwn" <sip:kaiwn@192.168.1.112>;tag=f352ba6a
Call-ID: MWVjZWExYzI3NDI0NjFlZjAzYTIzMTZmNDhhNDdlMGM.
CSeq: 2 REGISTER
Expires: 3600
Allow: INVITE,ACK,CANCEL,OPTIONS,BYE,REFER,NOTIFY,MESSAGE,SUBSCRIBE,INFO
Proxy-Authorization: Digest username="kaiwnAuth",realm="",nonce="c68b373754244ddebfe6170763732df6",uri="sip:192.168.1.112",response="4852279d2e03c34b326f2c015edd7722",algorithm=MD5,opaque="f9905829986f45fc960e4e11fe81129c"
User-Agent: X-Lite release 1103d stamp 53117
Content-Length: 0
<end>
Transaction [branch='z9hG4bK-d8754z-3938bc3f86545228-1---d8754z-';method='REGISTER';IsServer=true] created.
Transaction [branch='z9hG4bK-d8754z-3938bc3f86545228-1---d8754z-';method='REGISTER';IsServer=True] switched to 'Trying' state.
Response [flowReuse=true; transactionID='z9hG4bK-d8754z-3938bc3f86545228-1---d8754z-'; method='REGISTER'; cseq='2'; transport='UDP'; size='561'; statusCode='407'; reason='Proxy Authentication Required: Authentication failed.'; sent '192.168.1.112:5060' -> '192.168.1.112:37788'.
<begin>
SIP/2.0 407 Proxy Authentication Required: Authentication failed.
Via: SIP/2.0/UDP 127.0.0.1:37788;branch=z9hG4bK-d8754z-3938bc3f86545228-1---d8754z-;rport=37788;received=192.168.1.112
From: "kaiwn" <sip:kaiwn@192.168.1.112>;tag=f352ba6a
To: "kaiwn" <sip:kaiwn@192.168.1.112>;tag=f58d481f93aed3fd688a75ec
Call-ID: MWVjZWExYzI3NDI0NjFlZjAzYTIzMTZmNDhhNDdlMGM.
CSeq: 2 REGISTER
Allow: INVITE,ACK,CANCEL,BYE,MESSAGE
Proxy-Authenticate: digest realm="",nonce="96734a5506cd47db87eb254a058ddb13",opaque="f9905829986f45fc960e4e11fe81129c"
Content-Length: 0
*****************************************************************************************************************
I hope to debug this program with a client in the same computer, so that I can learn something from the great work.
Thanks
|
|
|
|
|
Hello,
We are really greatfull for this stack and demo. but we want to understand how demo works. we have 3 years SIP experience as engineer. so we are aware about the registration authantication bla bla issues. i have many times managed to register clients to proxy servers.
now we want to use your stack but we are unable to make the code up and runnning. when we try it after registration packet has arrived we got this error:
System.IndexOutOfRangeException: Dizin, dizi sınırlarının dışındaydı.
konum: LumiSoft.Net.SIP.Proxy.SIP_Proxy.ForwardRequest(Boolean statefull, SIP_RequestReceivedEventArgs e, Boolean addRecordRoute) C:\Users\GU\Desktop\Net\Net\SIP\Proxy\SIP_Proxy.cs içinde: satır 383
konum: LumiSoft.Net.SIP.Proxy.SIP_Proxy.OnRequestReceived(SIP_RequestReceivedEventArgs e) C:\Users\GU\Desktop\Net\Net\SIP\Proxy\SIP_Proxy.cs içinde: satır 174
and the log is:
Request [method='REGISTER'; cseq='1'; transport='UDP'; size='438'; received '192.168.1.107:5060' -> '192.168.1.100:5060'.
REGISTER sip:192.168.1.100 SIP/2.0
Via: SIP/2.0/UDP 192.168.1.107;rport=5060;branch=z9hG4bKc0a8016b000000104a38f98c0000475c00000001;received=192.168.1.107
Contact: <sip:12345@192.168.1.107:5060>
Call-ID: 9C5518D6-209A-4D79-BC50-41222D878CE0@192.168.1.107
CSeq: 1 REGISTER
From: <sip:12345@192.168.1.100>;tag=996183312389
Max-Forwards: 70
To: <sip:12345@192.168.1.100>
User-Agent: SJphone/1.60.289a (SJ Labs)
Content-Length: 0
Response [transactionID=''; method='REGISTER'; cseq='1'; transport='UDP'; size='450'; statusCode='500'; reason='Server Internal Error: Dizin, dizi sınırlarının dışındaydı.'; sent '' -> '192.168.1.107:5060'.
SIP/2.0 500 Server Internal Error: Dizin, dizi sınırlarının dışındaydı.
Via: SIP/2.0/UDP 192.168.1.107;rport=5060;branch=z9hG4bKc0a8016b000000104a38f98c0000475c00000001;received=192.168.1.107
From: <sip:12345@192.168.1.100>;tag=996183312389
To: <sip:12345@192.168.1.100>;tag=c94c432a80ee7cbab17ca580
Call-ID: 9C5518D6-209A-4D79-BC50-41222D878CE0@192.168.1.107
CSeq: 1 REGISTER
Allow: INVITE,ACK,CANCEL,BYE,MESSAGE
Content-Length: 0
Request [method='REGISTER'; cseq='1'; transport='UDP'; size='438'; received '192.168.1.107:5060' -> '192.168.1.100:5060'.
REGISTER sip:192.168.1.100 SIP/2.0
Via: SIP/2.0/UDP 192.168.1.107;rport=5060;branch=z9hG4bKc0a8016b000000104a38f98c0000475c00000001;received=192.168.1.107
Contact: <sip:12345@192.168.1.107:5060>
Call-ID: 9C5518D6-209A-4D79-BC50-41222D878CE0@192.168.1.107
CSeq: 1 REGISTER
From: <sip:12345@192.168.1.100>;tag=996183312389
Max-Forwards: 70
To: <sip:12345@192.168.1.100>
User-Agent: SJphone/1.60.289a (SJ Labs)
Content-Length: 0
Response [transactionID=''; method='REGISTER'; cseq='1'; transport='UDP'; size='450'; statusCode='500'; reason='Server Internal Error: Dizin, dizi sınırlarının dışındaydı.'; sent '' -> '192.168.1.107:5060'.
SIP/2.0 500 Server Internal Error: Dizin, dizi sınırlarının dışındaydı.
Via: SIP/2.0/UDP 192.168.1.107;rport=5060;branch=z9hG4bKc0a8016b000000104a38f98c0000475c00000001;received=192.168.1.107
From: <sip:12345@192.168.1.100>;tag=996183312389
To: <sip:12345@192.168.1.100>;tag=6ea84feba383a1d0c747cbe4
Call-ID: 9C5518D6-209A-4D79-BC50-41222D878CE0@192.168.1.107
CSeq: 1 REGISTER
Allow: INVITE,ACK,CANCEL,BYE,MESSAGE
Content-Length: 0
Request [method='REGISTER'; cseq='1'; transport='UDP'; size='438'; received '192.168.1.107:5060' -> '192.168.1.100:5060'.
REGISTER sip:192.168.1.100 SIP/2.0
Via: SIP/2.0/UDP 192.168.1.107;rport=5060;branch=z9hG4bKc0a8016b000000104a38f98c0000475c00000001;received=192.168.1.107
Contact: <sip:12345@192.168.1.107:5060>
Call-ID: 9C5518D6-209A-4D79-BC50-41222D878CE0@192.168.1.107
CSeq: 1 REGISTER
From: <sip:12345@192.168.1.100>;tag=996183312389
Max-Forwards: 70
To: <sip:12345@192.168.1.100>
User-Agent: SJphone/1.60.289a (SJ Labs)
Content-Length: 0
Response [transactionID=''; method='REGISTER'; cseq='1'; transport='UDP'; size='450'; statusCode='500'; reason='Server Internal Error: Dizin, dizi sınırlarının dışındaydı.'; sent '' -> '192.168.1.107:5060'.
SIP/2.0 500 Server Internal Error: Dizin, dizi sınırlarının dışındaydı.
Via: SIP/2.0/UDP 192.168.1.107;rport=5060;branch=z9hG4bKc0a8016b000000104a38f98c0000475c00000001;received=192.168.1.107
From: <sip:12345@192.168.1.100>;tag=996183312389
To: <sip:12345@192.168.1.100>;tag=d5f14e16b18b0d6a4438b111
Call-ID: 9C5518D6-209A-4D79-BC50-41222D878CE0@192.168.1.107
CSeq: 1 REGISTER
Allow: INVITE,ACK,CANCEL,BYE,MESSAGE
Content-Length: 0
Request [method='REGISTER'; cseq='1'; transport='UDP'; size='438'; received '192.168.1.107:5060' -> '192.168.1.100:5060'.
REGISTER sip:192.168.1.100 SIP/2.0
Via: SIP/2.0/UDP 192.168.1.107;rport=5060;branch=z9hG4bKc0a8016b000000104a38f98c0000475c00000001;received=192.168.1.107
Contact: <sip:12345@192.168.1.107:5060>
Call-ID: 9C5518D6-209A-4D79-BC50-41222D878CE0@192.168.1.107
CSeq: 1 REGISTER
From: <sip:12345@192.168.1.100>;tag=996183312389
Max-Forwards: 70
To: <sip:12345@192.168.1.100>
User-Agent: SJphone/1.60.289a (SJ Labs)
Content-Length: 0
Response [transactionID=''; method='REGISTER'; cseq='1'; transport='UDP'; size='450'; statusCode='500'; reason='Server Internal Error: Dizin, dizi sınırlarının dışındaydı.'; sent '' -> '192.168.1.107:5060'.
SIP/2.0 500 Server Internal Error: Dizin, dizi sınırlarının dışındaydı.
Via: SIP/2.0/UDP 192.168.1.107;rport=5060;branch=z9hG4bKc0a8016b000000104a38f98c0000475c00000001;received=192.168.1.107
From: <sip:12345@192.168.1.100>;tag=996183312389
To: <sip:12345@192.168.1.100>;tag=827d4211be64ab5648ce8c6e
Call-ID: 9C5518D6-209A-4D79-BC50-41222D878CE0@192.168.1.107
CSeq: 1 REGISTER
Allow: INVITE,ACK,CANCEL,BYE,MESSAGE
Content-Length: 0
i look forward your help about this issue.
Thanks a lot
|
|
|
|
|
dear ivan
thank you for this good article but i need client working with this server can you give me one or link to open project for one ??
or is there is any other way to use MSN messenger as i saw in this website
http://officesip.com
thnx again
and if we can talk directly plz add you MSN email or yahoo messenger email
|
|
|
|
|