Ejemplo n.º 1
0
 public static extern Acs.RetCode_t cstaRouteEndInv(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     RouteRegisterReqID_t routeRegisterReqID,
     RoutingCrossRefID_t routingCrossRefID,
     CSTAUniversalFailure_t errorValue,
     Acs.PrivateData_t privateData);
Ejemplo n.º 2
0
 public static extern Acs.RetCode_t cstaMakePredictiveCall(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     ref Csta.DeviceID_t callingDevice,
     ref Csta.DeviceID_t calledDevice,
     Csta.AllocationState_t allocationState,
     Acs.PrivateData_t privateData);
Ejemplo n.º 3
0
 public static extern Acs.RetCode_t cstaSetForwarding(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     ref Csta.DeviceID_t device,
     ForwardingType_t forwardingType,
     bool forwardingOn,
     ref Csta.DeviceID_t forwardingDestination,
     Acs.PrivateData_t privateData);
Ejemplo n.º 4
0
 public static extern Acs.RetCode_t cstaSetAgentState(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     ref Csta.DeviceID_t device,
     AgentMode_t agentMode,
     AgentID_t agentID,
     AgentGroup_t agentGroup,
     AgentPassword_t agentPassword,
     Acs.PrivateData_t privateData);
Ejemplo n.º 5
0
 public static extern Acs.RetCode_t cstaRouteSelect(
     Acs.ACSHandle_t acsHandle,
     RouteRegisterReqID_t routeRegisterReqID,
     RoutingCrossRefID_t routingCrossRefID,
     ref Csta.DeviceID_t routeSelected,
     RetryValue_t remainRetry,
     ref SetUpValues_t setupInformation,
     bool routeUsedReq,
     Acs.PrivateData_t privateData);
Ejemplo n.º 6
0
        public static Csta.EventBuffer_t clearConnection(Acs.ACSHandle_t acsHandle, Acs.PrivateData_t privData, Csta.ConnectionID_t cId)
        {
            var u2uString = "Hello, I AM test u2u string";
            var u2uInfo   = new Att.ATTUserToUserInfo_t();
            // fixed u2u size
            int u2uSize = Att.ATT_MAX_UUI_SIZE;

            u2uInfo.length = (short)u2uString.Length;
            u2uInfo.type   = Att.ATTUUIProtocolType_t.UUI_IA5_ASCII;
            u2uInfo.value  = System.Text.Encoding.ASCII.GetBytes(u2uString);
            Array.Resize(ref u2uInfo.value, u2uSize);

            Att.attV6ClearConnection(privData, Att.ATTDropResource_t.DR_NONE, ref u2uInfo);

            Csta.EventBuffer_t evtBuf   = new Csta.EventBuffer_t();
            Acs.InvokeID_t     invokeId = new Acs.InvokeID_t();
            Acs.RetCode_t      retCode  = Csta.cstaClearConnection(acsHandle,
                                                                   invokeId,
                                                                   cId,
                                                                   privData);
            if (retCode._value < 0)
            {
                System.Windows.Forms.MessageBox.Show("cstaClearConnection error: " + retCode);
                return(null);
            }
            privData.length = Att.ATT_MAX_PRIVATE_DATA;
            ushort eventBufSize = Csta.CSTA_MAX_HEAP;
            ushort numEvents;

            retCode = Acs.acsGetEventBlock(acsHandle,
                                           evtBuf,
                                           ref eventBufSize,
                                           privData,
                                           out numEvents);
            if (retCode._value < 0)
            {
                System.Windows.Forms.MessageBox.Show("acsGetEventBlock error: " + retCode);
                return(null);
            }
            return(evtBuf);
        }
Ejemplo n.º 7
0
 public static extern Acs.RetCode_t cstaPickupCall(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     Csta.ConnectionID_t deflectCall,
     ref Csta.DeviceID_t calledDevice,
     Acs.PrivateData_t privateData);
Ejemplo n.º 8
0
 public static extern Acs.RetCode_t cstaHoldCall(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     Csta.ConnectionID_t activeCall,
     bool reservation,
     Acs.PrivateData_t privateData);
Ejemplo n.º 9
0
 public static extern Acs.RetCode_t cstaSnapshotCallReq(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     ConnectionID_t snapshotObj,
     Acs.PrivateData_t privateData);
Ejemplo n.º 10
0
 public static extern Acs.RetCode_t cstaCallCompletion(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t activeCall,
     Feature_t feature,
     Csta.ConnectionID_t call,
     Acs.PrivateData_t privateData);
Ejemplo n.º 11
0
 public static extern Acs.RetCode_t cstaClearConnection(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     Csta.ConnectionID_t call,
     Acs.PrivateData_t privateData);
Ejemplo n.º 12
0
 public static extern Acs.RetCode_t cstaSetDoNotDisturb(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     ref Csta.DeviceID_t device,
     bool doNotDisturb,
     Acs.PrivateData_t privateData);
Ejemplo n.º 13
0
 public static extern Acs.RetCode_t cstaRouteRegisterReq(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     ref Csta.DeviceID_t routingDevice,
     Acs.PrivateData_t privateData);
