Ozeki VoIP SIP .Net SDK for developing call transfer feature in a C# softphone to forward incoming calls either with blind call transfer or with attended call transfer. The source code represents the basic implementation of call forwarding using the provided methods of Ozeki SIP SDK. The sample program allows to transmit incoming calls to another end point without the originally called end point accepts the call. The Ozeki Call Transfer sample program includes programming solutions for implementing call transfer via blind transfer or attended call transfer in a C# softphone.
BLIND CALL TRANSFER: when there is an incoming call, it can be automatically or manually transferred to a randomly selected end-point, for example, in a call center it can be the first available agent. Usually blind transfer is made automatically. In this example, blind transfer is done by a direct redirection on the server side. The server requires a list of valid telephone numbers that can be possibly called when transfer is needed. The server accepts the incoming call and transfers it to one of the enlisted phone numbers. In this sample program, the call is transferred to the first number in the list, if it is busy it switches to the second number, etc. The call will be transferred to the first available end-point. If all operators are busy it is possible to play a voice message and ask the caller to callback then end the call; or to hold the call and tries transferring again from the beginning.
The transfer is done with a media connection. Meaning that the server accepts the call, then it calls a number from a list, the call is set to hold and when the new call is established, the two-end points are connected. ATTENDED CALL TRANSFER: in this case the call is transferred intentionally to a specific end point. The operator can type in the number of the wished end-point and click TRANSFER. It differs from blind transfer in that the number is got from the operator not from the transfer list