60 3rd下實現Video Call 與 VoIP Cal

實現方法摘錄如下:

It is possible to initiate video and Internet telephony (VoIP) calls with the AIW Service Handler API, included in the Extensions plug-in package for S60 3rd Edition SDKs.

Video call

The following example code demonstrates how to initiate a video call.

    MakeAiwCallL( _L("+3581234567"), _L("Firstname Lastname"), EAiwVideo);

    // EAiwForcedVideo doesn't show dialogs

    // MakeAiwCallL( _L("+3581234567"), _L("Firstname Lastname"), EAiwForcedVideo);  

    void MakeAiwCallL( const TDesC& aNumber, const TDesC& aName, TAiwCallType aCallType )

        {

        // Create AIW service handler

        CAiwServiceHandler* serviceHandler = CAiwServiceHandler::NewLC();    

        // Create AIW interest

        RCriteriaArray interest;

        CleanupClosePushL( interest );

        CAiwCriteriaItem* criteria =

            CAiwCriteriaItem::NewLC( KAiwCmdCall, KAiwCmdCall, _L8( "*" ) );            

        const TUid KUidAiwBase = { KAiwClassBase };

        criteria->SetServiceClass( KUidAiwBase );    

        User::LeaveIfError( interest.Append( criteria ) );    

        // Attach to AIW interest

        serviceHandler->AttachL( interest );    

        // Create AIW param package

        TAiwDialDataV1 data;

        TAiwDialDataV1Pckg dataPckg( data );

        iNameBuffer = aName.Left( iNameBuffer.MaxLength() );

        data.SetName( iNameBuffer );

        iTelNumber = aNumber.Left( iTelNumber.MaxLength() );

        data.SetTelephoneNumber( iTelNumber );

        data.SetCallType( aCallType );

        data.SetWindowGroup( CCoeEnv::Static()->RootWin().Identifier() );            

        CAiwGenericParamList& paramList = serviceHandler->InParamListL();    

        TPtrC8 ptr;

        ptr.Set( dataPckg );

        TAiwVariant variant( ptr );   

        TAiwGenericParam param( EGenericParamCallDialDataV1, variant );

        paramList.AppendL( param );    

        // Execute AIW command

        serviceHandler->ExecuteServiceCmdL( KAiwCmdCall,

                                            paramList,

                                            serviceHandler->OutParamListL() );    

        // destroy criteria, interest, and serviceHandler

        CleanupStack::PopAndDestroy( 3 );

        }        

VoIP call

Using the above function, it is possible to initiate a VoIP call as follows:

    MakeAiwCallL( _L("[email protected]"),

                  _L("Firstname Lastname"),

                  EAiwVoIPCall );

See also:

Extensions plug-in package for S60 3rd Edition SDK for Symbian OS, for C++, Maintenance Release

Extensions plug-in package for S60 3rd Edition SDK for Symbian OS, for C++, supporting Feature Pack 1

原文鏈接:  http://forum.nokia.com/document/Forum_Nokia_Technical_Library/contents/FNTL/Creating_video_and_VoIP_calls.htm

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章