Ejemplo n.º 14
0
 public static extern Acs.RetCode_t cstaSnapshotDeviceReq(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     ref Csta.DeviceID_t snapshotObj,
     Acs.PrivateData_t privateData);
Ejemplo n.º 15
0
        public static Acs.RetCode_t OpenStream(out Acs.ACSHandle_t acsHandle, out Acs.InvokeID_t invokeId, ref Acs.PrivateData_t privData)
        {
            // Prepare
            Acs.InvokeIDType_t invokeIdType = Acs.InvokeIDType_t.LIB_GEN_ID;
            invokeId = new Acs.InvokeID_t();
            Acs.StreamType_t streamType    = Acs.StreamType_t.ST_CSTA;
            Acs.ServerID_t   serverId      = "AVAYA#S8720SAMSUNG#CSTA#AESSERVER1";
            Acs.LoginID_t    loginId       = "tsuser";
            Acs.Passwd_t     passwd        = "tsuser";
            Acs.AppName_t    appName       = "XYITA";
            Acs.Level_t      acsLevelReq   = Acs.Level_t.ACS_LEVEL1;
            Acs.Version_t    apiVer        = "TS2";
            ushort           sendQSize     = 0;
            ushort           sendExtraBufs = 0;
            ushort           recvQSize     = 0;
            ushort           recvExtraBufs = 0;

            Acs.RetCode_t retCode = Acs.acsOpenStream(out acsHandle,
                                                      invokeIdType,
                                                      invokeId,
                                                      streamType,
                                                      ref serverId,
                                                      ref loginId,
                                                      ref passwd,
                                                      ref appName,
                                                      acsLevelReq,
                                                      ref apiVer,
                                                      sendQSize,
                                                      sendExtraBufs,
                                                      recvQSize,
                                                      recvExtraBufs,
                                                      ref privData);
            if (retCode._value < 0)
            {
                return(retCode);
            }
            Csta.CSTAEvent_t evt          = new Csta.CSTAEvent_t();
            ushort           eventBufSize = Csta.CSTA_MAX_HEAP;
            ushort           numEvents    = 0;

            retCode = Acs.acsGetEventBlock(acsHandle,
                                           out evt,
                                           ref eventBufSize,
                                           ref privData,
                                           out numEvents);
            //Console.WriteLine("acsGetEventBlock retCode = " + retCode + " Buffer size = " + eventBufSize + ", numEvents = " + numEvents);
            //Console.WriteLine("privData.Length = " + privData.length);

            return(retCode);
        }
Ejemplo n.º 16
0
 public static extern Acs.RetCode_t cstaSysStatStop(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     Acs.PrivateData_t privateData);
Ejemplo n.º 17
0
 public static extern Acs.RetCode_t cstaChangeSysStatFilter(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     SystemStatusFilter_t statusFilter,
     Acs.PrivateData_t privateData);
Ejemplo n.º 18
0
 public static extern Acs.RetCode_t cstaSendPrivateEvent(
     Acs.ACSHandle_t acsHandle,
     Acs.PrivateData_t privateData);
Ejemplo n.º 19
0
 public static extern Acs.RetCode_t cstaEscapeServiceConf(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     CSTAUniversalFailure_t error,
     Acs.PrivateData_t privateData);
Ejemplo n.º 20
0
 public static extern Acs.RetCode_t cstaEscapeService(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     Acs.PrivateData_t privateData);
Ejemplo n.º 21
0
 public static extern Acs.RetCode_t cstaTransferCall(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     Csta.ConnectionID_t heldCall,
     Csta.ConnectionID_t activeCall,
     Acs.PrivateData_t privateData);
Ejemplo n.º 22
0
 public static extern Acs.RetCode_t cstaChangeMonitorFilter(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     CSTAMonitorCrossRefID_t monitorCrossRefID,
     Acs.PrivateData_t privateData);
Ejemplo n.º 23
0
 public static extern Acs.RetCode_t cstaSetMsgWaitingInd(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     ref Csta.DeviceID_t device,
     bool messages,
     Acs.PrivateData_t privateData);
Ejemplo n.º 24
0
 public static extern Acs.RetCode_t cstaAnswerCall(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t activeCall,
     Csta.ConnectionID_t alertingCall,
     Acs.PrivateData_t privateData);
Ejemplo n.º 25
0
 public static extern Acs.RetCode_t cstaSysStatReqConf(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     SystemStatus_t systemStatus,
     Acs.PrivateData_t privateData);
Ejemplo n.º 26
0
 public static extern Acs.RetCode_t cstaRouteRegisterCancel(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     RouteRegisterReqID_t routeRegisterReqID,
     Acs.PrivateData_t privateData);
Ejemplo n.º 27
0
 public static extern Acs.RetCode_t cstaQueryDeviceInfo(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     ref Csta.DeviceID_t device,
     Acs.PrivateData_t privateData);
Ejemplo n.º 28
0
 public static extern Acs.RetCode_t cstaSysStatEvent(
     Acs.ACSHandle_t acsHandle,
     SystemStatus_t systemStatus,
     Acs.PrivateData_t privateData);
Ejemplo n.º 29
0
        public static Att.ATTUCID_t[] GetUcid(Csta.DeviceID_t device)
        {
            Acs.ACSHandle_t acsHandle;
            Acs.InvokeID_t  invokeId;

            // Set PrivateData request
            var privData = new Acs.PrivateData_t();

            privData.vendor  = "VERSION";
            privData.data    = new byte[1024];
            privData.data[0] = Acs.PRIVATE_DATA_ENCODING;

            // Get supportedVersion string
            string requestedVersion = "3-7"; // Private Data version request

            System.Text.StringBuilder supportedVersion = new System.Text.StringBuilder();
            Acs.RetCode_t             attrc            = Att.attMakeVersionString(requestedVersion, supportedVersion);
            //Console.WriteLine("attrc = " + attrc + "; supportedVersion = " + supportedVersion);

            for (int i = 0; i < supportedVersion.Length; i++)
            {
                privData.data[i + 1] = (byte)supportedVersion[i];
            }
            privData.length = Att.ATT_MAX_PRIVATE_DATA;

            Acs.RetCode_t retCode = OpenStream(out acsHandle, out invokeId, ref privData);
            //Console.WriteLine("acsOpenStream retCode = " + retCode + ", Handle = " + acsHandle.ToString());

            retCode = Csta.cstaSnapshotDeviceReq(acsHandle,
                                                 invokeId,
                                                 ref device,
                                                 ref privData);

            privData.length = Att.ATT_MAX_PRIVATE_DATA;
            Csta.CSTAEvent_t evt          = new Csta.CSTAEvent_t();
            ushort           eventBufSize = Csta.CSTA_MAX_HEAP;
            ushort           numEvents    = 0;

            retCode = Acs.acsGetEventBlock(acsHandle,
                                           out evt,
                                           ref eventBufSize,
                                           ref privData,
                                           out numEvents);

            int callCount = evt.cstaConfirmation.snapshotDevice.snapshotData.count;

            Csta.ConnectionID_t[] connections = new Csta.ConnectionID_t[callCount];
            for (int i = 0; i < evt.cstaConfirmation.snapshotDevice.snapshotData.count; i++)
            {
                connections[i] = evt.cstaConfirmation.snapshotDevice.snapshotData.info[i].callIdentifier;
            }

            if (callCount > 0)
            {
                //Console.WriteLine(evt.cstaConfirmation.snapshotDevice.snapshotData);
                //Console.WriteLine(evt.cstaConfirmation.snapshotDevice.snapshotData.info[1].localCallState);
                Att.ATTUCID_t[] ucids = new Att.ATTUCID_t[callCount];
                for (int i = 0; i < callCount; i++)
                {
                    //Csta.ConnectionID_t connection = evt.cstaConfirmation.snapshotDevice.snapshotData.info[i].callIdentifier;

                    retCode = Att.attQueryUCID(ref privData, ref connections[i]);
                    //Console.WriteLine("attQueryUCID retCode = " + retCode);
                    //Console.WriteLine("privData.Length = " + privData.length);

                    retCode = Csta.cstaEscapeService(acsHandle, invokeId, ref privData);
                    //Console.WriteLine("cstaEscapeService retCode = " + retCode);
                    //Console.WriteLine("privData.Length = " + privData.length);
                    // Set private data length (we'll have to call GetEventBlock otherwise)
                    privData.length = Att.ATT_MAX_PRIVATE_DATA;
                    retCode         = Acs.acsGetEventBlock(acsHandle,
                                                           out evt,
                                                           ref eventBufSize,
                                                           ref privData,
                                                           out numEvents);

                    //Console.WriteLine("acsGetEventBlock retCode = " + retCode + " Buffer size = " + eventBufSize + ", numEvents = " + numEvents);
                    //Console.WriteLine("eventClass = " + evt.eventHeader.eventClass);
                    //Console.WriteLine("eventType = " + evt.eventHeader.eventType);
                    //Console.WriteLine("privData.Length = " + privData.length);

                    // Decode ATTPrivateData
                    Att.ATTEvent_t attevt;
                    retCode  = Att.attPrivateData(ref privData, out attevt);
                    ucids[i] = attevt.queryUCID.ucid;
                    //Console.WriteLine("attPrivateData retCode = " + retCode);
                    //Console.WriteLine("privData.Length = " + privData.length);
                    //Console.WriteLine("ATTeventType  = " + attevt.eventType);
                    //Console.WriteLine("ucid #{0} = {1}", i + 1, attevt.queryUCID.ucid);
                }
                Acs.acsAbortStream(acsHandle, out privData);
                return(ucids);
            }
            else
            {
                Console.WriteLine("No active calls");
                Acs.acsAbortStream(acsHandle, out privData);
                return(new Att.ATTUCID_t[0]);
            }
        }
Ejemplo n.º 30
0
 public static extern Acs.RetCode_t cstaMonitorCallsViaDevice(
     Acs.ACSHandle_t acsHandle,
     Acs.InvokeID_t invokeID,
     ref Csta.DeviceID_t deviceID,
     ref CSTAMonitorFilter_t monitorFilter,
     Acs.PrivateData_t privateData);